I’m trying to figure out how to set the default state of a GPIO line in our carrier board specific device tree that we’ve created. This is GPIO6 IO12. According to the GPIO line mapping this is GPIO line 172, SODIMM line 169.
This GPIO line is normally low, but there is a period of time, usually between 2.5 and 3 seconds, on embedded Linux bootup where the line will go high and then back to low again where it will remain low until we export that GPIO line, set the direction to “out”, and then set the value to 1. Setting and clearing the value works great after embedded Linux is fully booted, but the initial setting of the GPIO line to high on OS bootup is creating a problem for us in our application of the i.MX7D Colibri board. We cannot have this happening.
After research I’ve found information that suggests this can be handled in the device tree, but I haven’t found anything that supplies instructions on how to do this.
I’ve verified that the pinmux for this GPIO line is set only to GPIO. There is no other node in the device tree that is claiming this line for use by a device driver.
How would I define something in the device tree that tells embedded Linux NOT to set this line high during bootup, or at any other time, until we are ready to set it high ourselves?