]> err.no Git - linux-2.6/blobdiff - drivers/ata/sata_qstor.c
libata: wrap schedule_timeout_uninterruptible() in loop
[linux-2.6] / drivers / ata / sata_qstor.c
index 10bf52ca1e194cee890dc8a001d1555571496931..c4c4cd29eebba87bfc84e8eeb9c2e20c41bc5e74 100644 (file)
@@ -635,9 +635,14 @@ static int qs_ata_init_one(struct pci_dev *pdev,
                return rc;
 
        for (port_no = 0; port_no < host->n_ports; ++port_no) {
-               void __iomem *chan =
-                       host->iomap[QS_MMIO_BAR] + (port_no * 0x4000);
-               qs_ata_setup_port(&host->ports[port_no]->ioaddr, chan);
+               struct ata_port *ap = host->ports[port_no];
+               unsigned int offset = port_no * 0x4000;
+               void __iomem *chan = host->iomap[QS_MMIO_BAR] + offset;
+
+               qs_ata_setup_port(&ap->ioaddr, chan);
+
+               ata_port_pbar_desc(ap, QS_MMIO_BAR, -1, "mmio");
+               ata_port_pbar_desc(ap, QS_MMIO_BAR, offset, "port");
        }
 
        /* initialize adapter */