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_optidma.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_optidma.c')
-rw-r--r-- | drivers/ata/pata_optidma.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/ata/pata_optidma.c b/drivers/ata/pata_optidma.c index eb4b08190e3a..c376f9ef77c8 100644 --- a/drivers/ata/pata_optidma.c +++ b/drivers/ata/pata_optidma.c | |||
@@ -414,14 +414,12 @@ done_nomsg: /* Wrong chip revision */ | |||
414 | static int optidma_init_one(struct pci_dev *dev, const struct pci_device_id *id) | 414 | static int optidma_init_one(struct pci_dev *dev, const struct pci_device_id *id) |
415 | { | 415 | { |
416 | static const struct ata_port_info info_82c700 = { | 416 | static const struct ata_port_info info_82c700 = { |
417 | .sht = &optidma_sht, | ||
418 | .flags = ATA_FLAG_SLAVE_POSS, | 417 | .flags = ATA_FLAG_SLAVE_POSS, |
419 | .pio_mask = 0x1f, | 418 | .pio_mask = 0x1f, |
420 | .mwdma_mask = 0x07, | 419 | .mwdma_mask = 0x07, |
421 | .port_ops = &optidma_port_ops | 420 | .port_ops = &optidma_port_ops |
422 | }; | 421 | }; |
423 | static const struct ata_port_info info_82c700_udma = { | 422 | static const struct ata_port_info info_82c700_udma = { |
424 | .sht = &optidma_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, |
@@ -447,7 +445,7 @@ static int optidma_init_one(struct pci_dev *dev, const struct pci_device_id *id) | |||
447 | if (optiplus_with_udma(dev)) | 445 | if (optiplus_with_udma(dev)) |
448 | ppi[0] = &info_82c700_udma; | 446 | ppi[0] = &info_82c700_udma; |
449 | 447 | ||
450 | return ata_pci_init_one(dev, ppi); | 448 | return ata_pci_init_one(dev, ppi, &optidma_sht); |
451 | } | 449 | } |
452 | 450 | ||
453 | static const struct pci_device_id optidma[] = { | 451 | static const struct pci_device_id optidma[] = { |