aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_via.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2008-03-24 23:22:49 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-04-17 15:44:17 -0400
commit1bd5b715a305f6f13455e89becbd839010dd14b5 (patch)
tree22e74b38495c51cda92145b7ae31f504f80d9fd3 /drivers/ata/pata_via.c
parent029cfd6b74fc5c517865fad78cf4a3ea8d9b664a (diff)
libata: make ata_pci_init_one() not use ops->irq_handler and pi->sht
ata_pci_init_one() is the only function which uses ops->irq_handler and pi->sht. Other initialization functions take the same information as arguments. This causes confusion and duplicate unused entries in structures. Make ata_pci_init_one() take sht as an argument and use ata_interrupt implicitly. All current users use ata_interrupt and if different irq handler is necessary open coding ata_pci_init_one() using ata_prepare_sff_host() and ata_activate_sff_host can be done under ten lines including error handling and driver which requires custom interrupt handler is likely to require custom initialization anyway. As ata_pci_init_one() was the last user of ops->irq_handler, this patch also kills the field. Signed-off-by: Tejun Heo <htejun@gmail.com>
Diffstat (limited to 'drivers/ata/pata_via.c')
-rw-r--r--drivers/ata/pata_via.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/ata/pata_via.c b/drivers/ata/pata_via.c
index d1edb1b27480..e66bb85ad3d1 100644
--- a/drivers/ata/pata_via.c
+++ b/drivers/ata/pata_via.c
@@ -398,7 +398,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
398{ 398{
399 /* Early VIA without UDMA support */ 399 /* Early VIA without UDMA support */
400 static const struct ata_port_info via_mwdma_info = { 400 static const struct ata_port_info via_mwdma_info = {
401 .sht = &via_sht,
402 .flags = ATA_FLAG_SLAVE_POSS, 401 .flags = ATA_FLAG_SLAVE_POSS,
403 .pio_mask = 0x1f, 402 .pio_mask = 0x1f,
404 .mwdma_mask = 0x07, 403 .mwdma_mask = 0x07,
@@ -406,7 +405,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
406 }; 405 };
407 /* Ditto with IRQ masking required */ 406 /* Ditto with IRQ masking required */
408 static const struct ata_port_info via_mwdma_info_borked = { 407 static const struct ata_port_info via_mwdma_info_borked = {
409 .sht = &via_sht,
410 .flags = ATA_FLAG_SLAVE_POSS, 408 .flags = ATA_FLAG_SLAVE_POSS,
411 .pio_mask = 0x1f, 409 .pio_mask = 0x1f,
412 .mwdma_mask = 0x07, 410 .mwdma_mask = 0x07,
@@ -414,7 +412,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
414 }; 412 };
415 /* VIA UDMA 33 devices (and borked 66) */ 413 /* VIA UDMA 33 devices (and borked 66) */
416 static const struct ata_port_info via_udma33_info = { 414 static const struct ata_port_info via_udma33_info = {
417 .sht = &via_sht,
418 .flags = ATA_FLAG_SLAVE_POSS, 415 .flags = ATA_FLAG_SLAVE_POSS,
419 .pio_mask = 0x1f, 416 .pio_mask = 0x1f,
420 .mwdma_mask = 0x07, 417 .mwdma_mask = 0x07,
@@ -423,7 +420,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
423 }; 420 };
424 /* VIA UDMA 66 devices */ 421 /* VIA UDMA 66 devices */
425 static const struct ata_port_info via_udma66_info = { 422 static const struct ata_port_info via_udma66_info = {
426 .sht = &via_sht,
427 .flags = ATA_FLAG_SLAVE_POSS, 423 .flags = ATA_FLAG_SLAVE_POSS,
428 .pio_mask = 0x1f, 424 .pio_mask = 0x1f,
429 .mwdma_mask = 0x07, 425 .mwdma_mask = 0x07,
@@ -432,7 +428,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
432 }; 428 };
433 /* VIA UDMA 100 devices */ 429 /* VIA UDMA 100 devices */
434 static const struct ata_port_info via_udma100_info = { 430 static const struct ata_port_info via_udma100_info = {
435 .sht = &via_sht,
436 .flags = ATA_FLAG_SLAVE_POSS, 431 .flags = ATA_FLAG_SLAVE_POSS,
437 .pio_mask = 0x1f, 432 .pio_mask = 0x1f,
438 .mwdma_mask = 0x07, 433 .mwdma_mask = 0x07,
@@ -441,7 +436,6 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
441 }; 436 };
442 /* UDMA133 with bad AST (All current 133) */ 437 /* UDMA133 with bad AST (All current 133) */
443 static const struct ata_port_info via_udma133_info = { 438 static const struct ata_port_info via_udma133_info = {
444 .sht = &via_sht,
445 .flags = ATA_FLAG_SLAVE_POSS, 439 .flags = ATA_FLAG_SLAVE_POSS,
446 .pio_mask = 0x1f, 440 .pio_mask = 0x1f,
447 .mwdma_mask = 0x07, 441 .mwdma_mask = 0x07,
@@ -532,7 +526,7 @@ static int via_init_one(struct pci_dev *pdev, const struct pci_device_id *id)
532 /* We have established the device type, now fire it up */ 526 /* We have established the device type, now fire it up */
533 type.private_data = (void *)config; 527 type.private_data = (void *)config;
534 528
535 return ata_pci_init_one(pdev, ppi); 529 return ata_pci_init_one(pdev, ppi, &via_sht);
536} 530}
537 531
538#ifdef CONFIG_PM 532#ifdef CONFIG_PM