Round 2 of i82801AX fixes to get it into a usable shape.
[coreboot.git] / src / southbridge / intel / i82801ax / i82801ax_early_smbus.c
index d80c29c1598e6fe89abce93ab781cf8489891352..e51e6afb6a8413c07c5578e9598fbc5354079952 100644 (file)
 static void enable_smbus(void)
 {
        device_t dev;
-       uint16_t device_id;
 
-       /* Set the SMBus device statically. */
+       /* Set the SMBus device statically (D31:F3). */
        dev = PCI_DEV(0x0, 0x1f, 0x3);
 
-       /* Check to make sure we've got the right device. */
-       device_id = pci_read_config16(dev, 0x2);
-
-       /* Clear bits 7-4 (the only bits that vary between models). */
-       device_id &= 0xff0f;
-
-       if (device_id != 0x2403) {
-               die("Device not found, Corey probably screwed up!");
-       }
-
        /* Set SMBus I/O base. */
        pci_write_config32(dev, SMB_BASE,
                           SMBUS_IO_BASE | PCI_BASE_ADDRESS_SPACE_IO);
@@ -58,24 +47,11 @@ static void enable_smbus(void)
        /* Clear any lingering errors, so transactions can run. */
        outb(inb(SMBUS_IO_BASE + SMBHSTSTAT), SMBUS_IO_BASE + SMBHSTSTAT);
 
-       print_debug("SMBus controller enabled\r\n");
+       print_debug("SMBus controller enabled\n");
 }
 
 static inline int smbus_read_byte(unsigned device, unsigned address)
 {
-       return do_smbus_read_byte(device, address);
-}
-
-static void smbus_write_byte(unsigned device, unsigned address,
-                            unsigned char val)
-{
-       print_err("Unimplemented smbus_write_byte() called\r\n");
-       return;
+       return do_smbus_read_byte(SMBUS_IO_BASE, device, address);
 }
 
-static inline int smbus_write_block(unsigned device, unsigned length,
-                                   unsigned cmd, unsigned data1,
-                                   unsigned data2)
-{
-       return do_smbus_write_block(device, length, cmd, data1, data2);
-}