diff options
author | Tejun Heo <htejun@gmail.com> | 2008-03-24 23:22:49 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-04-17 15:44:17 -0400 |
commit | 1bd5b715a305f6f13455e89becbd839010dd14b5 (patch) | |
tree | 22e74b38495c51cda92145b7ae31f504f80d9fd3 /drivers/ata/pata_amd.c | |
parent | 029cfd6b74fc5c517865fad78cf4a3ea8d9b664a (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_amd.c')
-rw-r--r-- | drivers/ata/pata_amd.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/ata/pata_amd.c b/drivers/ata/pata_amd.c index b0cb4eaf273c..644702cac6ee 100644 --- a/drivers/ata/pata_amd.c +++ b/drivers/ata/pata_amd.c | |||
@@ -413,7 +413,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
413 | { | 413 | { |
414 | static const struct ata_port_info info[10] = { | 414 | static const struct ata_port_info info[10] = { |
415 | { /* 0: AMD 7401 */ | 415 | { /* 0: AMD 7401 */ |
416 | .sht = &amd_sht, | ||
417 | .flags = ATA_FLAG_SLAVE_POSS, | 416 | .flags = ATA_FLAG_SLAVE_POSS, |
418 | .pio_mask = 0x1f, | 417 | .pio_mask = 0x1f, |
419 | .mwdma_mask = 0x07, /* No SWDMA */ | 418 | .mwdma_mask = 0x07, /* No SWDMA */ |
@@ -421,7 +420,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
421 | .port_ops = &amd33_port_ops | 420 | .port_ops = &amd33_port_ops |
422 | }, | 421 | }, |
423 | { /* 1: Early AMD7409 - no swdma */ | 422 | { /* 1: Early AMD7409 - no swdma */ |
424 | .sht = &amd_sht, | ||
425 | .flags = ATA_FLAG_SLAVE_POSS, | 423 | .flags = ATA_FLAG_SLAVE_POSS, |
426 | .pio_mask = 0x1f, | 424 | .pio_mask = 0x1f, |
427 | .mwdma_mask = 0x07, | 425 | .mwdma_mask = 0x07, |
@@ -429,7 +427,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
429 | .port_ops = &amd66_port_ops | 427 | .port_ops = &amd66_port_ops |
430 | }, | 428 | }, |
431 | { /* 2: AMD 7409, no swdma errata */ | 429 | { /* 2: AMD 7409, no swdma errata */ |
432 | .sht = &amd_sht, | ||
433 | .flags = ATA_FLAG_SLAVE_POSS, | 430 | .flags = ATA_FLAG_SLAVE_POSS, |
434 | .pio_mask = 0x1f, | 431 | .pio_mask = 0x1f, |
435 | .mwdma_mask = 0x07, | 432 | .mwdma_mask = 0x07, |
@@ -437,7 +434,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
437 | .port_ops = &amd66_port_ops | 434 | .port_ops = &amd66_port_ops |
438 | }, | 435 | }, |
439 | { /* 3: AMD 7411 */ | 436 | { /* 3: AMD 7411 */ |
440 | .sht = &amd_sht, | ||
441 | .flags = ATA_FLAG_SLAVE_POSS, | 437 | .flags = ATA_FLAG_SLAVE_POSS, |
442 | .pio_mask = 0x1f, | 438 | .pio_mask = 0x1f, |
443 | .mwdma_mask = 0x07, | 439 | .mwdma_mask = 0x07, |
@@ -445,7 +441,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
445 | .port_ops = &amd100_port_ops | 441 | .port_ops = &amd100_port_ops |
446 | }, | 442 | }, |
447 | { /* 4: AMD 7441 */ | 443 | { /* 4: AMD 7441 */ |
448 | .sht = &amd_sht, | ||
449 | .flags = ATA_FLAG_SLAVE_POSS, | 444 | .flags = ATA_FLAG_SLAVE_POSS, |
450 | .pio_mask = 0x1f, | 445 | .pio_mask = 0x1f, |
451 | .mwdma_mask = 0x07, | 446 | .mwdma_mask = 0x07, |
@@ -453,7 +448,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
453 | .port_ops = &amd100_port_ops | 448 | .port_ops = &amd100_port_ops |
454 | }, | 449 | }, |
455 | { /* 5: AMD 8111*/ | 450 | { /* 5: AMD 8111*/ |
456 | .sht = &amd_sht, | ||
457 | .flags = ATA_FLAG_SLAVE_POSS, | 451 | .flags = ATA_FLAG_SLAVE_POSS, |
458 | .pio_mask = 0x1f, | 452 | .pio_mask = 0x1f, |
459 | .mwdma_mask = 0x07, | 453 | .mwdma_mask = 0x07, |
@@ -461,7 +455,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
461 | .port_ops = &amd133_port_ops | 455 | .port_ops = &amd133_port_ops |
462 | }, | 456 | }, |
463 | { /* 6: AMD 8111 UDMA 100 (Serenade) */ | 457 | { /* 6: AMD 8111 UDMA 100 (Serenade) */ |
464 | .sht = &amd_sht, | ||
465 | .flags = ATA_FLAG_SLAVE_POSS, | 458 | .flags = ATA_FLAG_SLAVE_POSS, |
466 | .pio_mask = 0x1f, | 459 | .pio_mask = 0x1f, |
467 | .mwdma_mask = 0x07, | 460 | .mwdma_mask = 0x07, |
@@ -469,7 +462,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
469 | .port_ops = &amd133_port_ops | 462 | .port_ops = &amd133_port_ops |
470 | }, | 463 | }, |
471 | { /* 7: Nvidia Nforce */ | 464 | { /* 7: Nvidia Nforce */ |
472 | .sht = &amd_sht, | ||
473 | .flags = ATA_FLAG_SLAVE_POSS, | 465 | .flags = ATA_FLAG_SLAVE_POSS, |
474 | .pio_mask = 0x1f, | 466 | .pio_mask = 0x1f, |
475 | .mwdma_mask = 0x07, | 467 | .mwdma_mask = 0x07, |
@@ -477,7 +469,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
477 | .port_ops = &nv100_port_ops | 469 | .port_ops = &nv100_port_ops |
478 | }, | 470 | }, |
479 | { /* 8: Nvidia Nforce2 and later */ | 471 | { /* 8: Nvidia Nforce2 and later */ |
480 | .sht = &amd_sht, | ||
481 | .flags = ATA_FLAG_SLAVE_POSS, | 472 | .flags = ATA_FLAG_SLAVE_POSS, |
482 | .pio_mask = 0x1f, | 473 | .pio_mask = 0x1f, |
483 | .mwdma_mask = 0x07, | 474 | .mwdma_mask = 0x07, |
@@ -485,7 +476,6 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
485 | .port_ops = &nv133_port_ops | 476 | .port_ops = &nv133_port_ops |
486 | }, | 477 | }, |
487 | { /* 9: AMD CS5536 (Geode companion) */ | 478 | { /* 9: AMD CS5536 (Geode companion) */ |
488 | .sht = &amd_sht, | ||
489 | .flags = ATA_FLAG_SLAVE_POSS, | 479 | .flags = ATA_FLAG_SLAVE_POSS, |
490 | .pio_mask = 0x1f, | 480 | .pio_mask = 0x1f, |
491 | .mwdma_mask = 0x07, | 481 | .mwdma_mask = 0x07, |
@@ -544,7 +534,7 @@ static int amd_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
544 | } | 534 | } |
545 | 535 | ||
546 | /* And fire it up */ | 536 | /* And fire it up */ |
547 | return ata_pci_init_one(pdev, ppi); | 537 | return ata_pci_init_one(pdev, ppi, &amd_sht); |
548 | } | 538 | } |
549 | 539 | ||
550 | #ifdef CONFIG_PM | 540 | #ifdef CONFIG_PM |