What's the role of pinctrl_additionalgpio?


I’m playing with dtb for several months now, but it is still not clear what is the role of pinctrl_additionalgpio group.

I’ve initially believed it is not used at all, but it seems the setting of a gpio in it have an impact on other groups.
Is it used by u-boot, by kernel as default setting or mask?


We use the pinctrl_additionalgpio group for defining pins as GPIO. pinctrl_additionalgpio is just a pinctrl node name chosen by us. It is not used by u-boot but by Linux kernel. If a pin has been pin multiplexed as GPIO, one would have to remove that pin multiplex setting, to mutiplex it to another alternate function.

Ok thanks.

Which “driver” is using this pinctrl node? I’m not able to find it in the kernel sources?
Is it automatically used at start-up or only if a gpio is used via /sys/class/gpio interface?


The Vybrid pinctrl driver will take care of muxing the pins defined under the iomuxc node.

Those muxes won’t be applied by default, they only get applied once somebody (e.g. user-space via sysfs GPIO) requests the particular GPIO. See imx_pmx_gpio_request_enable in pinctrl-imx.c.

Thanks for clarifications.

Is there a way to address the RTS modem line as a GPIO to set it low at u-boot start time in board_init()?

Am I correct in the assumption that you are trying to hijack an old question here? Please do ask a new question, thank you.