aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aacraid/src.c
diff options
context:
space:
mode:
authorBen Collins <bcollins@ubuntu.com>2012-06-11 14:05:02 -0400
committerJames Bottomley <JBottomley@Parallels.com>2012-07-20 03:58:43 -0400
commitff08784b41e1ab5da6776411b7a8381fe942f2cc (patch)
tree0f26c0cbd909089ccca01ba3516040eb771ad552 /drivers/scsi/aacraid/src.c
parent7e8a74b177f17d100916b6ad415450f7c9508691 (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/src.c')
-rw-r--r--drivers/scsi/aacraid/src.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/scsi/aacraid/src.c b/drivers/scsi/aacraid/src.c
index 762820636304..27a3e77de17f 100644
--- a/drivers/scsi/aacraid/src.c
+++ b/drivers/scsi/aacraid/src.c
@@ -435,8 +435,7 @@ static int aac_src_ioremap(struct aac_dev *dev, u32 size)
435 dev->base = NULL; 435 dev->base = NULL;
436 if (dev->regs.src.bar1 == NULL) 436 if (dev->regs.src.bar1 == NULL)
437 return -1; 437 return -1;
438 dev->base = dev->regs.src.bar0 = ioremap(dev->scsi_host_ptr->base, 438 dev->base = dev->regs.src.bar0 = ioremap(dev->base_start, size);
439 size);
440 if (dev->base == NULL) { 439 if (dev->base == NULL) {
441 iounmap(dev->regs.src.bar1); 440 iounmap(dev->regs.src.bar1);
442 dev->regs.src.bar1 = NULL; 441 dev->regs.src.bar1 = NULL;
@@ -459,7 +458,7 @@ static int aac_srcv_ioremap(struct aac_dev *dev, u32 size)
459 dev->base = dev->regs.src.bar0 = NULL; 458 dev->base = dev->regs.src.bar0 = NULL;
460 return 0; 459 return 0;
461 } 460 }
462 dev->base = dev->regs.src.bar0 = ioremap(dev->scsi_host_ptr->base, size); 461 dev->base = dev->regs.src.bar0 = ioremap(dev->base_start, size);
463 if (dev->base == NULL) 462 if (dev->base == NULL)
464 return -1; 463 return -1;
465 dev->IndexRegs = &((struct src_registers __iomem *) 464 dev->IndexRegs = &((struct src_registers __iomem *)
@@ -764,7 +763,7 @@ int aac_srcv_init(struct aac_dev *dev)
764 name, instance); 763 name, instance);
765 goto error_iounmap; 764 goto error_iounmap;
766 } 765 }
767 dev->dbg_base = dev->scsi_host_ptr->base; 766 dev->dbg_base = dev->base_start;
768 dev->dbg_base_mapped = dev->base; 767 dev->dbg_base_mapped = dev->base;
769 dev->dbg_size = dev->base_size; 768 dev->dbg_size = dev->base_size;
770 769