understanding GPIO registers
OrazioPirataDelloSpazio (Lorenzo)
ziducaixao at autistici.org
Thu Aug 25 14:50:19 EDT 2011
Hi there,
I have a motherbord (VIA EPIA LT) with a digital I/O port composed by 4
GPI and 4 GPO (chip: SMSC SCH3114).
I want to provide voltage to GPO and read the input value of GPI with a
software.
Using the generic gpio kernel module, I tried to export pins without
success :
echo N > /sys/class/gpio/export
write error : invalid argument
I tried for several values of N (from 1 to 1000 !) then I gave up
thinking I would have needed some information from the hardware producer.
Now I have got this information that is the following offsets and addresses.
How can I use these registers to fix the export problem or alternatively
how to write a simple userspace C program to read and write these GPIO?
I read gpio.txt but I'm still confused on how to pass from GPIO numbers
to registers.
Thanks
Lorenzo
#define sGPIOBaseAddr 0A00
#define GPI1_CTRL_REG 0x6E
#define GPI2_CTRL_REG 0x6F
#define GPI3_CTRL_REG 0x72
#define GPI4_CTRL_REG 0x73
#define GPO1_CTRL_REG 0x2C
#define GPO2_CTRL_REG 0x2D
#define GPO3_CTRL_REG 0x35
#define GPO4_CTRL_REG 0x36
More information about the Kernelnewbies
mailing list