aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2010-05-21 12:40:55 -0400
committerJean Delvare <khali@linux-fr.org>2010-05-21 12:40:55 -0400
commite0e8398c7a40f1fb65cefa9d35ed6cd84cee6008 (patch)
treea8bd6ffd67366a6629d4ff30742f78a86e0bfa74 /drivers/i2c
parentadff687d8cb0ed62b147a7e1d277846b3130d593 (diff)
i2c-i801: All newer devices have all the optional features
Only the oldest devices lack some of the features supported by this driver. List them explicitly, and default to all features enabled for all other chips, including the ones added through sysfs. This will make future driver maintenance easier. In the unlikely event of a not yet supported device not implementing all the features, one can always use the disable_features module parameter to prevent the driver from attempting to use them. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Seth Heasley <seth.heasley@intel.com>
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/busses/i2c-i801.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
index f0fef343e19b..878299cd0ef8 100644
--- a/drivers/i2c/busses/i2c-i801.c
+++ b/drivers/i2c/busses/i2c-i801.c
@@ -711,23 +711,17 @@ static int __devinit i801_probe(struct pci_dev *dev, const struct pci_device_id
711 I801_dev = dev; 711 I801_dev = dev;
712 i801_features = 0; 712 i801_features = 0;
713 switch (dev->device) { 713 switch (dev->device) {
714 case PCI_DEVICE_ID_INTEL_82801EB_3: 714 default:
715 case PCI_DEVICE_ID_INTEL_ESB_4:
716 case PCI_DEVICE_ID_INTEL_ICH6_16:
717 case PCI_DEVICE_ID_INTEL_ICH7_17:
718 case PCI_DEVICE_ID_INTEL_ESB2_17:
719 case PCI_DEVICE_ID_INTEL_ICH8_5:
720 case PCI_DEVICE_ID_INTEL_ICH9_6:
721 case PCI_DEVICE_ID_INTEL_TOLAPAI_1:
722 case PCI_DEVICE_ID_INTEL_ICH10_4:
723 case PCI_DEVICE_ID_INTEL_ICH10_5:
724 case PCI_DEVICE_ID_INTEL_PCH_SMBUS:
725 case PCI_DEVICE_ID_INTEL_CPT_SMBUS:
726 i801_features |= FEATURE_I2C_BLOCK_READ; 715 i801_features |= FEATURE_I2C_BLOCK_READ;
727 /* fall through */ 716 /* fall through */
728 case PCI_DEVICE_ID_INTEL_82801DB_3: 717 case PCI_DEVICE_ID_INTEL_82801DB_3:
729 i801_features |= FEATURE_SMBUS_PEC; 718 i801_features |= FEATURE_SMBUS_PEC;
730 i801_features |= FEATURE_BLOCK_BUFFER; 719 i801_features |= FEATURE_BLOCK_BUFFER;
720 /* fall through */
721 case PCI_DEVICE_ID_INTEL_82801CA_3:
722 case PCI_DEVICE_ID_INTEL_82801BA_2:
723 case PCI_DEVICE_ID_INTEL_82801AB_3:
724 case PCI_DEVICE_ID_INTEL_82801AA_3:
731 break; 725 break;
732 } 726 }
733 727