diff options
Diffstat (limited to 'drivers/ata/sata_sx4.c')
-rw-r--r-- | drivers/ata/sata_sx4.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/drivers/ata/sata_sx4.c b/drivers/ata/sata_sx4.c index b425061dbe8c..9f9f7b30654a 100644 --- a/drivers/ata/sata_sx4.c +++ b/drivers/ata/sata_sx4.c | |||
@@ -1381,9 +1381,8 @@ static int pdc_sata_init_one (struct pci_dev *pdev, const struct pci_device_id * | |||
1381 | const struct ata_port_info *ppi[] = | 1381 | const struct ata_port_info *ppi[] = |
1382 | { &pdc_port_info[ent->driver_data], NULL }; | 1382 | { &pdc_port_info[ent->driver_data], NULL }; |
1383 | struct ata_host *host; | 1383 | struct ata_host *host; |
1384 | void __iomem *base; | ||
1385 | struct pdc_host_priv *hpriv; | 1384 | struct pdc_host_priv *hpriv; |
1386 | int rc; | 1385 | int i, rc; |
1387 | 1386 | ||
1388 | if (!printed_version++) | 1387 | if (!printed_version++) |
1389 | dev_printk(KERN_DEBUG, &pdev->dev, "version " DRV_VERSION "\n"); | 1388 | dev_printk(KERN_DEBUG, &pdev->dev, "version " DRV_VERSION "\n"); |
@@ -1409,11 +1408,17 @@ static int pdc_sata_init_one (struct pci_dev *pdev, const struct pci_device_id * | |||
1409 | return rc; | 1408 | return rc; |
1410 | host->iomap = pcim_iomap_table(pdev); | 1409 | host->iomap = pcim_iomap_table(pdev); |
1411 | 1410 | ||
1412 | base = host->iomap[PDC_MMIO_BAR] + PDC_CHIP0_OFS; | 1411 | for (i = 0; i < 4; i++) { |
1413 | pdc_sata_setup_port(&host->ports[0]->ioaddr, base + 0x200); | 1412 | struct ata_port *ap = host->ports[i]; |
1414 | pdc_sata_setup_port(&host->ports[1]->ioaddr, base + 0x280); | 1413 | void __iomem *base = host->iomap[PDC_MMIO_BAR] + PDC_CHIP0_OFS; |
1415 | pdc_sata_setup_port(&host->ports[2]->ioaddr, base + 0x300); | 1414 | unsigned int offset = 0x200 + i * 0x80; |
1416 | pdc_sata_setup_port(&host->ports[3]->ioaddr, base + 0x380); | 1415 | |
1416 | pdc_sata_setup_port(&ap->ioaddr, base + offset); | ||
1417 | |||
1418 | ata_port_pbar_desc(ap, PDC_MMIO_BAR, -1, "mmio"); | ||
1419 | ata_port_pbar_desc(ap, PDC_DIMM_BAR, -1, "dimm"); | ||
1420 | ata_port_pbar_desc(ap, PDC_MMIO_BAR, offset, "port"); | ||
1421 | } | ||
1417 | 1422 | ||
1418 | /* configure and activate */ | 1423 | /* configure and activate */ |
1419 | rc = pci_set_dma_mask(pdev, ATA_DMA_MASK); | 1424 | rc = pci_set_dma_mask(pdev, ATA_DMA_MASK); |