History

zorro: ZTWO_VADDR() should return "void __iomem *"

ZTWO_VADDR() converts from physical to virtual I/O addresses, so it should return "void __iomem *" instead of "unsigned long". This allows to drop several casts, but requires adding a few casts to accomodate legacy driver frameworks that store "unsigned long" I/O addresses.

Geert Uytterhoeven committed 15 years ago

Commit 6112ea01 parent 83b7bce17 files · +22 −22Browse files

Unified · Split

17 files
  1. arch/m68k/amiga/chipram.c +1 −1
  2. arch/m68k/amiga/config.c +1 −1
  3. arch/m68k/include/asm/amigahw.h +1 −1
  4. drivers/block/z2ram.c +2 −2
  5. drivers/ide/buddha.c +1 −1
  6. drivers/net/ethernet/8390/hydra.c +1 −1
  7. drivers/net/ethernet/8390/zorro8390.c +2 −2
  8. drivers/net/ethernet/amd/a2065.c +2 −2
  9. drivers/net/ethernet/amd/ariadne.c +2 −2
  10. drivers/parport/parport_mfc3.c +1 −1
  11. drivers/scsi/a2091.c +1 −1
  12. drivers/scsi/a3000.c +1 −1
  13. drivers/scsi/a4000t.c +1 −1
  14. drivers/scsi/gvp11.c +1 −1
  15. drivers/scsi/zorro7xx.c +1 −1
  16. drivers/video/amifb.c +1 −1
  17. drivers/video/cirrusfb.c +2 −2
arch/m68k/amiga/chipram.c+1−1
@@ -87,7 +87,7 @@ void *amiga_chip_alloc_res(unsigned long size, struct resource *res) · 86 unmodified lines
87 87
88 atomic_sub(size, &chipavail);88 atomic_sub(size, &chipavail);
89 pr_debug("amiga_chip_alloc_res: returning %pR\n", res);89 pr_debug("amiga_chip_alloc_res: returning %pR\n", res);
90 return (void *)ZTWO_VADDR(res->start);90 return ZTWO_VADDR(res->start);
91}91}
92 92
93void amiga_chip_free(void *ptr)93void amiga_chip_free(void *ptr)
arch/m68k/amiga/config.c+1−1
@@ -618,7 +618,7 @@ static int __init amiga_savekmsg_setup(char *arg) · 617 unmodified lines
618 618
619 /* Just steal the block, the chipram allocator isn't functional yet */619 /* Just steal the block, the chipram allocator isn't functional yet */
620 amiga_chip_size -= SAVEKMSG_MAXMEM;620 amiga_chip_size -= SAVEKMSG_MAXMEM;
621 savekmsg = (void *)ZTWO_VADDR(CHIP_PHYSADDR + amiga_chip_size);621 savekmsg = ZTWO_VADDR(CHIP_PHYSADDR + amiga_chip_size);
622 savekmsg->magic1 = SAVEKMSG_MAGIC1;622 savekmsg->magic1 = SAVEKMSG_MAGIC1;
623 savekmsg->magic2 = SAVEKMSG_MAGIC2;623 savekmsg->magic2 = SAVEKMSG_MAGIC2;
624 savekmsg->magicptr = ZTWO_PADDR(savekmsg);624 savekmsg->magicptr = ZTWO_PADDR(savekmsg);
arch/m68k/include/asm/amigahw.h+1−1
@@ -266,7 +266,7 @@ struct CIA { · 265 unmodified lines
266 266
267#define zTwoBase (0x80000000)267#define zTwoBase (0x80000000)
268#define ZTWO_PADDR(x) (((unsigned long)(x))-zTwoBase)268#define ZTWO_PADDR(x) (((unsigned long)(x))-zTwoBase)
269#define ZTWO_VADDR(x) (((unsigned long)(x))+zTwoBase)269#define ZTWO_VADDR(x) ((void __iomem *)(((unsigned long)(x))+zTwoBase))
270 270
271#define CUSTOM_PHYSADDR (0xdff000)271#define CUSTOM_PHYSADDR (0xdff000)
272#define amiga_custom ((*(volatile struct CUSTOM *)(zTwoBase+CUSTOM_PHYSADDR)))272#define amiga_custom ((*(volatile struct CUSTOM *)(zTwoBase+CUSTOM_PHYSADDR)))
drivers/block/z2ram.c+2−2
@@ -116,8 +116,8 @@ get_z2ram( void ) · 115 unmodified lines
116 if ( test_bit( i, zorro_unused_z2ram ) )116 if ( test_bit( i, zorro_unused_z2ram ) )
117 {117 {
118 z2_count++;118 z2_count++;
119 z2ram_map[ z2ram_size++ ] = 119 z2ram_map[z2ram_size++] = (unsigned long)ZTWO_VADDR(Z2RAM_START) +
120 ZTWO_VADDR( Z2RAM_START ) + ( i << Z2RAM_CHUNKSHIFT );120 (i << Z2RAM_CHUNKSHIFT);
121 clear_bit( i, zorro_unused_z2ram );121 clear_bit( i, zorro_unused_z2ram );
122 }122 }
123 }123 }
drivers/ide/buddha.c+1−1
@@ -198,7 +198,7 @@ fail_base2: · 197 unmodified lines
198 continue;198 continue;
199 }199 }
200 } 200 }
201 buddha_board = ZTWO_VADDR(board);201 buddha_board = (unsigned long)ZTWO_VADDR(board);
202 202
203 /* write to BUDDHA_IRQ_MR to enable the board IRQ */203 /* write to BUDDHA_IRQ_MR to enable the board IRQ */
204 /* X-Surf doesn't have this. IRQs are always on */204 /* X-Surf doesn't have this. IRQs are always on */
drivers/net/ethernet/8390/hydra.c+1−1
@@ -113,7 +113,7 @@ static const struct net_device_ops hydra_netdev_ops = { · 112 unmodified lines
113static int hydra_init(struct zorro_dev *z)113static int hydra_init(struct zorro_dev *z)
114{114{
115 struct net_device *dev;115 struct net_device *dev;
116 unsigned long board = ZTWO_VADDR(z->resource.start);116 unsigned long board = (unsigned long)ZTWO_VADDR(z->resource.start);
117 unsigned long ioaddr = board+HYDRA_NIC_BASE;117 unsigned long ioaddr = board+HYDRA_NIC_BASE;
118 const char name[] = "NE2000";118 const char name[] = "NE2000";
119 int start_page, stop_page;119 int start_page, stop_page;
drivers/net/ethernet/8390/zorro8390.c+2−2
@@ -287,7 +287,7 @@ static const struct net_device_ops zorro8390_netdev_ops = { · 286 unmodified lines
287};287};
288 288
289static int zorro8390_init(struct net_device *dev, unsigned long board,289static int zorro8390_init(struct net_device *dev, unsigned long board,
290 const char *name, unsigned long ioaddr)290 const char *name, void __iomem *ioaddr)
291{291{
292 int i;292 int i;
293 int err;293 int err;
@@ -354,7 +354,7 @@ static int zorro8390_init(struct net_device *dev, unsigned long board, · 60 unmodified lines
354 start_page = NESM_START_PG;354 start_page = NESM_START_PG;
355 stop_page = NESM_STOP_PG;355 stop_page = NESM_STOP_PG;
356 356
357 dev->base_addr = ioaddr;357 dev->base_addr = (unsigned long)ioaddr;
358 dev->irq = IRQ_AMIGA_PORTS;358 dev->irq = IRQ_AMIGA_PORTS;
359 359
360 /* Install the Interrupt handler */360 /* Install the Interrupt handler */
drivers/net/ethernet/amd/a2065.c+2−2
@@ -713,8 +713,8 @@ static int a2065_init_one(struct zorro_dev *z, · 712 unmodified lines
713 dev->dev_addr[3] = (z->rom.er_SerialNumber >> 16) & 0xff;713 dev->dev_addr[3] = (z->rom.er_SerialNumber >> 16) & 0xff;
714 dev->dev_addr[4] = (z->rom.er_SerialNumber >> 8) & 0xff;714 dev->dev_addr[4] = (z->rom.er_SerialNumber >> 8) & 0xff;
715 dev->dev_addr[5] = z->rom.er_SerialNumber & 0xff;715 dev->dev_addr[5] = z->rom.er_SerialNumber & 0xff;
716 dev->base_addr = ZTWO_VADDR(base_addr);716 dev->base_addr = (unsigned long)ZTWO_VADDR(base_addr);
717 dev->mem_start = ZTWO_VADDR(mem_start);717 dev->mem_start = (unsigned long)ZTWO_VADDR(mem_start);
718 dev->mem_end = dev->mem_start + A2065_RAM_SIZE;718 dev->mem_end = dev->mem_start + A2065_RAM_SIZE;
719 719
720 priv->ll = (volatile struct lance_regs *)dev->base_addr;720 priv->ll = (volatile struct lance_regs *)dev->base_addr;
drivers/net/ethernet/amd/ariadne.c+2−2
@@ -747,8 +747,8 @@ static int ariadne_init_one(struct zorro_dev *z, · 746 unmodified lines
747 dev->dev_addr[3] = (z->rom.er_SerialNumber >> 16) & 0xff;747 dev->dev_addr[3] = (z->rom.er_SerialNumber >> 16) & 0xff;
748 dev->dev_addr[4] = (z->rom.er_SerialNumber >> 8) & 0xff;748 dev->dev_addr[4] = (z->rom.er_SerialNumber >> 8) & 0xff;
749 dev->dev_addr[5] = z->rom.er_SerialNumber & 0xff;749 dev->dev_addr[5] = z->rom.er_SerialNumber & 0xff;
750 dev->base_addr = ZTWO_VADDR(base_addr);750 dev->base_addr = (unsigned long)ZTWO_VADDR(base_addr);
751 dev->mem_start = ZTWO_VADDR(mem_start);751 dev->mem_start = (unsigned long)ZTWO_VADDR(mem_start);
752 dev->mem_end = dev->mem_start + ARIADNE_RAM_SIZE;752 dev->mem_end = dev->mem_start + ARIADNE_RAM_SIZE;
753 753
754 dev->netdev_ops = &ariadne_netdev_ops;754 dev->netdev_ops = &ariadne_netdev_ops;
drivers/parport/parport_mfc3.c+1−1
@@ -300,7 +300,7 @@ static int __init parport_mfc3_init(void) · 299 unmodified lines
300 if (!request_mem_region(piabase, sizeof(struct pia), "PIA"))300 if (!request_mem_region(piabase, sizeof(struct pia), "PIA"))
301 continue;301 continue;
302 302
303 pp = (struct pia *)ZTWO_VADDR(piabase);303 pp = ZTWO_VADDR(piabase);
304 pp->crb = 0;304 pp->crb = 0;
305 pp->pddrb = 255; /* all data pins output */305 pp->pddrb = 255; /* all data pins output */
306 pp->crb = PIA_DDR|32|8;306 pp->crb = PIA_DDR|32|8;
drivers/scsi/a2091.c+1−1
@@ -201,7 +201,7 @@ static int a2091_probe(struct zorro_dev *z, const struct zorro_device_id *ent) · 200 unmodified lines
201 instance->irq = IRQ_AMIGA_PORTS;201 instance->irq = IRQ_AMIGA_PORTS;
202 instance->unique_id = z->slotaddr;202 instance->unique_id = z->slotaddr;
203 203
204 regs = (struct a2091_scsiregs *)ZTWO_VADDR(z->resource.start);204 regs = ZTWO_VADDR(z->resource.start);
205 regs->DAWR = DAWR_A2091;205 regs->DAWR = DAWR_A2091;
206 206
207 wdregs.SASR = &regs->SASR;207 wdregs.SASR = &regs->SASR;
drivers/scsi/a3000.c+1−1
@@ -220,7 +220,7 @@ static int __init amiga_a3000_scsi_probe(struct platform_device *pdev) · 219 unmodified lines
220 220
221 instance->irq = IRQ_AMIGA_PORTS;221 instance->irq = IRQ_AMIGA_PORTS;
222 222
223 regs = (struct a3000_scsiregs *)ZTWO_VADDR(res->start);223 regs = ZTWO_VADDR(res->start);
224 regs->DAWR = DAWR_A3000;224 regs->DAWR = DAWR_A3000;
225 225
226 wdregs.SASR = &regs->SASR;226 wdregs.SASR = &regs->SASR;
drivers/scsi/a4000t.c+1−1
@@ -56,7 +56,7 @@ static int __init amiga_a4000t_scsi_probe(struct platform_device *pdev) · 55 unmodified lines
56 scsi_addr = res->start + A4000T_SCSI_OFFSET;56 scsi_addr = res->start + A4000T_SCSI_OFFSET;
57 57
58 /* Fill in the required pieces of hostdata */58 /* Fill in the required pieces of hostdata */
59 hostdata->base = (void __iomem *)ZTWO_VADDR(scsi_addr);59 hostdata->base = ZTWO_VADDR(scsi_addr);
60 hostdata->clock = 50;60 hostdata->clock = 50;
61 hostdata->chip710 = 1;61 hostdata->chip710 = 1;
62 hostdata->dmode_extra = DMODE_FC2;62 hostdata->dmode_extra = DMODE_FC2;
drivers/scsi/gvp11.c+1−1
@@ -310,7 +310,7 @@ static int gvp11_probe(struct zorro_dev *z, const struct zorro_device_id *ent) · 309 unmodified lines
310 if (!request_mem_region(address, 256, "wd33c93"))310 if (!request_mem_region(address, 256, "wd33c93"))
311 return -EBUSY;311 return -EBUSY;
312 312
313 regs = (struct gvp11_scsiregs *)(ZTWO_VADDR(address));313 regs = ZTWO_VADDR(address);
314 314
315 error = check_wd33c93(regs);315 error = check_wd33c93(regs);
316 if (error)316 if (error)
drivers/scsi/zorro7xx.c+1−1
@@ -104,7 +104,7 @@ static int zorro7xx_init_one(struct zorro_dev *z, · 103 unmodified lines
104 if (ioaddr > 0x01000000)104 if (ioaddr > 0x01000000)
105 hostdata->base = ioremap(ioaddr, zorro_resource_len(z));105 hostdata->base = ioremap(ioaddr, zorro_resource_len(z));
106 else106 else
107 hostdata->base = (void __iomem *)ZTWO_VADDR(ioaddr);107 hostdata->base = ZTWO_VADDR(ioaddr);
108 108
109 hostdata->clock = 50;109 hostdata->clock = 50;
110 hostdata->chip710 = 1;110 hostdata->chip710 = 1;
drivers/video/amifb.c+1−1
@@ -3710,7 +3710,7 @@ default_chipset: · 3709 unmodified lines
3710 if (!videomemory) {3710 if (!videomemory) {
3711 dev_warn(&pdev->dev,3711 dev_warn(&pdev->dev,
3712 "Unable to map videomem cached writethrough\n");3712 "Unable to map videomem cached writethrough\n");
3713 info->screen_base = (char *)ZTWO_VADDR(info->fix.smem_start);3713 info->screen_base = ZTWO_VADDR(info->fix.smem_start);
3714 } else3714 } else
3715 info->screen_base = (char *)videomemory;3715 info->screen_base = (char *)videomemory;
3716 3716
drivers/video/cirrusfb.c+2−2
@@ -2256,7 +2256,7 @@ static int cirrusfb_zorro_register(struct zorro_dev *z, · 2255 unmodified lines
2256 2256
2257 info->fix.mmio_start = regbase;2257 info->fix.mmio_start = regbase;
2258 cinfo->regbase = regbase > 16 * MB_ ? ioremap(regbase, 64 * 1024)2258 cinfo->regbase = regbase > 16 * MB_ ? ioremap(regbase, 64 * 1024)
2259 : (caddr_t)ZTWO_VADDR(regbase);2259 : ZTWO_VADDR(regbase);
2260 if (!cinfo->regbase) {2260 if (!cinfo->regbase) {
2261 dev_err(info->device, "Cannot map registers\n");2261 dev_err(info->device, "Cannot map registers\n");
2262 error = -EIO;2262 error = -EIO;
@@ -2266,7 +2266,7 @@ static int cirrusfb_zorro_register(struct zorro_dev *z, · 3 unmodified lines
2266 info->fix.smem_start = rambase;2266 info->fix.smem_start = rambase;
2267 info->screen_size = ramsize;2267 info->screen_size = ramsize;
2268 info->screen_base = rambase > 16 * MB_ ? ioremap(rambase, ramsize)2268 info->screen_base = rambase > 16 * MB_ ? ioremap(rambase, ramsize)
2269 : (caddr_t)ZTWO_VADDR(rambase);2269 : ZTWO_VADDR(rambase);
2270 if (!info->screen_base) {2270 if (!info->screen_base) {
2271 dev_err(info->device, "Cannot map video RAM\n");2271 dev_err(info->device, "Cannot map video RAM\n");
2272 error = -EIO;2272 error = -EIO;