Changeset 1150
- Timestamp:
- 07/30/01 00:48:15 (12 years ago)
- Location:
- lm-sensors/trunk
- Files:
-
- 3 modified
-
CHANGES (modified) (1 diff)
-
kernel/busses/i2c-sis5595.c (modified) (4 diffs)
-
kernel/chips/sis5595.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lm-sensors/trunk/CHANGES
r1147 r1150 26 26 Module i2c-ali15x3: Allow force_addr=0xaddr; enable if not enabled. 27 27 Module i2c-i801: Fix 82801BA detection broken by kernel 2.4.6 28 Module i2c-sis5595: Recognize unsupported chips and refuse to load 28 29 Module adm1025: Fixed temp2 min/max writes 29 30 Module ds1621: Add 12-bit precision mode 30 31 Module it87: Enable all alarms, add in8 support, add sensor type selection 32 Module sis5595: Recognize unsupported chips and refuse to load 31 33 Module w83781d: Fix fan speed for as99127f (broken by 2.6.0) 32 34 Program sensors: it87 updates -
lm-sensors/trunk/kernel/busses/i2c-sis5595.c
r1077 r1150 21 21 22 22 /* Note: we assume there can only be one SIS5595 with one SMBus interface */ 23 24 /* 25 Note: all have mfr. ID 0x1039. 26 SUPPORTED PCI ID 27 5595 0008 28 29 Note: these chips contain a 0008 device which is incompatible with the 30 5595. We recognize these by the presence of the listed 31 "blacklist" PCI ID and refuse to load. 32 33 NOT SUPPORTED PCI ID BLACKLIST PCI ID 34 540 0008 0540 35 550 0008 0550 36 5513 0008 5511 37 5581 0008 5597 38 5582 0008 5597 39 5597 0008 5597 40 5598 0008 5597/5598 41 630 0008 0630 42 730 0008 0730 43 */ 23 44 24 45 /* TO DO: … … 39 60 40 61 #include <linux/init.h> 62 63 #ifndef PCI_DEVICE_ID_SI_540 64 #define PCI_DEVICE_ID_SI_540 0x0540 65 #endif 66 #ifndef PCI_DEVICE_ID_SI_550 67 #define PCI_DEVICE_ID_SI_550 0x0550 68 #endif 69 #ifndef PCI_DEVICE_ID_SI_630 70 #define PCI_DEVICE_ID_SI_630 0x0630 71 #endif 72 #ifndef PCI_DEVICE_ID_SI_730 73 #define PCI_DEVICE_ID_SI_730 0x0730 74 #endif 75 #ifndef PCI_DEVICE_ID_SI_5598 76 #define PCI_DEVICE_ID_SI_5598 0x5598 77 #endif 78 79 static int blacklist[] = { 80 PCI_DEVICE_ID_SI_540, 81 PCI_DEVICE_ID_SI_550, 82 PCI_DEVICE_ID_SI_630, 83 PCI_DEVICE_ID_SI_730, 84 PCI_DEVICE_ID_SI_5511, /* 5513 chip has the 0008 device but 85 that ID shows up in other chips so we 86 use the 5511 ID for recognition */ 87 PCI_DEVICE_ID_SI_5597, 88 PCI_DEVICE_ID_SI_5598, 89 0 }; 41 90 42 91 /* Length of ISA address segment */ … … 153 202 u8 val; 154 203 struct pci_dev *SIS5595_dev; 204 int *i; 155 205 156 206 /* First check whether we can access PCI at all */ … … 167 217 printk("i2c-sis5595.o: Error: Can't detect SIS5595!\n"); 168 218 return -ENODEV; 219 } 220 221 /* Look for imposters */ 222 for(i = blacklist; *i != 0; i++) { 223 if (pci_find_device(PCI_VENDOR_ID_SI, *i, NULL)) { 224 printk("i2c-sis5595.o: Error: Looked for SIS5595 but found unsupported device %.4X\n", *i); 225 return -ENODEV; 226 } 169 227 } 170 228 -
lm-sensors/trunk/kernel/chips/sis5595.c
r1101 r1150 27 27 1 1039/0008 01 28 28 2 1039/0008 C0 29 30 Note: these chips contain a 0008 device which is incompatible with the 31 5595. We recognize these by the presence of the listed 32 "blacklist" PCI ID and refuse to load. 33 34 NOT SUPPORTED PCI ID BLACKLIST PCI ID 35 540 0008 0540 36 550 0008 0550 37 5513 0008 5511 38 5581 0008 5597 39 5582 0008 5597 40 5597 0008 5597 41 5598 0008 5597/5598 42 630 0008 0630 43 730 0008 0730 29 44 */ 30 45 … … 72 87 SENSORS_INSMOD_1(sis5595); 73 88 89 #ifndef PCI_DEVICE_ID_SI_540 90 #define PCI_DEVICE_ID_SI_540 0x0540 91 #endif 92 #ifndef PCI_DEVICE_ID_SI_550 93 #define PCI_DEVICE_ID_SI_550 0x0550 94 #endif 95 #ifndef PCI_DEVICE_ID_SI_630 96 #define PCI_DEVICE_ID_SI_630 0x0630 97 #endif 98 #ifndef PCI_DEVICE_ID_SI_730 99 #define PCI_DEVICE_ID_SI_730 0x0730 100 #endif 101 #ifndef PCI_DEVICE_ID_SI_5598 102 #define PCI_DEVICE_ID_SI_5598 0x5598 103 #endif 104 105 static int blacklist[] = { 106 PCI_DEVICE_ID_SI_540, 107 PCI_DEVICE_ID_SI_550, 108 PCI_DEVICE_ID_SI_630, 109 PCI_DEVICE_ID_SI_730, 110 PCI_DEVICE_ID_SI_5511, /* 5513 chip has the 0008 device but 111 that ID shows up in other chips so we 112 use the 5511 ID for recognition */ 113 PCI_DEVICE_ID_SI_5597, 114 PCI_DEVICE_ID_SI_5598, 115 0 }; 74 116 /* 75 117 SiS southbridge has a LM78-like chip integrated on the same IC. … … 312 354 { 313 355 u16 val; 356 int *i; 314 357 315 358 if (!pci_present()) … … 321 364 return -ENODEV; 322 365 366 /* Look for imposters */ 367 for(i = blacklist; *i != 0; i++) { 368 if (pci_find_device(PCI_VENDOR_ID_SI, *i, NULL)) { 369 printk("sis5595.o: Error: Looked for SIS5595 but found unsupported device %.4X\n", *i); 370 return -ENODEV; 371 } 372 } 323 373 324 374 if (PCIBIOS_SUCCESSFUL !=
