[U-Boot] Pincontroller not getting initialized on imx6 in SPL with SPL_PINCTRL and OF_CONTROL

Lokesh Vutla lokeshvutla at ti.com
Wed Feb 20 13:49:09 UTC 2019


Hi Adam,

On 20/02/19 7:01 PM, Adam Ford wrote:
> I am trying to remove the manual pinmuxing code from the board file.
> In an effort to accomplish this, I am trying to get SPL_OF_CONTROL and
> SPL_PINCTRL to let me use the device tree(s) to initialize pin muxing.
> 
> I have the following defined:
> 
> CONFIG_SPL_PINCTRL=y
> CONFIG_SPL_PINCTRL_FULL=y
> CONFIG_SPL_PINCTRL_GENERIC=y
> CONFIG_SPL_PINMUX=y
> 
> along with
> CONFIG_PINCTRL_IMX=y
> CONFIG_PINCTRL_IMX6=y
> 
> I put some debugging code into the imx6 pinctrl and I can see that
> U-Boot initializes it, but that same debug message doesn't appear in
> SPL.
> 
> I looked through the spl build directory, and I can see the drivers
> have been built, and the map file shows they exist, but for some
> reason, it doesn't initalize.  If I remove the UART pin-muxing from my
> board file, the text for SPL doesn't' appear at all, so it's clear
> pinctrl isn't setting up the proper muxing yet.
> 
> I am trying to figure out how/where the pinctrl system gets
> initialized in SPL, and I was hoping someone might have some insight.

Pinctrl will be set as part of device_probe() call[1] for each device.

Have you added u-boot,dm-spl for your pinctrl nodes? Try de-compiling spl dts
and check if all required nodes are available.


[1]
http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/core/device.c;h=0d15e5062b66123cd364bd9803e076db7e7dd97c;hb=HEAD#l383

Thanks and regards,
Lokesh

> 
> thanks,
> 
> adam
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
> 


More information about the U-Boot mailing list