T60: Add support for Ultrabay Legacy I/O devices (40Y8122)

Those modules have basically the same Super I/O capabilities as
the Docking station. Unfortunately, the Super I/O in the module
shares the same I/O address as the Docking station, so we're not
allowed to connect the LPC Docking Bus if such a module is present.

To be able to detect this device and use it as early console for
coreboot, we have to initialize the GPIO Controller before, as
this device is detected via GPIO06.

Change-Id: If7c38bb6797f76cf28f09f3614ab9a33878571fb
Signed-off-by: Sven Schnelle <svens@stackframe.org>
Reviewed-on: http://review.coreboot.org/282
Tested-by: build bot (Jenkins)
This commit is contained in:
Sven Schnelle
2011-10-15 17:31:01 +02:00
parent 2588db496d
commit b538110532
7 changed files with 66 additions and 20 deletions

View File

@@ -1 +1,3 @@
driver-y += pmh7.c
smm-$(CONFIG_HAVE_SMI_HANDLER) += pmh7.c
romstage-y += pmh7.c

View File

@@ -91,6 +91,8 @@ void pmh7_register_write(int reg, int val)
outb(val, EC_LENOVO_PMH7_DATA);
}
#ifndef __PRE_RAM__
#ifndef __SMM__
static void enable_dev(device_t dev)
{
struct ec_lenovo_pmh7_config *conf = dev->chip_info;
@@ -115,3 +117,5 @@ struct chip_operations ec_lenovo_pmh7_ops = {
CHIP_NAME("Lenovo Power Management Hardware Hub 7")
.enable_dev = enable_dev,
};
#endif
#endif