Generic IDE support for more Toshiba Piccolo PCI IDE chips (2.4) diff -uprN linux-2.4.27-pre1/drivers/ide/pci/generic.c linux-dsd/drivers/ide/pci/generic.c --- linux-2.4.27-pre1/drivers/ide/pci/generic.c 2003-08-25 12:44:41.000000000 +0100 +++ linux-dsd/drivers/ide/pci/generic.c 2004-04-22 16:39:11.943189096 +0100 @@ -141,6 +141,8 @@ static struct pci_device_id generic_pci_ { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C561, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 7}, { PCI_VENDOR_ID_OPTI, PCI_DEVICE_ID_OPTI_82C558, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 8}, { PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 9}, + { PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 10}, + { PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 11}, { 0, }, }; diff -uprN linux-2.4.27-pre1/drivers/ide/pci/generic.h linux-dsd/drivers/ide/pci/generic.h --- linux-2.4.27-pre1/drivers/ide/pci/generic.h 2004-04-14 14:05:29.000000000 +0100 +++ linux-dsd/drivers/ide/pci/generic.h 2004-04-22 16:42:12.813692600 +0100 @@ -130,7 +130,33 @@ static ide_pci_device_t generic_chipsets },{ /* 9 */ .vendor = PCI_VENDOR_ID_TOSHIBA, .device = PCI_DEVICE_ID_TOSHIBA_PICCOLO, - .name = "Piccolo", + .name = "Piccolo0102", + .init_chipset = init_chipset_generic, + .init_iops = NULL, + .init_hwif = init_hwif_generic, + .init_dma = init_dma_generic, + .channels = 2, + .autodma = NOAUTODMA, + .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, + .bootable = ON_BOARD, + .extra = 0, + },{ /* 10 */ + .vendor = PCI_VENDOR_ID_TOSHIBA, + .device = PCI_DEVICE_ID_TOSHIBA_PICCOLO_1, + .name = "Piccolo0103", + .init_chipset = init_chipset_generic, + .init_iops = NULL, + .init_hwif = init_hwif_generic, + .init_dma = init_dma_generic, + .channels = 2, + .autodma = NOAUTODMA, + .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, + .bootable = ON_BOARD, + .extra = 0, + },{ /* 11 */ + .vendor = PCI_VENDOR_ID_TOSHIBA, + .device = PCI_DEVICE_ID_TOSHIBA_PICCOLO_2, + .name = "Piccolo0105", .init_chipset = init_chipset_generic, .init_iops = NULL, .init_hwif = init_hwif_generic, diff -uprN linux-2.4.27-pre1/include/linux/pci_ids.h linux-dsd/include/linux/pci_ids.h --- linux-2.4.27-pre1/include/linux/pci_ids.h 2004-04-14 14:05:40.000000000 +0100 +++ linux-dsd/include/linux/pci_ids.h 2004-04-22 16:43:00.571432320 +0100 @@ -1269,6 +1269,8 @@ #define PCI_VENDOR_ID_TOSHIBA 0x1179 #define PCI_DEVICE_ID_TOSHIBA_PICCOLO 0x0102 +#define PCI_DEVICE_ID_TOSHIBA_PICCOLO_1 0x0103 +#define PCI_DEVICE_ID_TOSHIBA_PICCOLO_2 0x0105 #define PCI_DEVICE_ID_TOSHIBA_601 0x0601 #define PCI_DEVICE_ID_TOSHIBA_TOPIC95 0x060a #define PCI_DEVICE_ID_TOSHIBA_TOPIC97 0x060f