diff options
author | Ronald G. Minnich <rminnich@gmail.com> | 2009-10-07 18:03:41 +0000 |
---|---|---|
committer | Ronald G. Minnich <rminnich@gmail.com> | 2009-10-07 18:03:41 +0000 |
commit | 7b6a0a84bea27bdb332b082e6d602f0596a2a8c8 (patch) | |
tree | 6de152dde51f4854b9963f30eef83876f37cb2af /src/superio/nsc/pc8374 | |
parent | 869bbc46166bdfe0b785b5a64ebcea2f167e1b0c (diff) |
Get rid of early_serial, it is now a generic function in early_init.
Add some more enables to the s1850.
Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4736 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/superio/nsc/pc8374')
-rw-r--r-- | src/superio/nsc/pc8374/pc8374_early_init.c | 37 | ||||
-rw-r--r-- | src/superio/nsc/pc8374/pc8374_early_serial.c | 11 |
2 files changed, 37 insertions, 11 deletions
diff --git a/src/superio/nsc/pc8374/pc8374_early_init.c b/src/superio/nsc/pc8374/pc8374_early_init.c new file mode 100644 index 0000000000..24967454b2 --- /dev/null +++ b/src/superio/nsc/pc8374/pc8374_early_init.c @@ -0,0 +1,37 @@ +#include <arch/romcc_io.h> +#include "pc8374.h" + +/* things that Must Be Done to get this chip working */ +/* Straight from the data book */ +static void pc8374_enable(unsigned iobase, u8 *init) +{ + u8 val, count; + outb(0x29, iobase); + val = inb(iobase+1); + val |= 0x91; + outb(val, iobase+1); + for(count = 0; count < 255; count++) + if (inb(iobase+1) == 0x91) + break; + for(;*init; init++) { + outb(*init, iobase); + val = inb(iobase+1); + init++; + val &= *init; + init++; + val |= *init; + outb(val, iobase+1); + } + + +} + +static void pc8374_enable_dev(device_t dev, unsigned iobase) +{ + pnp_set_logical_device(dev); + pnp_set_enable(dev, 0); + if (iobase) + pnp_set_iobase(dev, PNP_IDX_IO0, iobase); + pnp_set_enable(dev, 1); +} + diff --git a/src/superio/nsc/pc8374/pc8374_early_serial.c b/src/superio/nsc/pc8374/pc8374_early_serial.c deleted file mode 100644 index be496070ec..0000000000 --- a/src/superio/nsc/pc8374/pc8374_early_serial.c +++ /dev/null @@ -1,11 +0,0 @@ -#include <arch/romcc_io.h> -#include "pc8374.h" - - -static void pc8374_enable_serial(device_t dev, unsigned iobase) -{ - pnp_set_logical_device(dev); - pnp_set_enable(dev, 1); - pnp_set_iobase(dev, PNP_IDX_IO0, iobase); - pnp_set_enable(dev, 1); -} |