diff options
Diffstat (limited to 'src/superio/smsc/lpc47b397/lpc47b397_early_gpio.c')
-rw-r--r-- | src/superio/smsc/lpc47b397/lpc47b397_early_gpio.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/superio/smsc/lpc47b397/lpc47b397_early_gpio.c b/src/superio/smsc/lpc47b397/lpc47b397_early_gpio.c new file mode 100644 index 0000000000..6f27c74db1 --- /dev/null +++ b/src/superio/smsc/lpc47b397/lpc47b397_early_gpio.c @@ -0,0 +1,25 @@ +static void lpc47b397_gpio_offset_out(unsigned iobase, unsigned offset, unsigned value) +{ + outb(value,iobase+offset); +} +static unsigned lpc47b397_gpio_offset_in(unsigned iobase, unsigned offset) +{ + return inb(iobase+offset); +} + +//for GP60-GP64, GP66-GP85 +#define LPC47B397_GPIO_CNTL_INDEX 0x70 +#define LPC47B397_GPIO_CNTL_DATA 0x71 + +static void lpc47b397_gpio_index_out(unsigned iobase, unsigned index, unsigned value) +{ + outb(index,iobase+LPC47B397_GPIO_CNTL_INDEX); + outb(value, iobase+LPC47B397_GPIO_CNTL_DATA); +} +static unsigned lpc47b397_gpio_index_in(unsigned iobase, unsigned index) +{ + outb(index,iobase+LPC47B397_GPIO_CNTL_INDEX); + return inb(iobase+LPC47B397_GPIO_CNTL_DATA); +} + + |