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_marvell.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_marvell.c')
-rw-r--r-- | drivers/ata/pata_marvell.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/ata/pata_marvell.c b/drivers/ata/pata_marvell.c index 286310fc5910..d8da4f344c0a 100644 --- a/drivers/ata/pata_marvell.c +++ b/drivers/ata/pata_marvell.c | |||
@@ -119,7 +119,6 @@ static struct ata_port_operations marvell_ops = { | |||
119 | static int marvell_init_one (struct pci_dev *pdev, const struct pci_device_id *id) | 119 | static int marvell_init_one (struct pci_dev *pdev, const struct pci_device_id *id) |
120 | { | 120 | { |
121 | static const struct ata_port_info info = { | 121 | static const struct ata_port_info info = { |
122 | .sht = &marvell_sht, | ||
123 | .flags = ATA_FLAG_SLAVE_POSS, | 122 | .flags = ATA_FLAG_SLAVE_POSS, |
124 | 123 | ||
125 | .pio_mask = 0x1f, | 124 | .pio_mask = 0x1f, |
@@ -129,7 +128,6 @@ static int marvell_init_one (struct pci_dev *pdev, const struct pci_device_id *i | |||
129 | .port_ops = &marvell_ops, | 128 | .port_ops = &marvell_ops, |
130 | }; | 129 | }; |
131 | static const struct ata_port_info info_sata = { | 130 | static const struct ata_port_info info_sata = { |
132 | .sht = &marvell_sht, | ||
133 | /* Slave possible as its magically mapped not real */ | 131 | /* Slave possible as its magically mapped not real */ |
134 | .flags = ATA_FLAG_SLAVE_POSS, | 132 | .flags = ATA_FLAG_SLAVE_POSS, |
135 | 133 | ||
@@ -144,7 +142,7 @@ static int marvell_init_one (struct pci_dev *pdev, const struct pci_device_id *i | |||
144 | if (pdev->device == 0x6101) | 142 | if (pdev->device == 0x6101) |
145 | ppi[1] = &ata_dummy_port_info; | 143 | ppi[1] = &ata_dummy_port_info; |
146 | 144 | ||
147 | return ata_pci_init_one(pdev, ppi); | 145 | return ata_pci_init_one(pdev, ppi, &marvell_sht); |
148 | } | 146 | } |
149 | 147 | ||
150 | static const struct pci_device_id marvell_pci_tbl[] = { | 148 | static const struct pci_device_id marvell_pci_tbl[] = { |