Generic IDE support for Toshiba Piccolo PCI IDE chips (2.6)
PATCH 1/1 Generic IDE support for Toshiba Piccolo PCI IDE chips (2.6)
Adds Toshiba IDE chips to the list supported by the generic IDE driver. The 2.4 tree already contained an entry for product:0x0102, this patch adds that entry to 2.6 as well as two new ones (0x0103 and 0x0105). This then allows DMA to be enabled on disks.
For more info, see:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0401.1/0150.html
http://www.uwsg.iu.edu/hypermail/linux/kernel/0402.0/0129.html
(it appears that Ben's patch never appeared, and Jerome's got lost)
Against 2.6.6-rc2
Please apply,
Daniel
Generic IDE support for Toshiba Piccolo PCI IDE chips (2.6)
drivers/ide/pci/generic.c +3 -0
@@ -132,6 +132,9 @@ 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_VIA, PCI_DEVICE_ID_VIA_8237_SATA, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 9}, + { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 10}, + { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 11}, + { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 12}, { 0, }, };MODULE_DEVICE_TABLE (pci, generic_pci_tbl);
drivers/ide/pci/generic.h +36 -0
@@ -129,6 +129,42 @@ static ide_pci_device_t generic_chipsets .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, .bootable = OFF_BOARD, .extra = 0, + },{ /* 10 */ + .vendor = PCI_VENDOR_ID_TOSHIBA, + .device = PCI_DEVICE_ID_TOSHIBA_PICCOLO, + .name = "Piccolo0102", + .init_chipset = init_chipset_generic, + .init_iops = NULL, + .init_hwif = init_hwif_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_1, + .name = "Piccolo0103", + .init_chipset = init_chipset_generic, + .init_iops = NULL, + .init_hwif = init_hwif_generic, + .channels = 2, + .autodma = NOAUTODMA, + .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, + .bootable = ON_BOARD, + .extra = 0, + },{ /* 12 */ + .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, + .channels = 2, + .autodma = NOAUTODMA, + .enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, + .bootable = ON_BOARD, + .extra = 0, },{ .vendor = 0, .device = 0,
include/linux/pci_ids.h +3 -0
@@ -1383,6 +1383,9 @@#define PCI_DEVICE_ID_SBE_WANXL400 0x0104#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_TOPIC95_A 0x0603