summaryrefslogtreecommitdiff
path: root/drivers/ata/libata-scsi.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-01 04:43:48 +0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-01 04:43:48 +0400
commitdc87c3985e9b442c60994308a96f887579addc39 (patch)
tree3299ea602d673f11739b4d3656e9ab069ec7269b /drivers/ata/libata-scsi.c
parent14e38ac823b7b25e3f4e563c182f93fde78167d6 (diff)
downloadlinux-dc87c3985e9b442c60994308a96f887579addc39.tar.xz
libata: honour host controllers that want just one host
The Marvell IDE interface on my machine would hit a BUG_ON() in lib/iomem.c because it was calling ata_pci_init_one() specifying just a single port on the host, but that would actually end up trying to initialize two ports, the second one with bogus information. This fixes "ata_pci_init_one()" so that it actually passes down the n_ports variable that it got from the low-level driver to the host allocation routine ("ata_host_alloc_pinfo()"), which results in the ATA layer actually having the correct port number information. And in order to make it all work, I also needed to fix a few places that had incorrectly hard-coded the fact that a host always had exactly two ports (both ata_pci_init_bmdma() and ata_request_legacy_irqs() would just always iterate over both ports). Acked-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/ata/libata-scsi.c')
0 files changed, 0 insertions, 0 deletions