diff options
author | Ben Collins <bcollins@ubuntu.com> | 2012-06-11 14:05:02 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-07-20 03:58:43 -0400 |
commit | ff08784b41e1ab5da6776411b7a8381fe942f2cc (patch) | |
tree | 0f26c0cbd909089ccca01ba3516040eb771ad552 /drivers/scsi/aacraid/nark.c | |
parent | 7e8a74b177f17d100916b6ad415450f7c9508691 (diff) |
[SCSI] aacraid: Use resource_size_t for IO mem pointers and offsets
This also stops using the "legacy crap" in Scsi_Host (shost->base is an
unsigned long).
This affected 32-bit systems that have 64-bit resource sizes, causing the
IO address to be truncated.
Signed-off-by: Ben Collins <bcollins@ubuntu.com>
Acked-by: Achim Leubner <Achim_Leubner@pmc-sierra.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/aacraid/nark.c')
-rw-r--r-- | drivers/scsi/aacraid/nark.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/aacraid/nark.c b/drivers/scsi/aacraid/nark.c index f397d21a0c06..6c53b1d8b2ba 100644 --- a/drivers/scsi/aacraid/nark.c +++ b/drivers/scsi/aacraid/nark.c | |||
@@ -49,14 +49,14 @@ static int aac_nark_ioremap(struct aac_dev * dev, u32 size) | |||
49 | dev->base = NULL; | 49 | dev->base = NULL; |
50 | return 0; | 50 | return 0; |
51 | } | 51 | } |
52 | dev->scsi_host_ptr->base = pci_resource_start(dev->pdev, 2); | 52 | dev->base_start = pci_resource_start(dev->pdev, 2); |
53 | dev->regs.rx = ioremap((u64)pci_resource_start(dev->pdev, 0) | | 53 | dev->regs.rx = ioremap((u64)pci_resource_start(dev->pdev, 0) | |
54 | ((u64)pci_resource_start(dev->pdev, 1) << 32), | 54 | ((u64)pci_resource_start(dev->pdev, 1) << 32), |
55 | sizeof(struct rx_registers) - sizeof(struct rx_inbound)); | 55 | sizeof(struct rx_registers) - sizeof(struct rx_inbound)); |
56 | dev->base = NULL; | 56 | dev->base = NULL; |
57 | if (dev->regs.rx == NULL) | 57 | if (dev->regs.rx == NULL) |
58 | return -1; | 58 | return -1; |
59 | dev->base = ioremap(dev->scsi_host_ptr->base, size); | 59 | dev->base = ioremap(dev->base_start, size); |
60 | if (dev->base == NULL) { | 60 | if (dev->base == NULL) { |
61 | iounmap(dev->regs.rx); | 61 | iounmap(dev->regs.rx); |
62 | dev->regs.rx = NULL; | 62 | dev->regs.rx = NULL; |