There are two buttons (S2 and S3). My board only has a button mounted on S2. These are connected to U3.A17 and U3.A14 according to the schematic. These are connected to MIO pins and can indeed be accessed directly via GPIO from the ARM side. I wrote some bare-metal code to read the GPIO connected to this button.
#define MIO_S2_BUTTON 20 #define MIO_S3_BUTTON 32
I extracted "/opt/work0/btc_upgrade.tar.gz" and found a "reset_button" script. Within is a reference to "/sys/class/gpio/gpio926/value". I was able to quickly confirm that cat'ing this pseudo-file would reflect '1' when the S2 button was pressed.The S2 button is MIO 20 and the S3 button is MIO 32. For whatever reason, the MIO bits get started at "906", so MIO-20 becomes gpio926 and MIO-32 will be gpio938.
Reset has no button. It is handled by an SGM706-SYS8 chip, which is described as a "microprocessor supervisor circuit". A 35 page datasheet is available, and this thing is shown on the schematic.
Very likely a button could be wired to this thing. What I have done instead is to wire up a button to the 12 volt supply so that the button momentarily interrupts power which gives the same effect as a reset button, albeit not quite so gently.
Tom's Computer Info / [email protected]