Index: linux-2.6.21-rc1/drivers/ide/pci/siimage.c =================================================================== --- linux-2.6.21-rc1.orig/drivers/ide/pci/siimage.c 2007-02-26 04:43:04.000000000 +0100 +++ linux-2.6.21-rc1/drivers/ide/pci/siimage.c 2007-02-26 04:45:01.000000000 +0100 @@ -50,6 +50,7 @@ switch(pdev->device) { case PCI_DEVICE_ID_SII_3112: + case PCI_DEVICE_ID_SII_3512: case PCI_DEVICE_ID_SII_1210SA: return 1; case PCI_DEVICE_ID_SII_680: @@ -1050,7 +1051,8 @@ static ide_pci_device_t siimage_chipsets[] __devinitdata = { /* 0 */ DECLARE_SII_DEV("SiI680"), /* 1 */ DECLARE_SII_DEV("SiI3112 Serial ATA"), - /* 2 */ DECLARE_SII_DEV("Adaptec AAR-1210SA") + /* 2 */ DECLARE_SII_DEV("Adaptec AAR-1210SA"), + /* 3 */ DECLARE_SII_DEV("SiI3512 Serial ATA") }; /** @@ -1072,6 +1074,7 @@ #ifdef CONFIG_BLK_DEV_IDE_SATA { PCI_VENDOR_ID_CMD, PCI_DEVICE_ID_SII_3112, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1}, { PCI_VENDOR_ID_CMD, PCI_DEVICE_ID_SII_1210SA, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2}, + { PCI_VENDOR_ID_CMD, PCI_DEVICE_ID_SII_3512, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 3}, #endif { 0, }, }; Index: linux-2.6.21-rc1/include/linux/pci_ids.h =================================================================== --- linux-2.6.21-rc1.orig/include/linux/pci_ids.h 2007-02-26 04:43:04.000000000 +0100 +++ linux-2.6.21-rc1/include/linux/pci_ids.h 2007-02-26 04:46:14.000000000 +0100 @@ -932,6 +932,7 @@ #define PCI_DEVICE_ID_SII_680 0x0680 #define PCI_DEVICE_ID_SII_3112 0x3112 #define PCI_DEVICE_ID_SII_1210SA 0x0240 +#define PCI_DEVICE_ID_SII_3512 0x3512 #define PCI_VENDOR_ID_BROOKTREE 0x109e