<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to initial GPIO as input or output PINS in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/How-to-initial-GPIO-as-input-or-output-PINS/m-p/1561780#M198165</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;/P&gt;&lt;P&gt;Platform : imx8mm&lt;/P&gt;&lt;P&gt;Linux : 5.10&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to check the GPIO4_14 status . Here is my check list&amp;nbsp;&lt;/P&gt;&lt;P&gt;u-boot&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tzeng015_0-1669788777136.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/202220i7776178261CED171/image-size/medium?v=v2&amp;amp;px=400" role="button" title="tzeng015_0-1669788777136.png" alt="tzeng015_0-1669788777136.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;kernel&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tzeng015_1-1669788815577.png" style="width: 623px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/202222i069FE526041EA419/image-dimensions/623x36?v=v2" width="623" height="36" role="button" title="tzeng015_1-1669788815577.png" alt="tzeng015_1-1669788815577.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can't see the GPIO4_14 status.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anyone can help me to&amp;nbsp; initial the GPIO input or output in which file ? I don't know where is&amp;nbsp; the file can initial GPIO ?&lt;/P&gt;&lt;P&gt;Please help me.&lt;/P&gt;&lt;P&gt;thank you&lt;/P&gt;&lt;P&gt;tzeng015&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 30 Nov 2022 06:14:37 GMT</pubDate>
    <dc:creator>tzeng015</dc:creator>
    <dc:date>2022-11-30T06:14:37Z</dc:date>
    <item>
      <title>How to initial GPIO as input or output PINS</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-initial-GPIO-as-input-or-output-PINS/m-p/1561780#M198165</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;/P&gt;&lt;P&gt;Platform : imx8mm&lt;/P&gt;&lt;P&gt;Linux : 5.10&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to check the GPIO4_14 status . Here is my check list&amp;nbsp;&lt;/P&gt;&lt;P&gt;u-boot&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tzeng015_0-1669788777136.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/202220i7776178261CED171/image-size/medium?v=v2&amp;amp;px=400" role="button" title="tzeng015_0-1669788777136.png" alt="tzeng015_0-1669788777136.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;kernel&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tzeng015_1-1669788815577.png" style="width: 623px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/202222i069FE526041EA419/image-dimensions/623x36?v=v2" width="623" height="36" role="button" title="tzeng015_1-1669788815577.png" alt="tzeng015_1-1669788815577.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can't see the GPIO4_14 status.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anyone can help me to&amp;nbsp; initial the GPIO input or output in which file ? I don't know where is&amp;nbsp; the file can initial GPIO ?&lt;/P&gt;&lt;P&gt;Please help me.&lt;/P&gt;&lt;P&gt;thank you&lt;/P&gt;&lt;P&gt;tzeng015&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 30 Nov 2022 06:14:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-initial-GPIO-as-input-or-output-PINS/m-p/1561780#M198165</guid>
      <dc:creator>tzeng015</dc:creator>
      <dc:date>2022-11-30T06:14:37Z</dc:date>
    </item>
    <item>
      <title>Re: How to initial GPIO as input or output PINS</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-initial-GPIO-as-input-or-output-PINS/m-p/1561990#M198183</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/194745"&gt;@tzeng015&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;See what you get with&amp;nbsp;cat /sys/kernel/debug/gpio, sys/class/gpio is being deprecated and with new builds (i.e. mine) it's not even available.&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example my board gives:&lt;/P&gt;&lt;P&gt;cat /sys/kernel/debug/gpio&lt;BR /&gt;gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:&lt;BR /&gt;gpio-15 ( |cd ) in hi IRQ ACTIVE LOW&lt;/P&gt;&lt;P&gt;gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:&lt;BR /&gt;gpio-42 ( |reset ) out hi ACTIVE LOW&lt;BR /&gt;gpio-51 ( |regulator-usdhc2 ) out lo&lt;/P&gt;&lt;P&gt;Also, unlike /sys/class/gpio, pins used with gpiod need to be in your device-tree pinctrl_hog to work.&amp;nbsp;&lt;/P&gt;&lt;P&gt;opinctrl_hog: hoggrp {&lt;BR /&gt;fsl,pins = &amp;lt;&lt;BR /&gt;MX8MM_IOMUXC_SAI5_RXD0_GPIO3_IO21 0x19&lt;BR /&gt;MX8MM_IOMUXC_SAI5_RXD1_GPIO3_IO22 0x19&lt;BR /&gt;MX8MM_IOMUXC_SAI5_RXD2_GPIO3_IO23 0x19&lt;BR /&gt;MX8MM_IOMUXC_SAI5_RXD3_GPIO3_IO24 0x19&lt;BR /&gt;&amp;gt;;&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;One other thing, be careful with gpioset as the gpiod's start at gpiochip0 where the iMX8 mux registers start at 1. Whether 'gpio state -a' in UBoot is offset by one I haven't tried. Here's an example of using gpiod in userspace:&amp;nbsp;&lt;/P&gt;&lt;P&gt;Pin&amp;nbsp;MX8MM_IOMUXC_SAI5_RXD0_GPIO3_IO21&lt;/P&gt;&lt;P&gt;Set GPIO3_21 high:&amp;nbsp; // As above&lt;BR /&gt;gpioset gpiochip2 21=1&lt;/P&gt;&lt;P&gt;Set GPIO3_21 low:&amp;nbsp; // As above&lt;BR /&gt;gpioset gpiochip2 21=0&lt;/P&gt;&lt;P&gt;Check the line with a scope or the memory read command&amp;nbsp; /unit_tests/memtool -32 &amp;lt;Address&amp;gt; 1&lt;/P&gt;&lt;P&gt;3022_0000 GPIO data register (GPIO3_DR) // Page 1691 of Ref manual&lt;/P&gt;&lt;P&gt;/unit_tests/memtool -32 0x30220000 1&lt;BR /&gt;E&lt;BR /&gt;Reading 0x1 count starting at address 0x30220000&lt;/P&gt;&lt;P&gt;0x30220000: 00200000&amp;nbsp; // if GPIO3_21 is high,&amp;nbsp;&lt;/P&gt;&lt;P&gt;0x30220000: 00000000 // If low&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;</description>
      <pubDate>Wed, 30 Nov 2022 12:22:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-initial-GPIO-as-input-or-output-PINS/m-p/1561990#M198183</guid>
      <dc:creator>edwardtyrrell</dc:creator>
      <dc:date>2022-11-30T12:22:11Z</dc:date>
    </item>
  </channel>
</rss>

