I thought this would be easy, but after 8 hours of work I still cannot use add a gpio and then use sysfs to control it.
There are existing GPIOs that I can control with sysfs via /sys/class/gpio so I know that I have that part of the process right, but there are some others that are not available, or do not respond.
Background: I have a custom AM553x (4) board that has a customization of sdk v 7.0 on it. We then have a distro of Angstrom on top of that. I want to add control of GPIO0_28 and GPIO3_10. So at first I thought I could just add these as new nodes in the dts file, as sub nodes under the am33xx_pinmux
control_default: pinmux_control_default { pinctrl-single,pins = < 0x1A8 (PIN_OUTPUT | MUX_MODE7) /* boot 0*/ 0x70 (PIN_OUTPUT | MUX_MODE7) /* SELF POWER ON*/ >; };
I compile the dts file and load it on the processor. I can echo106 > /sys/class/gpio/export, and drive the port high (according to the readback), however the actual pin does not change. This is no different from what happens when I don't have those lines present in the device tree. What am I missing here?
I have tried many things, most of which just cause the board to fail booting. Any help is much appreciated.