Sven Schnelle (svens@stackframe.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/325
-gerrit
commit 5d681e0c15ea595292bd9c40d47691cd153aea34 Author: Sven Schnelle svens@stackframe.org Date: Sun Oct 23 15:30:29 2011 +0200
i82801gx: Don't set I/O base address to static value
Doing it this way will break all subsequent smbus calls, because the smbus code still uses res->base, which points to the old base address.
Change-Id: I0f3d8fba5f8e2db7fe4ca991ef2c345aff436ea4 Signed-off-by: Sven Schnelle svens@stackframe.org --- src/southbridge/intel/i82801gx/smbus.c | 14 -------------- 1 files changed, 0 insertions(+), 14 deletions(-)
diff --git a/src/southbridge/intel/i82801gx/smbus.c b/src/southbridge/intel/i82801gx/smbus.c index 834f310..184120f 100644 --- a/src/southbridge/intel/i82801gx/smbus.c +++ b/src/southbridge/intel/i82801gx/smbus.c @@ -29,19 +29,6 @@ #include "i82801gx.h" #include "smbus.h"
-#define SMB_BASE 0x20 -static void smbus_init(struct device *dev) -{ - u32 smb_base; - - smb_base = pci_read_config32(dev, SMB_BASE); - printk(BIOS_DEBUG, "Initializing SMBus device:\n"); - printk(BIOS_DEBUG, " Old SMBUS Base Address: 0x%04x\n", smb_base); - pci_write_config32(dev, SMB_BASE, 0x00000401); - smb_base = pci_read_config32(dev, SMB_BASE); - printk(BIOS_DEBUG, " New SMBUS Base Address: 0x%04x\n", smb_base); -} - static int lsmbus_read_byte(device_t dev, u8 address) { u16 device; @@ -78,7 +65,6 @@ static struct device_operations smbus_ops = { .read_resources = pci_dev_read_resources, .set_resources = pci_dev_set_resources, .enable_resources = pci_dev_enable_resources, - .init = smbus_init, .scan_bus = scan_static_bus, .enable = i82801gx_enable, .ops_smbus_bus = &lops_smbus_bus,