I have noticed on the Beaglebone that GPIO2_9 (pin P8-44) specifically refuses to allow me to enable the pull-up resistor as an input. I have tried several Beaglebones and they all behave the same. I have no cape attached and other GPIOs such as GPIO2_10 and GPIO2_11 work fine. Providing an external 10k resistor solves the problem, and the input behaves as expected. The root cause, however, remains a mystery to me. Has anyone else seen similar behavior? Am I missing something?
Gerald,
Thanks for your very quick reply. I now see the resistors and selective DNIs on the schematic. This brings up another concern that if the state of these pins are used on system boot for some reason, then any external device could upset this value. For instance if UART3 CTSN is connected to an external device on boot up, then the state of SYS_BOOT10 will not reflect the presence of resistors R90/R110 but rather the state of the external device. I have not yet been able find the document pertaining to the use of SYS_BOOT, could you point me in the right direction?
They are indeed used for the boot up process, and yes indeed you could definitely cause the board not to boot if you terminate them improperly. If the driving circuit can be held off until after reset has been removed plus 100ms, you should be OK.
The sysboot function is described in the last section of the AM335x TRM.