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_it821x.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_it821x.c')
-rw-r--r-- | drivers/ata/pata_it821x.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/ata/pata_it821x.c b/drivers/ata/pata_it821x.c index 669d224d30ca..63c5cf0d1fee 100644 --- a/drivers/ata/pata_it821x.c +++ b/drivers/ata/pata_it821x.c | |||
@@ -687,14 +687,12 @@ static int it821x_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
687 | u8 conf; | 687 | u8 conf; |
688 | 688 | ||
689 | static const struct ata_port_info info_smart = { | 689 | static const struct ata_port_info info_smart = { |
690 | .sht = &it821x_sht, | ||
691 | .flags = ATA_FLAG_SLAVE_POSS, | 690 | .flags = ATA_FLAG_SLAVE_POSS, |
692 | .pio_mask = 0x1f, | 691 | .pio_mask = 0x1f, |
693 | .mwdma_mask = 0x07, | 692 | .mwdma_mask = 0x07, |
694 | .port_ops = &it821x_smart_port_ops | 693 | .port_ops = &it821x_smart_port_ops |
695 | }; | 694 | }; |
696 | static const struct ata_port_info info_passthru = { | 695 | static const struct ata_port_info info_passthru = { |
697 | .sht = &it821x_sht, | ||
698 | .flags = ATA_FLAG_SLAVE_POSS, | 696 | .flags = ATA_FLAG_SLAVE_POSS, |
699 | .pio_mask = 0x1f, | 697 | .pio_mask = 0x1f, |
700 | .mwdma_mask = 0x07, | 698 | .mwdma_mask = 0x07, |
@@ -724,7 +722,7 @@ static int it821x_init_one(struct pci_dev *pdev, const struct pci_device_id *id) | |||
724 | else | 722 | else |
725 | ppi[0] = &info_smart; | 723 | ppi[0] = &info_smart; |
726 | 724 | ||
727 | return ata_pci_init_one(pdev, ppi); | 725 | return ata_pci_init_one(pdev, ppi, &it821x_sht); |
728 | } | 726 | } |
729 | 727 | ||
730 | #ifdef CONFIG_PM | 728 | #ifdef CONFIG_PM |