pata_isapnp: Don't use invalid I/O ports
authorOndrej Zary <linux@rainbow-software.org>
Thu, 12 Sep 2013 21:01:29 +0000 (23:01 +0200)
committerTejun Heo <tj@kernel.org>
Mon, 7 Oct 2013 19:17:32 +0000 (15:17 -0400)
The test for 2nd I/O port validity is broken (reversed): On devices
with no control port, the driver attempts to use invalid port 0,
resulting in logs full of bad_io_access errors.  On devices with
control port, the driver does not use it.

Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/pata_isapnp.c

index 4bceb88..b33d1f9 100644 (file)
@@ -78,7 +78,7 @@ static int isapnp_init_one(struct pnp_dev *idev, const struct pnp_device_id *dev
 
        ap->ioaddr.cmd_addr = cmd_addr;
 
-       if (pnp_port_valid(idev, 1) == 0) {
+       if (pnp_port_valid(idev, 1)) {
                ctl_addr = devm_ioport_map(&idev->dev,
                                           pnp_port_start(idev, 1), 1);
                ap->ioaddr.altstatus_addr = ctl_addr;