From: Linus Torvalds Date: Tue, 1 May 2007 00:43:48 +0000 (-0700) Subject: libata: honour host controllers that want just one host X-Git-Tag: v2.6.22-rc1~1094 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dc87c3985e9b442c60994308a96f887579addc39;p=pandora-kernel.git 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 Signed-off-by: Linus Torvalds --- Reading git-diff-tree failed