Prevent linux from clearing GPIO P8_12 and P8_13 on boot

Hi everyone,

I’m building a product based on the BeagleBone Black that uses LEDs to indicate the current status. These LEDs are connected to P8_12 and P8_13 (GPIO 44 and 23) and need to be turned on during boot.

I succeeded in setting the relevant pins to high in uBoot, but as soon as the linux kernel boots, the pins are immediately cleared. After boot I can regain control through a device tree overlay, but the GPIO pins I mentioned before need to be high during the entire boot process.

Any ideas on what driver/module is responsible for this behaviour and how I can prevent linux from clearing the relevant GPIO ports?


I think i already replied to another post on this. In case you are
looking for an
explanation on who's clearing the pins, that would be init code of the kernel
which resets all the peripherals to get them to a known state. Have a look at
the other reply on how to avoid this.