Commit e6dffc04 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

[PATCH] i2c i2c-i801.c: fix up the pci id matching, and change to use proper pci ids.

parent f8770ea0
...@@ -55,21 +55,6 @@ MODULE_LICENSE("GPL"); ...@@ -55,21 +55,6 @@ MODULE_LICENSE("GPL");
#define HAVE_PEC #define HAVE_PEC
#endif #endif
#ifndef PCI_DEVICE_ID_INTEL_82801CA_SMBUS
#define PCI_DEVICE_ID_INTEL_82801CA_SMBUS 0x2483
#endif
#ifndef PCI_DEVICE_ID_INTEL_82801DB_SMBUS
#define PCI_DEVICE_ID_INTEL_82801DB_SMBUS 0x24C3
#endif
static int supported[] = {PCI_DEVICE_ID_INTEL_82801AA_3,
PCI_DEVICE_ID_INTEL_82801AB_3,
PCI_DEVICE_ID_INTEL_82801BA_2,
PCI_DEVICE_ID_INTEL_82801CA_SMBUS,
PCI_DEVICE_ID_INTEL_82801DB_SMBUS,
0 };
/* I801 SMBus address offsets */ /* I801 SMBus address offsets */
#define SMBHSTSTS (0 + i801_smba) #define SMBHSTSTS (0 + i801_smba)
#define SMBHSTCNT (2 + i801_smba) #define SMBHSTCNT (2 + i801_smba)
...@@ -135,7 +120,6 @@ static int isich4; ...@@ -135,7 +120,6 @@ static int isich4;
static int i801_setup(struct pci_dev *dev) static int i801_setup(struct pci_dev *dev)
{ {
int error_return = 0; int error_return = 0;
int *num = supported;
unsigned char temp; unsigned char temp;
/* Note: we keep on searching until we have found 'function 3' */ /* Note: we keep on searching until we have found 'function 3' */
...@@ -143,7 +127,10 @@ static int i801_setup(struct pci_dev *dev) ...@@ -143,7 +127,10 @@ static int i801_setup(struct pci_dev *dev)
return -ENODEV; return -ENODEV;
I801_dev = dev; I801_dev = dev;
isich4 = *num == PCI_DEVICE_ID_INTEL_82801DB_SMBUS; if (dev->device == PCI_DEVICE_ID_INTEL_82801DB_3)
isich4 = 1;
else
isich4 = 0;
/* Determine the address of the SMBus areas */ /* Determine the address of the SMBus areas */
if (force_addr) { if (force_addr) {
...@@ -290,7 +277,7 @@ int i801_block_transaction(union i2c_smbus_data *data, char read_write, ...@@ -290,7 +277,7 @@ int i801_block_transaction(union i2c_smbus_data *data, char read_write,
hostc | SMBHSTCFG_I2C_EN); hostc | SMBHSTCFG_I2C_EN);
} else { } else {
dev_err(&I801_dev->dev, dev_err(&I801_dev->dev,
"I2C_SMBUS_I2C_BLOCK_READ not supported!\n"); "I2C_SMBUS_I2C_BLOCK_READ not DB!\n");
return -1; return -1;
} }
} }
...@@ -607,13 +594,13 @@ static struct pci_device_id i801_ids[] __devinitdata = { ...@@ -607,13 +594,13 @@ static struct pci_device_id i801_ids[] __devinitdata = {
}, },
{ {
.vendor = PCI_VENDOR_ID_INTEL, .vendor = PCI_VENDOR_ID_INTEL,
.device = PCI_DEVICE_ID_INTEL_82801CA_SMBUS, .device = PCI_DEVICE_ID_INTEL_82801CA_3,
.subvendor = PCI_ANY_ID, .subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID, .subdevice = PCI_ANY_ID,
}, },
{ {
.vendor = PCI_VENDOR_ID_INTEL, .vendor = PCI_VENDOR_ID_INTEL,
.device = PCI_DEVICE_ID_INTEL_82801DB_SMBUS, .device = PCI_DEVICE_ID_INTEL_82801DB_3,
.subvendor = PCI_ANY_ID, .subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID, .subdevice = PCI_ANY_ID,
}, },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment