<?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>i.MX Processors中的主题 Re: Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1861073#M223437</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/223632"&gt;@alexandreMarquis&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I test such behavior on GPIO3_IO16(gpio-80). The iomux value in device tree will not be covered. There is no such issue using sysfs to control gpio.&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;NXP i.MX Release Distro 6.6-nanbield imx8mp-lpddr4-evk ttymxc1

imx8mp-lpddr4-evk login: [   14.532349] fec 30be0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off

imx8mp-lpddr4-evk login: root
root@imx8mp-lpddr4-evk:~# echo 80 &amp;gt; /sys/class/gpio/export
root@imx8mp-lpddr4-evk:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:
 gpio-10  (                    |reset               ) out hi ACTIVE LOW
 gpio-14  (                    |regulator-vbus      ) out hi

gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:
 gpio-38  (                    |regulator-pcie      ) out hi
 gpio-39  (                    |PCIe reset          ) out hi
 gpio-44  (                    |cd                  ) in  hi ACTIVE LOW
 gpio-51  (                    |regulator-usdhc2    ) out lo

gpiochip2: GPIOs 64-95, parent: platform/30220000.gpio, 30220000.gpio:
 gpio-80  (                    |sysfs               ) out hi

gpiochip3: GPIOs 96-127, parent: platform/30230000.gpio, 30230000.gpio:
 gpio-98  (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-116 (                    |switch              ) out hi ACTIVE LOW
 gpio-118 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-123 (                    |regulator-can2-stby ) out lo
 gpio-124 (                    |Headphone detection ) in  lo
 gpio-125 (                    |regulator-audio-pwr ) out hi

gpiochip4: GPIOs 128-159, parent: platform/30240000.gpio, 30240000.gpio:
 gpio-133 (                    |regulator-can1-stby ) out lo
 gpio-141 (                    |spi1 CS0            ) out hi ACTIVE LOW
 gpio-149 (                    |host-wake           ) in  hi ACTIVE LOW

gpiochip5: GPIOs 512-527, parent: i2c/2-0020, 2-0020, can sleep:
 gpio-512 (EXT_PWREN1          )
 gpio-513 (EXT_PWREN2          )
 gpio-514 (CAN1/I2C5_SEL       )
 gpio-515 (PDM/CAN2_SEL        )
 gpio-516 (FAN_EN              )
 gpio-517 (PWR_MEAS_IO1        )
 gpio-518 (PWR_MEAS_IO2        )
 gpio-519 (EXP_P0_7            )
 gpio-520 (EXP_P1_0            )
 gpio-521 (EXP_P1_1            )
 gpio-522 (EXP_P1_2            )
 gpio-523 (EXP_P1_3            )
 gpio-524 (EXP_P1_4            )
 gpio-525 (EXP_P1_5            )
 gpio-526 (EXP_P1_6            )
 gpio-527 (EXP_P1_7            )
root@imx8mp-lpddr4-evk:~# memtool -32 30330380 1
E
Reading 0x1 count starting at address 0x30330380

0x30330380:  00000140

root@imx8mp-lpddr4-evk:~# echo in &amp;gt; /sys/class/gpio/gpio80/direction
root@imx8mp-lpddr4-evk:~# memtool -32 30330380 1
E
Reading 0x1 count starting at address 0x30330380

0x30330380:  00000140

root@imx8mp-lpddr4-evk:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:
 gpio-10  (                    |reset               ) out hi ACTIVE LOW
 gpio-14  (                    |regulator-vbus      ) out hi

gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:
 gpio-38  (                    |regulator-pcie      ) out hi
 gpio-39  (                    |PCIe reset          ) out hi
 gpio-44  (                    |cd                  ) in  hi ACTIVE LOW
 gpio-51  (                    |regulator-usdhc2    ) out lo

gpiochip2: GPIOs 64-95, parent: platform/30220000.gpio, 30220000.gpio:
 gpio-80  (                    |sysfs               ) in  hi

gpiochip3: GPIOs 96-127, parent: platform/30230000.gpio, 30230000.gpio:
 gpio-98  (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-116 (                    |switch              ) out hi ACTIVE LOW
 gpio-118 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-123 (                    |regulator-can2-stby ) out lo
 gpio-124 (                    |Headphone detection ) in  lo
 gpio-125 (                    |regulator-audio-pwr ) out hi

gpiochip4: GPIOs 128-159, parent: platform/30240000.gpio, 30240000.gpio:
 gpio-133 (                    |regulator-can1-stby ) out lo
 gpio-141 (                    |spi1 CS0            ) out hi ACTIVE LOW
 gpio-149 (                    |host-wake           ) in  hi ACTIVE LOW

gpiochip5: GPIOs 512-527, parent: i2c/2-0020, 2-0020, can sleep:
 gpio-512 (EXT_PWREN1          )
 gpio-513 (EXT_PWREN2          )
 gpio-514 (CAN1/I2C5_SEL       )
 gpio-515 (PDM/CAN2_SEL        )
 gpio-516 (FAN_EN              )
 gpio-517 (PWR_MEAS_IO1        )
 gpio-518 (PWR_MEAS_IO2        )
 gpio-519 (EXP_P0_7            )
 gpio-520 (EXP_P1_0            )
 gpio-521 (EXP_P1_1            )
 gpio-522 (EXP_P1_2            )
 gpio-523 (EXP_P1_3            )
 gpio-524 (EXP_P1_4            )
 gpio-525 (EXP_P1_5            )
 gpio-526 (EXP_P1_6            )
 gpio-527 (EXP_P1_7            )
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I think maybe you miss some code in your driver, you can refer the sysfs code, have you add mutex during your operation?&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zhiming_Liu_0-1715147008336.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/277631i5F99A1DB6BE5E07E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Zhiming_Liu_0-1715147008336.png" alt="Zhiming_Liu_0-1715147008336.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 08 May 2024 05:45:26 GMT</pubDate>
    <dc:creator>Zhiming_Liu</dc:creator>
    <dc:date>2024-05-08T05:45:26Z</dc:date>
    <item>
      <title>Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1859981#M223354</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;I'm currently working with the i.MX8MP platform and encountered an issue while configuring a GPIO pin in input/pull-up mode. Here's the scenario:&lt;/P&gt;&lt;P&gt;In one of my drivers, the pin is used in output mode during the probe phase and then switched back to input mode. However, after this process, I found that the pin loses its configuration and is no longer in pull-up mode.&lt;/P&gt;&lt;P&gt;here is the dtb:&lt;/P&gt;&lt;PRE&gt;gt928@5d {&lt;BR /&gt;[...]&lt;BR /&gt;pincrtl-0 = &amp;lt;&amp;amp;pinctrl_ts&amp;gt;;&lt;BR /&gt;gt928,irq-gpios = &amp;lt;&amp;amp;gpio1 6 GPIO_PULL_UP&amp;gt;;&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;pinctrl_ts: tsgrp {&lt;BR /&gt;fsl,pins = &amp;lt;&lt;BR /&gt;MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x146 /* 0x146 == pull up, drive strength = 6 */&lt;BR /&gt;MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06 0xd6&lt;BR /&gt;&amp;gt;;&lt;BR /&gt;};&lt;/PRE&gt;&lt;P&gt;Here's the call stack for reference:&lt;/P&gt;&lt;PRE&gt;[ 14.630895] gpio_do_set_config+0x24/0x74&lt;BR /&gt;[ 14.630905] gpio_set_config_with_argument+0x38/0x44&lt;BR /&gt;[ 14.630911] gpio_set_bias+0x84/0xa4&lt;BR /&gt;[ 14.643448] gpiod_direction_input+0x198/0x1ac&lt;BR /&gt;[ 14.647892] goodix_irq_direction_input+0x40/0xa4 [goodix]&lt;BR /&gt;[ 14.653388] goodix_ts_probe+0x3fc/0x5c8 [goodix]&lt;/PRE&gt;&lt;P&gt;Upon further investigation, I noticed that the set_config function is not implemented (gpiolib.c do the following check):&lt;/P&gt;&lt;PRE&gt;gpio_do_set_config(struct gpio_chip *gc, unsigned int offset, unsigned long config) {&lt;BR /&gt;{&lt;BR /&gt; if (!gc-&amp;gt;set_config)&lt;BR /&gt;    return -ENOTSUPP;&lt;BR /&gt;[...]&lt;BR /&gt;}&lt;/PRE&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;I'm curious as to why set_config hasn't been implemented.&lt;/DIV&gt;&lt;DIV class=""&gt;I've seen that other have done it :&lt;/DIV&gt;&lt;DIV class=""&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;​gc-&amp;gt;set_config = pca953x_gpio_set_config;
or
gc-&amp;gt;set_config = ep93xx_gpio_set_config;&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;Any insights or suggestions on how to address this issue would be greatly appreciated.&lt;/DIV&gt;&lt;P&gt;Thank you in advance for your help!&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;Alexandre&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2024 21:21:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1859981#M223354</guid>
      <dc:creator>alexandreMarquis</dc:creator>
      <dc:date>2024-05-06T21:21:13Z</dc:date>
    </item>
    <item>
      <title>Re: Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1860037#M223358</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/223632"&gt;@alexandreMarquis&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The gpio iomux value has been written with&amp;nbsp;&lt;SPAN&gt;imx_pmx_set&lt;/SPAN&gt;&amp;nbsp;before gpio driver probe, so there is no need to use set_config function in gpio driver. The&amp;nbsp;&lt;SPAN&gt;imx_pinctrl_probe&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;For gpio io expander driver, this function is need, because there is no another driver setting pull up/down.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best Regards&lt;/P&gt;
&lt;P&gt;Zhiming&lt;/P&gt;</description>
      <pubDate>Tue, 07 May 2024 00:50:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1860037#M223358</guid>
      <dc:creator>Zhiming_Liu</dc:creator>
      <dc:date>2024-05-07T00:50:17Z</dc:date>
    </item>
    <item>
      <title>Re: Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1860517#M223391</link>
      <description>I see, but then my question would be, why do i lose the pin configuration from the device-tree when I change my pin direction?&lt;BR /&gt;&lt;BR /&gt;Scenario:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;My pin is configure with a pull-up.&lt;BR /&gt;My driver load, set the pin in output. There is no more pull-up.&lt;BR /&gt;Put it back in input&lt;BR /&gt;&lt;BR /&gt;expectation : the pin is set input, pull-up&lt;BR /&gt;current behaviour: the pin is set in input but the is no more pull-up on it.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;From what i can see, when we call&lt;BR /&gt;gpiod_direction_input()&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;the function set the pin in input and then call the function&lt;BR /&gt;gpio_set_bias(struct gpio_desc *desc)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Which seem to try to restore the pull/pull down state of the pin, but as mention earlier, the no function seem to be implemented to reapply the device tree flag.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 07 May 2024 11:59:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1860517#M223391</guid>
      <dc:creator>alexandreMarquis</dc:creator>
      <dc:date>2024-05-07T11:59:16Z</dc:date>
    </item>
    <item>
      <title>Re: Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1861073#M223437</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/223632"&gt;@alexandreMarquis&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I test such behavior on GPIO3_IO16(gpio-80). The iomux value in device tree will not be covered. There is no such issue using sysfs to control gpio.&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;NXP i.MX Release Distro 6.6-nanbield imx8mp-lpddr4-evk ttymxc1

imx8mp-lpddr4-evk login: [   14.532349] fec 30be0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off

imx8mp-lpddr4-evk login: root
root@imx8mp-lpddr4-evk:~# echo 80 &amp;gt; /sys/class/gpio/export
root@imx8mp-lpddr4-evk:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:
 gpio-10  (                    |reset               ) out hi ACTIVE LOW
 gpio-14  (                    |regulator-vbus      ) out hi

gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:
 gpio-38  (                    |regulator-pcie      ) out hi
 gpio-39  (                    |PCIe reset          ) out hi
 gpio-44  (                    |cd                  ) in  hi ACTIVE LOW
 gpio-51  (                    |regulator-usdhc2    ) out lo

gpiochip2: GPIOs 64-95, parent: platform/30220000.gpio, 30220000.gpio:
 gpio-80  (                    |sysfs               ) out hi

gpiochip3: GPIOs 96-127, parent: platform/30230000.gpio, 30230000.gpio:
 gpio-98  (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-116 (                    |switch              ) out hi ACTIVE LOW
 gpio-118 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-123 (                    |regulator-can2-stby ) out lo
 gpio-124 (                    |Headphone detection ) in  lo
 gpio-125 (                    |regulator-audio-pwr ) out hi

gpiochip4: GPIOs 128-159, parent: platform/30240000.gpio, 30240000.gpio:
 gpio-133 (                    |regulator-can1-stby ) out lo
 gpio-141 (                    |spi1 CS0            ) out hi ACTIVE LOW
 gpio-149 (                    |host-wake           ) in  hi ACTIVE LOW

gpiochip5: GPIOs 512-527, parent: i2c/2-0020, 2-0020, can sleep:
 gpio-512 (EXT_PWREN1          )
 gpio-513 (EXT_PWREN2          )
 gpio-514 (CAN1/I2C5_SEL       )
 gpio-515 (PDM/CAN2_SEL        )
 gpio-516 (FAN_EN              )
 gpio-517 (PWR_MEAS_IO1        )
 gpio-518 (PWR_MEAS_IO2        )
 gpio-519 (EXP_P0_7            )
 gpio-520 (EXP_P1_0            )
 gpio-521 (EXP_P1_1            )
 gpio-522 (EXP_P1_2            )
 gpio-523 (EXP_P1_3            )
 gpio-524 (EXP_P1_4            )
 gpio-525 (EXP_P1_5            )
 gpio-526 (EXP_P1_6            )
 gpio-527 (EXP_P1_7            )
root@imx8mp-lpddr4-evk:~# memtool -32 30330380 1
E
Reading 0x1 count starting at address 0x30330380

0x30330380:  00000140

root@imx8mp-lpddr4-evk:~# echo in &amp;gt; /sys/class/gpio/gpio80/direction
root@imx8mp-lpddr4-evk:~# memtool -32 30330380 1
E
Reading 0x1 count starting at address 0x30330380

0x30330380:  00000140

root@imx8mp-lpddr4-evk:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:
 gpio-10  (                    |reset               ) out hi ACTIVE LOW
 gpio-14  (                    |regulator-vbus      ) out hi

gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:
 gpio-38  (                    |regulator-pcie      ) out hi
 gpio-39  (                    |PCIe reset          ) out hi
 gpio-44  (                    |cd                  ) in  hi ACTIVE LOW
 gpio-51  (                    |regulator-usdhc2    ) out lo

gpiochip2: GPIOs 64-95, parent: platform/30220000.gpio, 30220000.gpio:
 gpio-80  (                    |sysfs               ) in  hi

gpiochip3: GPIOs 96-127, parent: platform/30230000.gpio, 30230000.gpio:
 gpio-98  (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-116 (                    |switch              ) out hi ACTIVE LOW
 gpio-118 (                    |PHY reset           ) out hi ACTIVE LOW
 gpio-123 (                    |regulator-can2-stby ) out lo
 gpio-124 (                    |Headphone detection ) in  lo
 gpio-125 (                    |regulator-audio-pwr ) out hi

gpiochip4: GPIOs 128-159, parent: platform/30240000.gpio, 30240000.gpio:
 gpio-133 (                    |regulator-can1-stby ) out lo
 gpio-141 (                    |spi1 CS0            ) out hi ACTIVE LOW
 gpio-149 (                    |host-wake           ) in  hi ACTIVE LOW

gpiochip5: GPIOs 512-527, parent: i2c/2-0020, 2-0020, can sleep:
 gpio-512 (EXT_PWREN1          )
 gpio-513 (EXT_PWREN2          )
 gpio-514 (CAN1/I2C5_SEL       )
 gpio-515 (PDM/CAN2_SEL        )
 gpio-516 (FAN_EN              )
 gpio-517 (PWR_MEAS_IO1        )
 gpio-518 (PWR_MEAS_IO2        )
 gpio-519 (EXP_P0_7            )
 gpio-520 (EXP_P1_0            )
 gpio-521 (EXP_P1_1            )
 gpio-522 (EXP_P1_2            )
 gpio-523 (EXP_P1_3            )
 gpio-524 (EXP_P1_4            )
 gpio-525 (EXP_P1_5            )
 gpio-526 (EXP_P1_6            )
 gpio-527 (EXP_P1_7            )
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I think maybe you miss some code in your driver, you can refer the sysfs code, have you add mutex during your operation?&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Zhiming_Liu_0-1715147008336.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/277631i5F99A1DB6BE5E07E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Zhiming_Liu_0-1715147008336.png" alt="Zhiming_Liu_0-1715147008336.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 08 May 2024 05:45:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1861073#M223437</guid>
      <dc:creator>Zhiming_Liu</dc:creator>
      <dc:date>2024-05-08T05:45:26Z</dc:date>
    </item>
    <item>
      <title>Re: Unimplemented set_config Function: GPIO Pin Configuration Loss on i.MX8MP</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1868239#M223900</link>
      <description>&lt;P&gt;This is how I resolved my problem.&lt;BR /&gt;Based on my findings, placing &amp;lt;&amp;amp;pinctrl_ts&amp;gt; under the touchscreen node doesn't apply the pin function correctly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;&amp;amp;i2c3 {
	clock-frequency = &amp;lt;400000&amp;gt;;
	pinctrl-names = "default";
	pinctrl-0 = &amp;lt;&amp;amp;pinctrl_i2c3&amp;gt;,&amp;lt;&amp;amp;pinctrl_ts&amp;gt;;
	status = "okay";

	ov5640_0: ov5640_mipi@3c {
		status = "disabled";
	};

	gt928@5d {
		compatible = "goodix,gt928";
		reg = &amp;lt;0x5d&amp;gt;;
		pincrtl-names = "default";
		pincrtl-0 = &amp;lt;&amp;amp;pinctrl_ts&amp;gt;;
		interrupt-parent = &amp;lt;&amp;amp;gpio1&amp;gt;;
		interrupts = &amp;lt;6 IRQ_TYPE_LEVEL_LOW&amp;gt;;
		gt928,irq-gpios = &amp;lt;&amp;amp;gpio1 6 GPIO_ACTIVE_HIGH&amp;gt;;
		gt928,reset-gpios = &amp;lt;&amp;amp;gpio2 6 GPIO_ACTIVE_HIGH&amp;gt;;
		touchscreen-inverted-x; 
		status = "okay";
	};
};

[...]

&amp;amp;iomuxc {
	pinctrl_ts: tsgrp {
		fsl,pins = &amp;lt;
			MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06		0x146 /* 0x146 == pull up, drive strength = 6 */
			MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06		0xd6
		&amp;gt;;
	};
};&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However, when I move it to the &amp;amp;i2c3 node, the pins are configured properly.&lt;/P&gt;&lt;P&gt;Thank you for your time!&lt;/P&gt;</description>
      <pubDate>Fri, 17 May 2024 19:09:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Unimplemented-set-config-Function-GPIO-Pin-Configuration-Loss-on/m-p/1868239#M223900</guid>
      <dc:creator>alexandreMarquis</dc:creator>
      <dc:date>2024-05-17T19:09:59Z</dc:date>
    </item>
  </channel>
</rss>

