Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6:
via82cxxx/pata_via: correct PCI_DEVICE_ID_VIA_SATA_EIDE ID and add support for CX700 and 8237S
ide: unregister idepnp driver on unload
ide: add missing __init tags to IDE PCI host drivers
ia64: add pci_get_legacy_ide_irq()
ide/generic: Jmicron has its own drivers now
atiixp.c: add cable detection support for ATI IDE
atiixp.c: sb600 ide only has one channel
atiixp.c: remove unused code
jmicron: fix warning
ide: update MAINTAINERS entry

+71 -90
+3 -4
MAINTAINERS
··· 1598 W: http://www.developer.ibm.com/welcome/netfinity/serveraid.html 1599 S: Supported 1600 1601 - IDE DRIVER [GENERAL] 1602 P: Bartlomiej Zolnierkiewicz 1603 - M: B.Zolnierkiewicz@elka.pw.edu.pl 1604 - L: linux-kernel@vger.kernel.org 1605 L: linux-ide@vger.kernel.org 1606 - T: git kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6.git 1607 S: Maintained 1608 1609 IDE/ATAPI CDROM DRIVER
··· 1598 W: http://www.developer.ibm.com/welcome/netfinity/serveraid.html 1599 S: Supported 1600 1601 + IDE SUBSYSTEM 1602 P: Bartlomiej Zolnierkiewicz 1603 + M: bzolnier@gmail.com 1604 L: linux-ide@vger.kernel.org 1605 + T: quilt kernel.org/pub/linux/kernel/people/bart/pata-2.6/ 1606 S: Maintained 1607 1608 IDE/ATAPI CDROM DRIVER
+1
drivers/ata/pata_via.c
··· 95 u8 rev_max; 96 u16 flags; 97 } via_isa_bridges[] = { 98 { "vt8251", PCI_DEVICE_ID_VIA_8251, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 99 { "cx700", PCI_DEVICE_ID_VIA_CX700, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 100 { "vt6410", PCI_DEVICE_ID_VIA_6410, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST | VIA_NO_ENABLES},
··· 95 u8 rev_max; 96 u16 flags; 97 } via_isa_bridges[] = { 98 + { "vt8237s", PCI_DEVICE_ID_VIA_8237S, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 99 { "vt8251", PCI_DEVICE_ID_VIA_8251, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 100 { "cx700", PCI_DEVICE_ID_VIA_CX700, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 101 { "vt6410", PCI_DEVICE_ID_VIA_6410, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST | VIA_NO_ENABLES},
+5
drivers/ide/ide-pnp.c
··· 73 { 74 pnp_register_driver(&idepnp_driver); 75 }
··· 73 { 74 pnp_register_driver(&idepnp_driver); 75 } 76 + 77 + void __exit pnpide_exit(void) 78 + { 79 + pnp_unregister_driver(&idepnp_driver); 80 + }
+5
drivers/ide/ide.c
··· 1782 } 1783 1784 extern void pnpide_init(void); 1785 extern void h8300_ide_init(void); 1786 1787 /* ··· 2094 2095 for (index = 0; index < MAX_HWIFS; ++index) 2096 ide_unregister(index); 2097 2098 #ifdef CONFIG_PROC_FS 2099 proc_ide_destroy();
··· 1782 } 1783 1784 extern void pnpide_init(void); 1785 + extern void pnpide_exit(void); 1786 extern void h8300_ide_init(void); 1787 1788 /* ··· 2093 2094 for (index = 0; index < MAX_HWIFS; ++index) 2095 ide_unregister(index); 2096 + 2097 + #ifdef CONFIG_BLK_DEV_IDEPNP 2098 + pnpide_exit(); 2099 + #endif 2100 2101 #ifdef CONFIG_PROC_FS 2102 proc_ide_destroy();
+1 -1
drivers/ide/pci/aec62xx.c
··· 441 .probe = aec62xx_init_one, 442 }; 443 444 - static int aec62xx_ide_init(void) 445 { 446 return ide_pci_register_driver(&driver); 447 }
··· 441 .probe = aec62xx_init_one, 442 }; 443 444 + static int __init aec62xx_ide_init(void) 445 { 446 return ide_pci_register_driver(&driver); 447 }
+1 -1
drivers/ide/pci/alim15x3.c
··· 907 .probe = alim15x3_init_one, 908 }; 909 910 - static int ali15x3_ide_init(void) 911 { 912 return ide_pci_register_driver(&driver); 913 }
··· 907 .probe = alim15x3_init_one, 908 }; 909 910 + static int __init ali15x3_ide_init(void) 911 { 912 return ide_pci_register_driver(&driver); 913 }
+1 -1
drivers/ide/pci/amd74xx.c
··· 544 .probe = amd74xx_probe, 545 }; 546 547 - static int amd74xx_ide_init(void) 548 { 549 return ide_pci_register_driver(&driver); 550 }
··· 544 .probe = amd74xx_probe, 545 }; 546 547 + static int __init amd74xx_ide_init(void) 548 { 549 return ide_pci_register_driver(&driver); 550 }
+19 -23
drivers/ide/pci/atiixp.c
··· 291 292 static void __devinit init_hwif_atiixp(ide_hwif_t *hwif) 293 { 294 if (!hwif->irq) 295 - hwif->irq = hwif->channel ? 15 : 14; 296 297 hwif->autodma = 0; 298 hwif->tuneproc = &atiixp_tuneproc; ··· 312 hwif->mwdma_mask = 0x06; 313 hwif->swdma_mask = 0x04; 314 315 - /* FIXME: proper cable detection needed */ 316 - hwif->udma_four = 1; 317 hwif->ide_dma_host_on = &atiixp_ide_dma_host_on; 318 hwif->ide_dma_host_off = &atiixp_ide_dma_host_off; 319 hwif->ide_dma_check = &atiixp_dma_check; ··· 328 hwif->drives[0].autodma = hwif->autodma; 329 } 330 331 - static void __devinit init_hwif_sb600_legacy(ide_hwif_t *hwif) 332 - { 333 - 334 - hwif->atapi_dma = 1; 335 - hwif->ultra_mask = 0x7f; 336 - hwif->mwdma_mask = 0x07; 337 - hwif->swdma_mask = 0x07; 338 - 339 - if (!noautodma) 340 - hwif->autodma = 1; 341 - hwif->drives[0].autodma = hwif->autodma; 342 - hwif->drives[1].autodma = hwif->autodma; 343 - } 344 345 static ide_pci_device_t atiixp_pci_info[] __devinitdata = { 346 { /* 0 */ ··· 338 .enablebits = {{0x48,0x01,0x00}, {0x48,0x08,0x00}}, 339 .bootable = ON_BOARD, 340 },{ /* 1 */ 341 - .name = "ATI SB600 SATA Legacy IDE", 342 - .init_hwif = init_hwif_sb600_legacy, 343 - .channels = 2, 344 .autodma = AUTODMA, 345 - .bootable = ON_BOARD, 346 - } 347 }; 348 349 /** ··· 365 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP200_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 366 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 367 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 368 - { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 369 { 0, }, 370 }; 371 MODULE_DEVICE_TABLE(pci, atiixp_pci_tbl); ··· 376 .probe = atiixp_init_one, 377 }; 378 379 - static int atiixp_ide_init(void) 380 { 381 return ide_pci_register_driver(&driver); 382 }
··· 291 292 static void __devinit init_hwif_atiixp(ide_hwif_t *hwif) 293 { 294 + u8 udma_mode = 0; 295 + u8 ch = hwif->channel; 296 + struct pci_dev *pdev = hwif->pci_dev; 297 + 298 if (!hwif->irq) 299 + hwif->irq = ch ? 15 : 14; 300 301 hwif->autodma = 0; 302 hwif->tuneproc = &atiixp_tuneproc; ··· 308 hwif->mwdma_mask = 0x06; 309 hwif->swdma_mask = 0x04; 310 311 + pci_read_config_byte(pdev, ATIIXP_IDE_UDMA_MODE + ch, &udma_mode); 312 + if ((udma_mode & 0x07) >= 0x04 || (udma_mode & 0x70) >= 0x40) 313 + hwif->udma_four = 1; 314 + else 315 + hwif->udma_four = 0; 316 + 317 hwif->ide_dma_host_on = &atiixp_ide_dma_host_on; 318 hwif->ide_dma_host_off = &atiixp_ide_dma_host_off; 319 hwif->ide_dma_check = &atiixp_dma_check; ··· 320 hwif->drives[0].autodma = hwif->autodma; 321 } 322 323 324 static ide_pci_device_t atiixp_pci_info[] __devinitdata = { 325 { /* 0 */ ··· 343 .enablebits = {{0x48,0x01,0x00}, {0x48,0x08,0x00}}, 344 .bootable = ON_BOARD, 345 },{ /* 1 */ 346 + .name = "SB600_PATA", 347 + .init_hwif = init_hwif_atiixp, 348 + .channels = 1, 349 .autodma = AUTODMA, 350 + .enablebits = {{0x48,0x01,0x00}, {0x00,0x00,0x00}}, 351 + .bootable = ON_BOARD, 352 + }, 353 }; 354 355 /** ··· 369 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP200_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 370 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 371 { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 372 + { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1}, 373 { 0, }, 374 }; 375 MODULE_DEVICE_TABLE(pci, atiixp_pci_tbl); ··· 380 .probe = atiixp_init_one, 381 }; 382 383 + static int __init atiixp_ide_init(void) 384 { 385 return ide_pci_register_driver(&driver); 386 }
+1 -1
drivers/ide/pci/cmd64x.c
··· 793 .probe = cmd64x_init_one, 794 }; 795 796 - static int cmd64x_ide_init(void) 797 { 798 return ide_pci_register_driver(&driver); 799 }
··· 793 .probe = cmd64x_init_one, 794 }; 795 796 + static int __init cmd64x_ide_init(void) 797 { 798 return ide_pci_register_driver(&driver); 799 }
+1 -1
drivers/ide/pci/cs5520.c
··· 260 .probe = cs5520_init_one, 261 }; 262 263 - static int cs5520_ide_init(void) 264 { 265 return ide_pci_register_driver(&driver); 266 }
··· 260 .probe = cs5520_init_one, 261 }; 262 263 + static int __init cs5520_ide_init(void) 264 { 265 return ide_pci_register_driver(&driver); 266 }
+1 -1
drivers/ide/pci/cs5530.c
··· 374 .probe = cs5530_init_one, 375 }; 376 377 - static int cs5530_ide_init(void) 378 { 379 return ide_pci_register_driver(&driver); 380 }
··· 374 .probe = cs5530_init_one, 375 }; 376 377 + static int __init cs5530_ide_init(void) 378 { 379 return ide_pci_register_driver(&driver); 380 }
+1 -1
drivers/ide/pci/cy82c693.c
··· 519 .probe = cy82c693_init_one, 520 }; 521 522 - static int cy82c693_ide_init(void) 523 { 524 return ide_pci_register_driver(&driver); 525 }
··· 519 .probe = cy82c693_init_one, 520 }; 521 522 + static int __init cy82c693_ide_init(void) 523 { 524 return ide_pci_register_driver(&driver); 525 }
+1 -36
drivers/ide/pci/generic.c
··· 185 .channels = 2, 186 .autodma = AUTODMA, 187 .bootable = OFF_BOARD, 188 - },{ /* 15 */ 189 - .name = "JMB361", 190 - .init_hwif = init_hwif_generic, 191 - .channels = 2, 192 - .autodma = AUTODMA, 193 - .bootable = OFF_BOARD, 194 - },{ /* 16 */ 195 - .name = "JMB363", 196 - .init_hwif = init_hwif_generic, 197 - .channels = 2, 198 - .autodma = AUTODMA, 199 - .bootable = OFF_BOARD, 200 - },{ /* 17 */ 201 - .name = "JMB365", 202 - .init_hwif = init_hwif_generic, 203 - .channels = 2, 204 - .autodma = AUTODMA, 205 - .bootable = OFF_BOARD, 206 - },{ /* 18 */ 207 - .name = "JMB366", 208 - .init_hwif = init_hwif_generic, 209 - .channels = 2, 210 - .autodma = AUTODMA, 211 - .bootable = OFF_BOARD, 212 - },{ /* 19 */ 213 - .name = "JMB368", 214 - .init_hwif = init_hwif_generic, 215 - .channels = 2, 216 - .autodma = AUTODMA, 217 - .bootable = OFF_BOARD, 218 } 219 }; 220 ··· 251 { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 12}, 252 { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 13}, 253 { PCI_VENDOR_ID_NETCELL,PCI_DEVICE_ID_REVOLUTION, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 14}, 254 - { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 15}, 255 - { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB363, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 16}, 256 - { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB365, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 17}, 257 - { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB366, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 18}, 258 - { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB368, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 19}, 259 /* Must come last. If you add entries adjust this table appropriately and the init_one code */ 260 { PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_STORAGE_IDE << 8, 0xFFFFFF00UL, 0}, 261 { 0, }, ··· 263 .probe = generic_init_one, 264 }; 265 266 - static int generic_ide_init(void) 267 { 268 return ide_pci_register_driver(&driver); 269 }
··· 185 .channels = 2, 186 .autodma = AUTODMA, 187 .bootable = OFF_BOARD, 188 } 189 }; 190 ··· 281 { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 12}, 282 { PCI_VENDOR_ID_TOSHIBA,PCI_DEVICE_ID_TOSHIBA_PICCOLO_2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 13}, 283 { PCI_VENDOR_ID_NETCELL,PCI_DEVICE_ID_REVOLUTION, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 14}, 284 /* Must come last. If you add entries adjust this table appropriately and the init_one code */ 285 { PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_STORAGE_IDE << 8, 0xFFFFFF00UL, 0}, 286 { 0, }, ··· 298 .probe = generic_init_one, 299 }; 300 301 + static int __init generic_ide_init(void) 302 { 303 return ide_pci_register_driver(&driver); 304 }
+1 -1
drivers/ide/pci/hpt34x.c
··· 265 .probe = hpt34x_init_one, 266 }; 267 268 - static int hpt34x_ide_init(void) 269 { 270 return ide_pci_register_driver(&driver); 271 }
··· 265 .probe = hpt34x_init_one, 266 }; 267 268 + static int __init hpt34x_ide_init(void) 269 { 270 return ide_pci_register_driver(&driver); 271 }
+1 -1
drivers/ide/pci/hpt366.c
··· 1613 .probe = hpt366_init_one, 1614 }; 1615 1616 - static int hpt366_ide_init(void) 1617 { 1618 return ide_pci_register_driver(&driver); 1619 }
··· 1613 .probe = hpt366_init_one, 1614 }; 1615 1616 + static int __init hpt366_ide_init(void) 1617 { 1618 return ide_pci_register_driver(&driver); 1619 }
+2 -1
drivers/ide/pci/jmicron.c
··· 93 return 0; 94 return 1; 95 case PORT_SATA: 96 - return 1; 97 } 98 } 99 100 static void jmicron_tuneproc (ide_drive_t *drive, byte mode_wanted)
··· 93 return 0; 94 return 1; 95 case PORT_SATA: 96 + break; 97 } 98 + return 1; /* Avoid bogus "control reaches end of non-void function" */ 99 } 100 101 static void jmicron_tuneproc (ide_drive_t *drive, byte mode_wanted)
+1 -1
drivers/ide/pci/ns87415.c
··· 302 .probe = ns87415_init_one, 303 }; 304 305 - static int ns87415_ide_init(void) 306 { 307 return ide_pci_register_driver(&driver); 308 }
··· 302 .probe = ns87415_init_one, 303 }; 304 305 + static int __init ns87415_ide_init(void) 306 { 307 return ide_pci_register_driver(&driver); 308 }
+1 -1
drivers/ide/pci/opti621.c
··· 382 .probe = opti621_init_one, 383 }; 384 385 - static int opti621_ide_init(void) 386 { 387 return ide_pci_register_driver(&driver); 388 }
··· 382 .probe = opti621_init_one, 383 }; 384 385 + static int __init opti621_ide_init(void) 386 { 387 return ide_pci_register_driver(&driver); 388 }
+1 -1
drivers/ide/pci/pdc202xx_new.c
··· 756 .probe = pdc202new_init_one, 757 }; 758 759 - static int pdc202new_ide_init(void) 760 { 761 return ide_pci_register_driver(&driver); 762 }
··· 756 .probe = pdc202new_init_one, 757 }; 758 759 + static int __init pdc202new_ide_init(void) 760 { 761 return ide_pci_register_driver(&driver); 762 }
+1 -1
drivers/ide/pci/pdc202xx_old.c
··· 719 .probe = pdc202xx_init_one, 720 }; 721 722 - static int pdc202xx_ide_init(void) 723 { 724 return ide_pci_register_driver(&driver); 725 }
··· 719 .probe = pdc202xx_init_one, 720 }; 721 722 + static int __init pdc202xx_ide_init(void) 723 { 724 return ide_pci_register_driver(&driver); 725 }
+1 -1
drivers/ide/pci/rz1000.c
··· 77 .probe = rz1000_init_one, 78 }; 79 80 - static int rz1000_ide_init(void) 81 { 82 return ide_pci_register_driver(&driver); 83 }
··· 77 .probe = rz1000_init_one, 78 }; 79 80 + static int __init rz1000_ide_init(void) 81 { 82 return ide_pci_register_driver(&driver); 83 }
+1 -1
drivers/ide/pci/sc1200.c
··· 507 #endif 508 }; 509 510 - static int sc1200_ide_init(void) 511 { 512 return ide_pci_register_driver(&driver); 513 }
··· 507 #endif 508 }; 509 510 + static int __init sc1200_ide_init(void) 511 { 512 return ide_pci_register_driver(&driver); 513 }
+1 -1
drivers/ide/pci/serverworks.c
··· 666 .probe = svwks_init_one, 667 }; 668 669 - static int svwks_ide_init(void) 670 { 671 return ide_pci_register_driver(&driver); 672 }
··· 666 .probe = svwks_init_one, 667 }; 668 669 + static int __init svwks_ide_init(void) 670 { 671 return ide_pci_register_driver(&driver); 672 }
+1 -2
drivers/ide/pci/sgiioc4.c
··· 762 /* .is_remove = ioc4_ide_remove_one, */ 763 }; 764 765 - static int __devinit 766 - ioc4_ide_init(void) 767 { 768 return ioc4_register_submodule(&ioc4_ide_submodule); 769 }
··· 762 /* .is_remove = ioc4_ide_remove_one, */ 763 }; 764 765 + static int __init ioc4_ide_init(void) 766 { 767 return ioc4_register_submodule(&ioc4_ide_submodule); 768 }
+1 -1
drivers/ide/pci/siimage.c
··· 1096 .probe = siimage_init_one, 1097 }; 1098 1099 - static int siimage_ide_init(void) 1100 { 1101 return ide_pci_register_driver(&driver); 1102 }
··· 1096 .probe = siimage_init_one, 1097 }; 1098 1099 + static int __init siimage_ide_init(void) 1100 { 1101 return ide_pci_register_driver(&driver); 1102 }
+1 -1
drivers/ide/pci/sis5513.c
··· 968 .probe = sis5513_init_one, 969 }; 970 971 - static int sis5513_ide_init(void) 972 { 973 return ide_pci_register_driver(&driver); 974 }
··· 968 .probe = sis5513_init_one, 969 }; 970 971 + static int __init sis5513_ide_init(void) 972 { 973 return ide_pci_register_driver(&driver); 974 }
+1 -1
drivers/ide/pci/sl82c105.c
··· 492 .probe = sl82c105_init_one, 493 }; 494 495 - static int sl82c105_ide_init(void) 496 { 497 return ide_pci_register_driver(&driver); 498 }
··· 492 .probe = sl82c105_init_one, 493 }; 494 495 + static int __init sl82c105_ide_init(void) 496 { 497 return ide_pci_register_driver(&driver); 498 }
+1 -1
drivers/ide/pci/slc90e66.c
··· 253 .probe = slc90e66_init_one, 254 }; 255 256 - static int slc90e66_ide_init(void) 257 { 258 return ide_pci_register_driver(&driver); 259 }
··· 253 .probe = slc90e66_init_one, 254 }; 255 256 + static int __init slc90e66_ide_init(void) 257 { 258 return ide_pci_register_driver(&driver); 259 }
+1 -1
drivers/ide/pci/triflex.c
··· 173 .probe = triflex_init_one, 174 }; 175 176 - static int triflex_ide_init(void) 177 { 178 return ide_pci_register_driver(&driver); 179 }
··· 173 .probe = triflex_init_one, 174 }; 175 176 + static int __init triflex_ide_init(void) 177 { 178 return ide_pci_register_driver(&driver); 179 }
+1 -1
drivers/ide/pci/trm290.c
··· 355 .probe = trm290_init_one, 356 }; 357 358 - static int trm290_ide_init(void) 359 { 360 return ide_pci_register_driver(&driver); 361 }
··· 355 .probe = trm290_init_one, 356 }; 357 358 + static int __init trm290_ide_init(void) 359 { 360 return ide_pci_register_driver(&driver); 361 }
+4 -1
drivers/ide/pci/via82cxxx.c
··· 78 u8 rev_max; 79 u16 flags; 80 } via_isa_bridges[] = { 81 { "vt6410", PCI_DEVICE_ID_VIA_6410, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 82 { "vt8251", PCI_DEVICE_ID_VIA_8251, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 83 { "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, ··· 506 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 507 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 508 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_6410, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1}, 509 { 0, }, 510 }; 511 MODULE_DEVICE_TABLE(pci, via_pci_tbl); ··· 517 .probe = via_init_one, 518 }; 519 520 - static int via_ide_init(void) 521 { 522 return ide_pci_register_driver(&driver); 523 }
··· 78 u8 rev_max; 79 u16 flags; 80 } via_isa_bridges[] = { 81 + { "cx7000", PCI_DEVICE_ID_VIA_CX700, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 82 + { "vt8237s", PCI_DEVICE_ID_VIA_8237S, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 83 { "vt6410", PCI_DEVICE_ID_VIA_6410, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 84 { "vt8251", PCI_DEVICE_ID_VIA_8251, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, 85 { "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, ··· 504 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 505 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, 506 { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_6410, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1}, 507 + { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_SATA_EIDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1}, 508 { 0, }, 509 }; 510 MODULE_DEVICE_TABLE(pci, via_pci_tbl); ··· 514 .probe = via_init_one, 515 }; 516 517 + static int __init via_ide_init(void) 518 { 519 return ide_pci_register_driver(&driver); 520 }
+6
include/asm-ia64/pci.h
··· 167 168 #define pcibios_scan_all_fns(a, b) 0 169 170 #endif /* _ASM_IA64_PCI_H */
··· 167 168 #define pcibios_scan_all_fns(a, b) 0 169 170 + #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ 171 + static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) 172 + { 173 + return channel ? 15 : 14; 174 + } 175 + 176 #endif /* _ASM_IA64_PCI_H */
+2 -1
include/linux/pci_ids.h
··· 1283 #define PCI_DEVICE_ID_VIA_82C561 0x0561 1284 #define PCI_DEVICE_ID_VIA_82C586_1 0x0571 1285 #define PCI_DEVICE_ID_VIA_82C576 0x0576 1286 - #define PCI_DEVICE_ID_VIA_SATA_EIDE 0x0581 1287 #define PCI_DEVICE_ID_VIA_82C586_0 0x0586 1288 #define PCI_DEVICE_ID_VIA_82C596 0x0596 1289 #define PCI_DEVICE_ID_VIA_82C597_0 0x0597 ··· 1325 #define PCI_DEVICE_ID_VIA_8237 0x3227 1326 #define PCI_DEVICE_ID_VIA_8251 0x3287 1327 #define PCI_DEVICE_ID_VIA_8237A 0x3337 1328 #define PCI_DEVICE_ID_VIA_8231 0x8231 1329 #define PCI_DEVICE_ID_VIA_8231_4 0x8235 1330 #define PCI_DEVICE_ID_VIA_8365_1 0x8305
··· 1283 #define PCI_DEVICE_ID_VIA_82C561 0x0561 1284 #define PCI_DEVICE_ID_VIA_82C586_1 0x0571 1285 #define PCI_DEVICE_ID_VIA_82C576 0x0576 1286 #define PCI_DEVICE_ID_VIA_82C586_0 0x0586 1287 #define PCI_DEVICE_ID_VIA_82C596 0x0596 1288 #define PCI_DEVICE_ID_VIA_82C597_0 0x0597 ··· 1326 #define PCI_DEVICE_ID_VIA_8237 0x3227 1327 #define PCI_DEVICE_ID_VIA_8251 0x3287 1328 #define PCI_DEVICE_ID_VIA_8237A 0x3337 1329 + #define PCI_DEVICE_ID_VIA_8237S 0x3372 1330 + #define PCI_DEVICE_ID_VIA_SATA_EIDE 0x5324 1331 #define PCI_DEVICE_ID_VIA_8231 0x8231 1332 #define PCI_DEVICE_ID_VIA_8231_4 0x8235 1333 #define PCI_DEVICE_ID_VIA_8365_1 0x8305