diff options
author | Uwe Hermann <uwe@hermann-uwe.de> | 2010-11-08 15:16:30 +0000 |
---|---|---|
committer | Uwe Hermann <uwe@hermann-uwe.de> | 2010-11-08 15:16:30 +0000 |
commit | 5c6bae213ea55e1436e010706560d86120b0b286 (patch) | |
tree | 48373faf8bc3a9e0628eeb1002508402c5b9299e /src/superio/ite/it8712f/superio.c | |
parent | 6018e1ba7f797db3a7f1ae34bdb10ec1fa5c8a6c (diff) | |
download | coreboot-5c6bae213ea55e1436e010706560d86120b0b286.tar.xz |
Random ITE Super I/O fixes.
- Drop some of the less useful / outdated / duplicated comments.
- Simplify and streamline some code to look like the other Super I/Os.
- Use u8/16/etc. everywhere.
- ITE IT8718F: Add missing GPIO LDN.
- Add missing braces around SIO_DATA #defines, potential bug even.
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6047 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/superio/ite/it8712f/superio.c')
-rw-r--r-- | src/superio/ite/it8712f/superio.c | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/superio/ite/it8712f/superio.c b/src/superio/ite/it8712f/superio.c index 2d2a83a943..4d41ac3412 100644 --- a/src/superio/ite/it8712f/superio.c +++ b/src/superio/ite/it8712f/superio.c @@ -28,19 +28,14 @@ #include "chip.h" #include "it8712f.h" -/* Base address 0x2e: 0x87 0x01 0x55 0x55. */ -/* Base address 0x4e: 0x87 0x01 0x55 0xaa. */ static void pnp_enter_ext_func_mode(device_t dev) { - outb(0x87, dev->path.pnp.port); - outb(0x01, dev->path.pnp.port); - outb(0x55, dev->path.pnp.port); + u16 port = dev->path.pnp.port; - if (dev->path.pnp.port == 0x4e) { - outb(0xaa, dev->path.pnp.port); - } else { - outb(0x55, dev->path.pnp.port); - } + outb(0x87, port); + outb(0x01, port); + outb(0x55, port); + outb((port == 0x4e) ? 0xaa : 0x55, port); } static void pnp_exit_ext_func_mode(device_t dev) @@ -50,14 +45,11 @@ static void pnp_exit_ext_func_mode(device_t dev) static void it8712f_init(device_t dev) { - struct superio_ite_it8712f_config *conf; + struct superio_ite_it8712f_config *conf = dev->chip_info; struct resource *res0, *res1; - if (!dev->enabled) { + if (!dev->enabled) return; - } - - conf = dev->chip_info; switch (dev->path.pnp.device) { case IT8712F_FDC: /* TODO. */ |