2.4.36-stable kernel tree
Revision | 3f2c97260e4987c946724bf3b8df3719043a8689 (tree) |
---|---|
Zeit | 2007-07-22 21:45:10 |
Autor | Filippo Carletti <carletti@mobi...> |
Commiter | Willy Tarreau |
[PATCH] Add some AHCI PCI IDs
This patch adds support for some chipsets in AHCI driver.
The list comes from a patch for redhat kernel 2.6.9-34.
I only tested ICH8.
Ciao,
Filippo
@@ -275,6 +275,24 @@ static const struct pci_device_id ahci_pci_tbl[] = { | ||
275 | 275 | board_ahci }, /* ESB2 */ |
276 | 276 | { PCI_VENDOR_ID_INTEL, 0x27c6, PCI_ANY_ID, PCI_ANY_ID, 0, 0, |
277 | 277 | board_ahci }, /* ICH7-M DH */ |
278 | + { PCI_VENDOR_ID_INTEL, 0x2821, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
279 | + board_ahci }, /* ICH8 */ | |
280 | + { PCI_VENDOR_ID_INTEL, 0x2822, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
281 | + board_ahci }, /* ICH8 */ | |
282 | + { PCI_VENDOR_ID_INTEL, 0x2824, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
283 | + board_ahci }, /* ICH8 */ | |
284 | + { PCI_VENDOR_ID_INTEL, 0x2829, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
285 | + board_ahci }, /* ICH8M */ | |
286 | + { PCI_VENDOR_ID_INTEL, 0x282a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
287 | + board_ahci }, /* ICH8M */ | |
288 | + { 0x197b, 0x2360, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
289 | + board_ahci }, /* JMicron JMB360 */ | |
290 | + { 0x197b, 0x2363, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
291 | + board_ahci }, /* JMicron JMB363 */ | |
292 | + { PCI_VENDOR_ID_ATI, 0x4380, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
293 | + board_ahci }, /* ATI SB600 non-raid */ | |
294 | + { PCI_VENDOR_ID_ATI, 0x4381, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | |
295 | + board_ahci }, /* ATI SB600 raid */ | |
278 | 296 | { } /* terminate list */ |
279 | 297 | }; |
280 | 298 |
@@ -1067,6 +1085,10 @@ static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent) | ||
1067 | 1085 | if (have_msi) |
1068 | 1086 | hpriv->flags |= AHCI_FLAG_MSI; |
1069 | 1087 | |
1088 | + /* JMicron-specific fixup: make sure we're in AHCI mode */ | |
1089 | + if (pdev->vendor == 0x197b) | |
1090 | + pci_write_config_byte(pdev, 0x41, 0xa1); | |
1091 | + | |
1070 | 1092 | /* initialize adapter */ |
1071 | 1093 | rc = ahci_host_init(probe_ent); |
1072 | 1094 | if (rc) |