treewide: Convert uses of struct resource to resource_size(ptr)
authorJoe Perches <joe@perches.com>
Thu, 9 Jun 2011 16:13:32 +0000 (09:13 -0700)
committerJiri Kosina <jkosina@suse.cz>
Fri, 10 Jun 2011 12:55:36 +0000 (14:55 +0200)
Several fixes as well where the +1 was missing.

Done via coccinelle scripts like:

@@
struct resource *ptr;
@@

- ptr->end - ptr->start + 1
+ resource_size(ptr)

and some grep and typing.

Mostly uncompiled, no cross-compilers.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
168 files changed:
arch/arm/common/scoop.c
arch/arm/mach-at91/at91sam9261_devices.c
arch/arm/mach-mv78xx0/pcie.c
arch/arm/mach-u300/core.c
arch/arm/plat-mxc/pwm.c
arch/arm/plat-s5p/sysmmu.c
arch/arm/plat-samsung/pm-check.c
arch/avr32/kernel/setup.c
arch/avr32/mach-at32ap/extint.c
arch/avr32/mach-at32ap/hsmc.c
arch/avr32/mach-at32ap/intc.c
arch/avr32/mach-at32ap/pio.c
arch/microblaze/pci/pci-common.c
arch/mips/pci/pci-rc32434.c
arch/mips/pci/pci-vr41xx.c
arch/mips/powertv/asic/asic_devices.c
arch/powerpc/include/asm/macio.h
arch/powerpc/kernel/machine_kexec.c
arch/powerpc/kernel/pci-common.c
arch/powerpc/platforms/52xx/mpc52xx_pci.c
arch/powerpc/platforms/83xx/km83xx.c
arch/powerpc/platforms/83xx/mpc832x_mds.c
arch/powerpc/platforms/83xx/mpc834x_mds.c
arch/powerpc/platforms/83xx/mpc836x_mds.c
arch/powerpc/platforms/83xx/usb.c
arch/powerpc/platforms/85xx/sbc8560.c
arch/powerpc/platforms/85xx/xes_mpc85xx.c
arch/powerpc/platforms/cell/celleb_scc_epci.c
arch/powerpc/platforms/cell/celleb_scc_pciex.c
arch/powerpc/platforms/cell/spu_manage.c
arch/powerpc/platforms/chrp/pci.c
arch/powerpc/platforms/pasemi/dma_lib.c
arch/powerpc/platforms/powermac/nvram.c
arch/powerpc/platforms/powermac/pci.c
arch/powerpc/platforms/powermac/time.c
arch/powerpc/sysdev/axonram.c
arch/powerpc/sysdev/cpm1.c
arch/powerpc/sysdev/cpm_common.c
arch/powerpc/sysdev/dart_iommu.c
arch/powerpc/sysdev/fsl_msi.c
arch/powerpc/sysdev/fsl_pci.c
arch/powerpc/sysdev/fsl_rio.c
arch/powerpc/sysdev/ipic.c
arch/powerpc/sysdev/mmio_nvram.c
arch/powerpc/sysdev/mpc8xx_pic.c
arch/powerpc/sysdev/mv64x60_udbg.c
arch/powerpc/sysdev/ppc4xx_pci.c
arch/powerpc/sysdev/qe_lib/qe_ic.c
arch/powerpc/sysdev/qe_lib/qe_io.c
arch/powerpc/sysdev/xics/icp-native.c
arch/sh/kernel/io_trapped.c
arch/sh/kernel/machine_kexec.c
arch/sparc/kernel/ioport.c
arch/sparc/kernel/pci.c
arch/tile/kernel/setup.c
arch/x86/kernel/pci-calgary_64.c
arch/x86/kernel/probe_roms.c
drivers/char/bsr.c
drivers/char/xilinx_hwicap/xilinx_hwicap.c
drivers/dma/mv_xor.c
drivers/edac/cell_edac.c
drivers/edac/mpc85xx_edac.c
drivers/gpio/gpio-u300.c
drivers/ide/palm_bk3710.c
drivers/ide/tx4939ide.c
drivers/input/serio/sa1111ps2.c
drivers/media/video/davinci/vpif.c
drivers/media/video/omap24xxcam.c
drivers/message/i2o/iop.c
drivers/mfd/tc6387xb.c
drivers/misc/atmel-ssc.c
drivers/misc/atmel_pwm.c
drivers/mmc/host/dw_mmc.c
drivers/mtd/maps/bfin-async-flash.c
drivers/mtd/maps/ixp2000.c
drivers/mtd/maps/pxa2xx-flash.c
drivers/mtd/nand/atmel_nand.c
drivers/mtd/nand/bcm_umi_nand.c
drivers/mtd/nand/mpc5121_nfc.c
drivers/net/bcm63xx_enet.c
drivers/net/can/softing/softing_main.c
drivers/net/davinci_emac.c
drivers/net/ethoc.c
drivers/net/fec_mpc52xx.c
drivers/net/fs_enet/mii-bitbang.c
drivers/net/fs_enet/mii-fec.c
drivers/net/gianfar_ptp.c
drivers/net/ibm_newemac/core.c
drivers/net/macb.c
drivers/net/mv643xx_eth.c
drivers/net/pxa168_eth.c
drivers/net/sb1250-mac.c
drivers/parport/parport_ax88796.c
drivers/pci/hotplug/shpchp_sysfs.c
drivers/pcmcia/at91_cf.c
drivers/pcmcia/electra_cf.c
drivers/pcmcia/rsrc_iodyn.c
drivers/pcmcia/rsrc_nonstatic.c
drivers/pnp/pnpacpi/rsparser.c
drivers/pnp/pnpbios/rsparser.c
drivers/rtc/rtc-at32ap700x.c
drivers/rtc/rtc-cmos.c
drivers/rtc/rtc-ds1286.c
drivers/rtc/rtc-ds1511.c
drivers/rtc/rtc-ds1742.c
drivers/rtc/rtc-m48t35.c
drivers/rtc/rtc-m48t59.c
drivers/rtc/rtc-mrst.c
drivers/rtc/rtc-puv3.c
drivers/rtc/rtc-s3c.c
drivers/staging/generic_serial/ser_a2232.c
drivers/staging/gma500/psb_gtt.c
drivers/tty/serial/bfin_5xx.c
drivers/tty/serial/imx.c
drivers/tty/serial/m32r_sio.c
drivers/tty/serial/omap-serial.c
drivers/tty/serial/pxa.c
drivers/tty/serial/sunsu.c
drivers/tty/serial/vt8500_serial.c
drivers/uio/uio_pdrv.c
drivers/uio/uio_pdrv_genirq.c
drivers/usb/gadget/atmel_usba_udc.c
drivers/usb/gadget/fsl_udc_core.c
drivers/usb/host/ehci-ath79.c
drivers/usb/host/ehci-cns3xxx.c
drivers/usb/host/ehci-fsl.c
drivers/usb/host/ehci-grlib.c
drivers/usb/host/ehci-ixp4xx.c
drivers/usb/host/ehci-octeon.c
drivers/usb/host/ehci-pmcmsp.c
drivers/usb/host/ehci-ppc-of.c
drivers/usb/host/ehci-w90x900.c
drivers/usb/host/ehci-xilinx-of.c
drivers/usb/host/fhci-hcd.c
drivers/usb/host/ohci-ath79.c
drivers/usb/host/ohci-cns3xxx.c
drivers/usb/host/ohci-da8xx.c
drivers/usb/host/ohci-octeon.c
drivers/usb/host/ohci-ppc-of.c
drivers/usb/host/ohci-ppc-soc.c
drivers/usb/host/ohci-sa1111.c
drivers/usb/host/ohci-sm501.c
drivers/usb/host/ohci-tmio.c
drivers/usb/host/oxu210hp-hcd.c
drivers/usb/host/uhci-grlib.c
drivers/usb/host/whci/init.c
drivers/uwb/whc-rc.c
drivers/video/atmel_lcdfb.c
drivers/video/aty/atyfb_base.c
drivers/video/au1100fb.c
drivers/video/cobalt_lcdfb.c
drivers/video/controlfb.c
drivers/video/mb862xx/mb862xxfbdrv.c
drivers/video/msm/mdp.c
drivers/video/msm/msm_fb.c
drivers/video/nuc900fb.c
drivers/video/platinumfb.c
drivers/video/pxa168fb.c
include/linux/dio.h
include/linux/pnp.h
include/linux/zorro.h
kernel/kexec.c
sound/aoa/soundbus/i2sbus/core.c
sound/atmel/abdac.c
sound/atmel/ac97c.c
sound/ppc/pmac.c
sound/soc/fsl/fsl_ssi.c
sound/soc/fsl/mpc5200_dma.c

index c11af1e4bad309d4054b7eed7fe3c285cefc8fbf..a07b0e763a805109c007161d46efd6df5f45d6b6 100644 (file)
@@ -193,7 +193,7 @@ static int __devinit scoop_probe(struct platform_device *pdev)
        spin_lock_init(&devptr->scoop_lock);
 
        inf = pdev->dev.platform_data;
-       devptr->base = ioremap(mem->start, mem->end - mem->start + 1);
+       devptr->base = ioremap(mem->start, resource_size(mem));
 
        if (!devptr->base) {
                ret = -ENOMEM;
index 3eb4538fceebeb243aba31185861d3639d05c9c3..14dd666850b025a4583d9ada32de598c27ca66b1 100644 (file)
@@ -525,7 +525,7 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data)
        if (ARRAY_SIZE(lcdc_resources) > 2) {
                void __iomem *fb;
                struct resource *fb_res = &lcdc_resources[2];
-               size_t fb_len = fb_res->end - fb_res->start + 1;
+               size_t fb_len = resource_size(fb_res);
 
                fb = ioremap(fb_res->start, fb_len);
                if (fb) {
index a560439dcc3c81b9aa27127fbdd2358bd16664d1..f27c7d2fa9f728fdcfe3d5e267fb364abd604bcc 100644 (file)
@@ -129,12 +129,12 @@ static void __init mv78xx0_pcie_preinit(void)
                struct pcie_port *pp = pcie_port + i;
 
                mv78xx0_setup_pcie_io_win(win++, pp->res[0].start,
-                       pp->res[0].end - pp->res[0].start + 1,
-                       pp->maj, pp->min);
+                                         resource_size(&pp->res[0]),
+                                         pp->maj, pp->min);
 
                mv78xx0_setup_pcie_mem_win(win++, pp->res[1].start,
-                       pp->res[1].end - pp->res[1].start + 1,
-                       pp->maj, pp->min);
+                                          resource_size(&pp->res[1]),
+                                          pp->maj, pp->min);
        }
 }
 
index 513d6abec1f511afe271d6c69abcfcd569403026..399c89f14dfb5b9d78835409611c748c7411a40b 100644 (file)
@@ -1791,7 +1791,7 @@ static void __init u300_assign_physmem(void)
                                     0 == res->start) {
                                res->start  = curr_start;
                                res->end   += curr_start;
-                               curr_start += (res->end - res->start + 1);
+                               curr_start += resource_size(res);
 
                                printk(KERN_INFO "core.c: Mapping RAM " \
                                       "%#x-%#x to device %s:%s\n",
index 7a61ef8f471a49fd3ac0b67540f949cf13eaaa43..761c3c940a68cf84aa65e0bbaebd64e999b9ff9c 100644 (file)
@@ -214,14 +214,14 @@ static int __devinit mxc_pwm_probe(struct platform_device *pdev)
                goto err_free_clk;
        }
 
-       r = request_mem_region(r->start, r->end - r->start + 1, pdev->name);
+       r = request_mem_region(r->start, resource_size(r), pdev->name);
        if (r == NULL) {
                dev_err(&pdev->dev, "failed to request memory resource\n");
                ret = -EBUSY;
                goto err_free_clk;
        }
 
-       pwm->mmio_base = ioremap(r->start, r->end - r->start + 1);
+       pwm->mmio_base = ioremap(r->start, resource_size(r));
        if (pwm->mmio_base == NULL) {
                dev_err(&pdev->dev, "failed to ioremap() registers\n");
                ret = -ENODEV;
@@ -236,7 +236,7 @@ static int __devinit mxc_pwm_probe(struct platform_device *pdev)
        return 0;
 
 err_free_mem:
-       release_mem_region(r->start, r->end - r->start + 1);
+       release_mem_region(r->start, resource_size(r));
 err_free_clk:
        clk_put(pwm->clk);
 err_free:
@@ -260,7 +260,7 @@ static int __devexit mxc_pwm_remove(struct platform_device *pdev)
        iounmap(pwm->mmio_base);
 
        r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       release_mem_region(r->start, r->end - r->start + 1);
+       release_mem_region(r->start, resource_size(r));
 
        clk_put(pwm->clk);
 
index 54f5eddc921df7dadee61d0b8f734092c1452fd7..e1cbc728c7759b1e1f54923f11120b3ea4647cb2 100644 (file)
@@ -232,8 +232,8 @@ static int s5p_sysmmu_probe(struct platform_device *pdev)
                        goto err_res;
                }
 
-               mem = request_mem_region(res->start,
-                               ((res->end) - (res->start)) + 1, pdev->name);
+               mem = request_mem_region(res->start, resource_size(res),
+                                        pdev->name);
                if (!mem) {
                        dev_err(dev, "Failed to request the memory region of %s.\n",
                                                        sysmmu_ips_name[i]);
@@ -241,7 +241,7 @@ static int s5p_sysmmu_probe(struct platform_device *pdev)
                        goto err_res;
                }
 
-               sysmmusfrs[i] = ioremap(res->start, res->end - res->start + 1);
+               sysmmusfrs[i] = ioremap(res->start, resource_size(res));
                if (!sysmmusfrs[i]) {
                        dev_err(dev, "Failed to ioremap() for %s.\n",
                                                        sysmmu_ips_name[i]);
index 6b733fafe7cda41815d88115fa866d1a6976a71b..3cbd62666b1ef291ba89b3d75a4795a1424cf6f0 100644 (file)
@@ -72,7 +72,7 @@ static void s3c_pm_run_sysram(run_fn_t fn, u32 *arg)
 
 static u32 *s3c_pm_countram(struct resource *res, u32 *val)
 {
-       u32 size = (u32)(res->end - res->start)+1;
+       u32 size = (u32)resource_size(res);
 
        size += CHECK_CHUNKSIZE-1;
        size /= CHECK_CHUNKSIZE;
index bb0974cce4accf3c0a0d01cdfce08d7533d86ab7..b4247f4780657993eef27f9e15ed2169b088793b 100644 (file)
@@ -444,7 +444,7 @@ static unsigned long __init
 find_bootmap_pfn(const struct resource *mem)
 {
        unsigned long bootmap_pages, bootmap_len;
-       unsigned long node_pages = PFN_UP(mem->end - mem->start + 1);
+       unsigned long node_pages = PFN_UP(resource_size(mem));
        unsigned long bootmap_start;
 
        bootmap_pages = bootmem_bootmap_pages(node_pages);
@@ -541,10 +541,10 @@ static void __init setup_bootmem(void)
                         */
                        if (res->start >= PFN_PHYS(first_pfn)
                            && res->end < PFN_PHYS(max_pfn))
-                               reserve_bootmem_node(
-                                       NODE_DATA(node), res->start,
-                                       res->end - res->start + 1,
-                                       BOOTMEM_DEFAULT);
+                               reserve_bootmem_node(NODE_DATA(node),
+                                                    res->start,
+                                                    resource_size(res),
+                                                    BOOTMEM_DEFAULT);
                }
 
                node_set_online(node);
index fbc2aeaebddbde6023bb4853814f2e598436a1bd..cfb298d6630582b6924824a6b7bd4aed4663d526 100644 (file)
@@ -204,7 +204,7 @@ static int __init eic_probe(struct platform_device *pdev)
        }
 
        eic->first_irq = EIM_IRQ_BASE + 32 * pdev->id;
-       eic->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       eic->regs = ioremap(regs->start, resource_size(regs));
        if (!eic->regs) {
                dev_dbg(&pdev->dev, "failed to map regs\n");
                goto err_ioremap;
index f7672d3e86b842b56e74cad31a4892ba42d05e2f..f66245e6e63e7876291901bbe138fc52d765b9c4 100644 (file)
@@ -245,7 +245,7 @@ static int hsmc_probe(struct platform_device *pdev)
 
        hsmc->pclk = pclk;
        hsmc->mck = mck;
-       hsmc->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       hsmc->regs = ioremap(regs->start, resource_size(regs));
        if (!hsmc->regs)
                goto out_disable_clocks;
 
index 3e3646186c9ffa686aa01ff86821fe1cc7639ebe..6c700431e34aceabbebb3359092cd70ef83d09fc 100644 (file)
@@ -107,7 +107,7 @@ void __init init_IRQ(void)
 
        clk_enable(pclk);
 
-       intc0.regs = ioremap(regs->start, regs->end - regs->start + 1);
+       intc0.regs = ioremap(regs->start, resource_size(regs));
        if (!intc0.regs) {
                printk(KERN_EMERG "intc: failed to map registers (0x%08lx)\n",
                       (unsigned long)regs->start);
index 2e0aa853a4bcecec88339d30b22d112114edc5be..9b39dea6682f83de9f81561ab6619299ede26c2e 100644 (file)
@@ -461,7 +461,7 @@ void __init at32_init_pio(struct platform_device *pdev)
                clk_enable(pio->clk);
 
        pio->pdev = pdev;
-       pio->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       pio->regs = ioremap(regs->start, resource_size(regs));
 
        /* start with irqs disabled and acked */
        pio_writel(pio, IDR, ~0UL);
index 53599067d2f94f37dfbec3d0dc02d5e4950a5aca..dd3fae06ece48cfa54f04a844feebf473f22d820 100644 (file)
@@ -89,7 +89,7 @@ void pcibios_free_controller(struct pci_controller *phb)
 
 static resource_size_t pcibios_io_size(const struct pci_controller *hose)
 {
-       return hose->io_resource.end - hose->io_resource.start + 1;
+       return resource_size(&hose->io_resource);
 }
 
 int pcibios_vaddr_is_ioport(void __iomem *address)
index f31218e17d3c1437f4f8ef15a7d1855ddc6a32fb..764362ce5e404119b375f327d0c01111ee559383 100644 (file)
@@ -215,7 +215,7 @@ static int __init rc32434_pci_init(void)
        rc32434_pcibridge_init();
 
        io_map_base = ioremap(rc32434_res_pci_io1.start,
-               rc32434_res_pci_io1.end - rc32434_res_pci_io1.start + 1);
+                             resource_size(&rcrc32434_res_pci_io1));
 
        if (!io_map_base)
                return -ENOMEM;
index 56525711f8b75deb270b6c6b7f32db0b38289029..444b8d8004ad392d34dd69e3f63006365396df43 100644 (file)
@@ -305,7 +305,7 @@ static int __init vr41xx_pciu_init(void)
                struct resource *res = vr41xx_pci_controller.io_resource;
                master = setup->master_io;
                io_map_base = ioremap(master->bus_base_address,
-                                     res->end - res->start + 1);
+                                     resource_size(res));
                if (!io_map_base)
                        return -EBUSY;
 
index e56fa61b39916a8e869350f715ee4d169c37f122..bce1872249bab6b4fba83950354078919451f37e 100644 (file)
@@ -394,23 +394,21 @@ void __init platform_alloc_bootmem(void)
 
        /* Loop through looking for resources that want a particular address */
        for (i = 0; gp_resources[i].flags != 0; i++) {
-               int size = gp_resources[i].end - gp_resources[i].start + 1;
+               int size = resource_size(&gp_resources[i]);
                if ((gp_resources[i].start != 0) &&
                        ((gp_resources[i].flags & IORESOURCE_MEM) != 0)) {
                        reserve_bootmem(dma_to_phys(gp_resources[i].start),
                                size, 0);
-                       total += gp_resources[i].end -
-                               gp_resources[i].start + 1;
+                       total += resource_size(&gp_resources[i]);
                        pr_info("reserve resource %s at %08x (%u bytes)\n",
                                gp_resources[i].name, gp_resources[i].start,
-                               gp_resources[i].end -
-                                       gp_resources[i].start + 1);
+                               resource_size(&gp_resources[i]));
                }
        }
 
        /* Loop through assigning addresses for those that are left */
        for (i = 0; gp_resources[i].flags != 0; i++) {
-               int size = gp_resources[i].end - gp_resources[i].start + 1;
+               int size = resource_size(&gp_resources[i]);
                if ((gp_resources[i].start == 0) &&
                        ((gp_resources[i].flags & IORESOURCE_MEM) != 0)) {
                        void *mem = alloc_bootmem_pages(size);
index 7ab82c825a034f7af25c19f5d78a88880022e2a2..27af7f8bbb8da6245f7c5d0f971c7c07ba9d1fea 100644 (file)
@@ -76,7 +76,7 @@ static inline unsigned long macio_resource_len(struct macio_dev *dev, int resour
        struct resource *res = &dev->resource[resource_no];
        if (res->start == 0 || res->end == 0 || res->end < res->start)
                return 0;
-       return res->end - res->start + 1;
+       return resource_size(res);
 }
 
 extern int macio_enable_devres(struct macio_dev *dev);
index 7ee50f0547cb73de52be535b8f4b6543536b5405..6658a1589955577859afc62af05f0cd4c66cda6a 100644 (file)
@@ -126,7 +126,7 @@ void __init reserve_crashkernel(void)
        /* We might have got these values via the command line or the
         * device tree, either way sanitise them now. */
 
-       crash_size = crashk_res.end - crashk_res.start + 1;
+       crash_size = resource_size(&crashk_res);
 
 #ifndef CONFIG_RELOCATABLE
        if (crashk_res.start != KDUMP_KERNELBASE)
@@ -222,7 +222,7 @@ static void __init export_crashk_values(struct device_node *node)
 
        if (crashk_res.start != 0) {
                prom_add_property(node, &crashk_base_prop);
-               crashk_size = crashk_res.end - crashk_res.start + 1;
+               crashk_size = resource_size(&crashk_res);
                prom_add_property(node, &crashk_size_prop);
        }
 }
index 893af2a9cd03a53bfb6e5b6d2d37cdb1cac63026..3764e37205fbf3f3659a02b97dc7e5b4e66e27c1 100644 (file)
@@ -107,7 +107,7 @@ static resource_size_t pcibios_io_size(const struct pci_controller *hose)
 #ifdef CONFIG_PPC64
        return hose->pci_io_size;
 #else
-       return hose->io_resource.end - hose->io_resource.start + 1;
+       return resource_size(&hose->io_resource);
 #endif
 }
 
index da110bd8834677b2b59e7f7625e4f8bb28d9c87c..5f5e693090800e8f6672ac9597701c520aeb6576 100644 (file)
@@ -264,7 +264,7 @@ mpc52xx_pci_setup(struct pci_controller *hose,
                         (unsigned long long)res->flags);
                out_be32(&pci_regs->iw0btar,
                         MPC52xx_PCI_IWBTAR_TRANSLATION(res->start, res->start,
-                                 res->end - res->start + 1));
+                                                       resource_size(res)));
                iwcr0 = MPC52xx_PCI_IWCR_ENABLE | MPC52xx_PCI_IWCR_MEM;
                if (res->flags & IORESOURCE_PREFETCH)
                        iwcr0 |= MPC52xx_PCI_IWCR_READ_MULTI;
@@ -278,7 +278,7 @@ mpc52xx_pci_setup(struct pci_controller *hose,
                         res->start, res->end, res->flags);
                out_be32(&pci_regs->iw1btar,
                         MPC52xx_PCI_IWBTAR_TRANSLATION(res->start, res->start,
-                                 res->end - res->start + 1));
+                                                       resource_size(res)));
                iwcr1 = MPC52xx_PCI_IWCR_ENABLE | MPC52xx_PCI_IWCR_MEM;
                if (res->flags & IORESOURCE_PREFETCH)
                        iwcr1 |= MPC52xx_PCI_IWCR_READ_MULTI;
@@ -300,7 +300,7 @@ mpc52xx_pci_setup(struct pci_controller *hose,
        out_be32(&pci_regs->iw2btar,
                 MPC52xx_PCI_IWBTAR_TRANSLATION(hose->io_base_phys,
                                                res->start,
-                                               res->end - res->start + 1));
+                                               resource_size(res)));
        iwcr2 = MPC52xx_PCI_IWCR_ENABLE | MPC52xx_PCI_IWCR_IO;
 
        /* Set all the IWCR fields at once; they're in the same reg */
@@ -402,7 +402,7 @@ mpc52xx_add_bridge(struct device_node *node)
 
        hose->ops = &mpc52xx_pci_ops;
 
-       pci_regs = ioremap(rsrc.start, rsrc.end - rsrc.start + 1);
+       pci_regs = ioremap(rsrc.start, resource_size(&rsrc));
        if (!pci_regs)
                return -ENOMEM;
 
index a2b9b9ef1240fc9d40d994ce4e6aecabb1675abc..f8fa2fc3129f1ad170d2529096f7653f502623da 100644 (file)
@@ -101,7 +101,7 @@ static void __init mpc83xx_km_setup_arch(void)
                                        __func__);
                                return;
                        }
-                       base = ioremap(res.start, res.end - res.start + 1);
+                       base = ioremap(res.start, resource_size(&res));
 
                        /*
                         * IMMR + 0x14A8[4:5] = 11 (clk delay for UCC 2)
index ec0b401bc9cf1b9afbc1d2527ed7a36ed7c0f817..93e60f1f21a9c23de86fc5a7eb56de5ee31582e4 100644 (file)
@@ -68,7 +68,7 @@ static void __init mpc832x_sys_setup_arch(void)
                struct resource res;
 
                of_address_to_resource(np, 0, &res);
-               bcsr_regs = ioremap(res.start, res.end - res.start +1);
+               bcsr_regs = ioremap(res.start, resource_size(&res));
                of_node_put(np);
        }
 
index d0a634b056ca549040d79f0112de75e6062dbadf..c1b1dc50b32af92520f8f1c5f097759f6a1dcd9b 100644 (file)
@@ -53,7 +53,7 @@ static int mpc834xemds_usb_cfg(void)
                struct resource res;
 
                of_address_to_resource(np, 0, &res);
-               bcsr_regs = ioremap(res.start, res.end - res.start + 1);
+               bcsr_regs = ioremap(res.start, resource_size(&res));
                of_node_put(np);
        }
        if (!bcsr_regs)
index 09e9d6fb74115327a98167104f136ecb8961d196..81c052b1353efa883239ec3462210b39d14b9499 100644 (file)
@@ -76,7 +76,7 @@ static void __init mpc836x_mds_setup_arch(void)
                struct resource res;
 
                of_address_to_resource(np, 0, &res);
-               bcsr_regs = ioremap(res.start, res.end - res.start +1);
+               bcsr_regs = ioremap(res.start, resource_size(&res));
                of_node_put(np);
        }
 
index 2c64164722d05886cfde3e2a2da2cd9a8d8cd6d0..1ad748bb39b4b506c8596d658d612048946ea46d 100644 (file)
@@ -171,7 +171,7 @@ int mpc831x_usb_cfg(void)
                of_node_put(np);
                return ret;
        }
-       usb_regs = ioremap(res.start, res.end - res.start + 1);
+       usb_regs = ioremap(res.start, resource_size(&res));
 
        /* Using on-chip PHY */
        if (prop && (!strcmp(prop, "utmi_wide") ||
index d2dfd465fbf67cf92f79d772284aa7e0bde6f554..09ced72217501fdb1da38ffa0612441b40d9f6b1 100644 (file)
@@ -285,7 +285,7 @@ static int __init sbc8560_bdrstcr_init(void)
 
        printk(KERN_INFO "sbc8560: Found BRSTCR at i/o 0x%x\n", res.start);
 
-       brstcr = ioremap(res.start, res.end - res.start);
+       brstcr = ioremap(res.start, resource_size(&res));
        if(!brstcr)
                printk(KERN_WARNING "sbc8560: ioremap of brstcr failed.\n");
 
index 0125604d096e917de7c7c6a923aa61df37c538a8..a9dc5e795123b00d7ff27fcc086559e7702066d7 100644 (file)
@@ -123,7 +123,7 @@ static void xes_mpc85xx_fixups(void)
                        continue;
                }
 
-               l2_base = ioremap(r[0].start, r[0].end - r[0].start + 1);
+               l2_base = ioremap(r[0].start, resource_size(&r[0]));
 
                xes_mpc85xx_configure_l2(l2_base);
        }
index 05b0db3ef6388bb4a5d6a7742be572f8b4c7f81c..844c0facb4f7ee6547f375741e78b3c22507dfda 100644 (file)
@@ -393,19 +393,19 @@ static int __init celleb_setup_epci(struct device_node *node,
 
        if (of_address_to_resource(node, 0, &r))
                goto error;
-       hose->cfg_addr = ioremap(r.start, (r.end - r.start + 1));
+       hose->cfg_addr = ioremap(r.start, resource_size(&r));
        if (!hose->cfg_addr)
                goto error;
        pr_debug("EPCI: cfg_addr map 0x%016llx->0x%016lx + 0x%016llx\n",
-                r.start, (unsigned long)hose->cfg_addr, (r.end - r.start + 1));
+                r.start, (unsigned long)hose->cfg_addr, resource_size(&r));
 
        if (of_address_to_resource(node, 2, &r))
                goto error;
-       hose->cfg_data = ioremap(r.start, (r.end - r.start + 1));
+       hose->cfg_data = ioremap(r.start, resource_size(&r));
        if (!hose->cfg_data)
                goto error;
        pr_debug("EPCI: cfg_data map 0x%016llx->0x%016lx + 0x%016llx\n",
-                r.start, (unsigned long)hose->cfg_data, (r.end - r.start + 1));
+                r.start, (unsigned long)hose->cfg_data, resource_size(&r));
 
        hose->ops = &celleb_epci_ops;
        celleb_epci_init(hose);
index a881bbee8de0564b6a995ad7ed5e1fe7fb5f637e..ae790ac4a589182b3f1e4a5873396cbcd71fdc6f 100644 (file)
@@ -494,7 +494,7 @@ static __init int celleb_setup_pciex(struct device_node *node,
                pr_err("PCIEXC:Failed to get config resource.\n");
                return 1;
        }
-       phb->cfg_addr = ioremap(r.start, r.end - r.start + 1);
+       phb->cfg_addr = ioremap(r.start, resource_size(&r));
        if (!phb->cfg_addr) {
                pr_err("PCIEXC:Failed to remap SMMIO region.\n");
                return 1;
index f465d474ad9b13b7813921bfa6cd4e9260b15d26..4e5c91489c0294c049f81fe3178fe2e682c4bb58 100644 (file)
@@ -222,7 +222,7 @@ static int spu_map_resource(struct spu *spu, int nr,
                return ret;
        if (phys)
                *phys = resource.start;
-       len = resource.end - resource.start + 1;
+       len = resource_size(&resource);
        *virt = ioremap(resource.start, len);
        if (!*virt)
                return -EINVAL;
index 8f67a394b2d068869cc045779e55e33bd7da4efd..3f65443f1714faca97fb239572eea21b5b765817 100644 (file)
@@ -142,7 +142,7 @@ hydra_init(void)
                return 0;
        }
        of_node_put(np);
-       Hydra = ioremap(r.start, r.end-r.start);
+       Hydra = ioremap(r.start, resource_size(&r));
        printk("Hydra Mac I/O at %llx\n", (unsigned long long)r.start);
        printk("Hydra Feature_Control was %x",
               in_le32(&Hydra->Feature_Control));
index 321a9b3a2d00e6039b92fb9d92d6eda704bf63f4..756123bf06ac2c7ee2eac1f3efb813acffa2394b 100644 (file)
@@ -576,7 +576,7 @@ int pasemi_dma_init(void)
                res.start = 0xfd800000;
                res.end = res.start + 0x1000;
        }
-       dma_status = __ioremap(res.start, res.end-res.start, 0);
+       dma_status = __ioremap(res.start, resource_size(&res), 0);
        pci_dev_put(iob_pdev);
 
        for (i = 0; i < MAX_TXCH; i++)
index b1cdcf94aa8e95daab73fa9cd757795e19d09301..695443bfdb089f83711b51c46dee58fb039ca028 100644 (file)
@@ -580,10 +580,10 @@ int __init pmac_nvram_init(void)
        /* Try to obtain an address */
        if (of_address_to_resource(dp, 0, &r1) == 0) {
                nvram_naddrs = 1;
-               s1 = (r1.end - r1.start) + 1;
+               s1 = resource_size(&r1);
                if (of_address_to_resource(dp, 1, &r2) == 0) {
                        nvram_naddrs = 2;
-                       s2 = (r2.end - r2.start) + 1;
+                       s2 = resource_size(&r2);
                }
        }
 
index f33e08d573ce6b27722b118882a539b5895a914e..4d4eba324837d181b9ea011ec2d9e93167a88d34 100644 (file)
@@ -838,8 +838,7 @@ static void __init setup_u3_ht(struct pci_controller* hose)
         * into cfg_addr
         */
        hose->cfg_data = ioremap(cfg_res.start, 0x02000000);
-       hose->cfg_addr = ioremap(self_res.start,
-                                self_res.end - self_res.start + 1);
+       hose->cfg_addr = ioremap(self_res.start, resource_size(&self_res));
 
        /*
         * /ht node doesn't expose a "ranges" property, we read the register
@@ -1323,8 +1322,7 @@ static void fixup_u4_pcie(struct pci_dev* dev)
                 */
                if (r->start >= 0xf0000000 && r->start < 0xf3000000)
                        continue;
-               if (!region || (r->end - r->start) >
-                   (region->end - region->start))
+               if (!region || resource_size(r) > resource_size(region))
                        region = r;
        }
        /* Nothing found, bail */
index 48211ca134c3b3845c80af2a8ab58d9549ffa776..11c9fce43b5b876a5078e1731a785d962137aeb9 100644 (file)
@@ -274,7 +274,7 @@ int __init via_calibrate_decr(void)
                return 0;
        }
        of_node_put(vias);
-       via = ioremap(rsrc.start, rsrc.end - rsrc.start + 1);
+       via = ioremap(rsrc.start, resource_size(&rsrc));
        if (via == NULL) {
                printk(KERN_ERR "Failed to map VIA for timer calibration !\n");
                return 0;
index bd0d54060b94048ffea74c4c30f0bed1eac10ebf..265f0f09395ae53c56f95b9c0e838939db6eb480 100644 (file)
@@ -203,7 +203,7 @@ static int axon_ram_probe(struct platform_device *device)
                goto failed;
        }
 
-       bank->size = resource.end - resource.start + 1;
+       bank->size = resource_size(&resource);
 
        if (bank->size == 0) {
                dev_err(&device->dev, "No DDR2 memory found for %s%d\n",
index 350787c83e2284e146d6421a7e8bab87cbec7a0c..5d7d59a43c4c821e98cb3ac68dcbf447be37445a 100644 (file)
@@ -148,7 +148,7 @@ unsigned int cpm_pic_init(void)
        if (ret)
                goto end;
 
-       cpic_reg = ioremap(res.start, res.end - res.start + 1);
+       cpic_reg = ioremap(res.start, resource_size(&res));
        if (cpic_reg == NULL)
                goto end;
 
index 2b69aa0315b3c5ec1ea9d87081209639d237aa6a..d55d0ad0deab937f28780e1673052b96d3b44439 100644 (file)
@@ -115,7 +115,7 @@ int cpm_muram_init(void)
                        max = r.end;
 
                rh_attach_region(&cpm_muram_info, r.start - muram_pbase,
-                                r.end - r.start + 1);
+                                resource_size(&r));
        }
 
        muram_vbase = ioremap(muram_pbase, max - muram_pbase + 1);
index 8e9e06a7ca59ab4c3d467fc9361c5527a989cf9f..4f2680f431b5070fa26aeecacb73edc0345fe453 100644 (file)
@@ -239,7 +239,7 @@ static int __init dart_init(struct device_node *dart_node)
                                         DARTMAP_RPNMASK);
 
        /* Map in DART registers */
-       dart = ioremap(r.start, r.end - r.start + 1);
+       dart = ioremap(r.start, resource_size(&r));
        if (dart == NULL)
                panic("DART: Cannot map registers!");
 
index 92e78333c47cca84490f8022126b4a4bee149cc5..419a77239bd7a31833952024ffaae3d3587160a3 100644 (file)
@@ -349,7 +349,7 @@ static int __devinit fsl_of_msi_probe(struct platform_device *dev)
                goto error_out;
        }
 
-       msi->msi_regs = ioremap(res.start, res.end - res.start + 1);
+       msi->msi_regs = ioremap(res.start, resource_size(&res));
        if (!msi->msi_regs) {
                dev_err(&dev->dev, "ioremap problem failed\n");
                goto error_out;
index 68ca9290df9451886e74d24fa4834c15780979f5..ba5cb3fa7074ea713945f2e6f52f18b233cb1e7e 100644 (file)
@@ -64,7 +64,7 @@ static int __init setup_one_atmu(struct ccsr_pci __iomem *pci,
 {
        resource_size_t pci_addr = res->start - offset;
        resource_size_t phys_addr = res->start;
-       resource_size_t size = res->end - res->start + 1;
+       resource_size_t size = resource_size(res);
        u32 flags = 0x80044000; /* enable & mem R/W */
        unsigned int i;
 
@@ -108,7 +108,7 @@ static void __init setup_pci_atmu(struct pci_controller *hose,
        char *name = hose->dn->full_name;
 
        pr_debug("PCI memory map start 0x%016llx, size 0x%016llx\n",
-                   (u64)rsrc->start, (u64)rsrc->end - (u64)rsrc->start + 1);
+                (u64)rsrc->start, (u64)resource_size(rsrc));
 
        if (of_device_is_compatible(hose->dn, "fsl,qoriq-pcie-v2.2")) {
                win_idx = 2;
@@ -116,7 +116,7 @@ static void __init setup_pci_atmu(struct pci_controller *hose,
                end_idx = 3;
        }
 
-       pci = ioremap(rsrc->start, rsrc->end - rsrc->start + 1);
+       pci = ioremap(rsrc->start, resource_size(rsrc));
        if (!pci) {
            dev_err(hose->parent, "Unable to map ATMU registers\n");
            return;
@@ -153,9 +153,9 @@ static void __init setup_pci_atmu(struct pci_controller *hose,
                } else {
                        pr_debug("PCI IO resource start 0x%016llx, size 0x%016llx, "
                                 "phy base 0x%016llx.\n",
-                               (u64)hose->io_resource.start,
-                               (u64)hose->io_resource.end - (u64)hose->io_resource.start + 1,
-                               (u64)hose->io_base_phys);
+                                (u64)hose->io_resource.start,
+                                (u64)resource_size(&hose->io_resource),
+                                (u64)hose->io_base_phys);
                        out_be32(&pci->pow[j].potar, (hose->io_resource.start >> 12));
                        out_be32(&pci->pow[j].potear, 0);
                        out_be32(&pci->pow[j].powbar, (hose->io_base_phys >> 12));
index 5b206a2fe17c47653632e516051984746ad2d587..95853386a6646965a4981841ccbcaef4a3a0a0f2 100644 (file)
@@ -1523,7 +1523,7 @@ int fsl_rio_setup(struct platform_device *dev)
        port->priv = priv;
        port->phys_efptr = 0x100;
 
-       priv->regs_win = ioremap(regs.start, regs.end - regs.start + 1);
+       priv->regs_win = ioremap(regs.start, resource_size(&regs));
        rio_regs_win = priv->regs_win;
 
        /* Probe the master port phy type */
index 7367d17364cb0ee37cf5addeacb7038030eb49f0..95da897f05a7f11f8fdf5c0ff297ed54813211ed 100644 (file)
@@ -736,7 +736,7 @@ struct ipic * __init ipic_init(struct device_node *node, unsigned int flags)
                return NULL;
        }
 
-       ipic->regs = ioremap(res.start, res.end - res.start + 1);
+       ipic->regs = ioremap(res.start, resource_size(&res));
 
        ipic->irqhost->host_data = ipic;
 
index ddc877a3a23a1abae323e3ab2f3a694fad9ff570..69f5814ae6d42684c753db9a29f4ece7d5054a7e 100644 (file)
@@ -129,7 +129,7 @@ int __init mmio_nvram_init(void)
                goto out;
        }
        nvram_addr = r.start;
-       mmio_nvram_len = r.end - r.start + 1;
+       mmio_nvram_len = resource_size(&r);
        if ( (!mmio_nvram_len) || (!nvram_addr) ) {
                printk(KERN_WARNING "nvram: address or length is 0\n");
                ret = -EIO;
index 20924f2246f016f97f577a0733d5149acb640ce3..22e48e2d71f107a59f6cb308393655eb39de0e64 100644 (file)
@@ -166,7 +166,7 @@ int mpc8xx_pic_init(void)
        if (ret)
                goto out;
 
-       siu_reg = ioremap(res.start, res.end - res.start + 1);
+       siu_reg = ioremap(res.start, resource_size(&res));
        if (siu_reg == NULL) {
                ret = -EINVAL;
                goto out;
index 2792dc8b038c6efe52f626ffadd4edde64d29777..50a81387e9b1537f70f195037319f395869d4cfb 100644 (file)
@@ -125,11 +125,11 @@ static void mv64x60_udbg_init(void)
 
        of_node_put(np);
 
-       mpsc_base = ioremap(r[0].start, r[0].end - r[0].start + 1);
+       mpsc_base = ioremap(r[0].start, resource_size(&r[0]));
        if (!mpsc_base)
                return;
 
-       mpsc_intr_cause = ioremap(r[1].start, r[1].end - r[1].start + 1);
+       mpsc_intr_cause = ioremap(r[1].start, resource_size(&r[1]));
        if (!mpsc_intr_cause) {
                iounmap(mpsc_base);
                return;
index 156aa7d362584048945c8f10475edcf801eb0e8b..deda60a7f99641646ae83f0221508d93b51273e1 100644 (file)
@@ -265,7 +265,7 @@ static void __init ppc4xx_configure_pci_PMMs(struct pci_controller *hose,
                if (ppc4xx_setup_one_pci_PMM(hose, reg,
                                             res->start,
                                             res->start - hose->pci_mem_offset,
-                                            res->end + 1 - res->start,
+                                            resource_size(res),
                                             res->flags,
                                             j) == 0) {
                        j++;
@@ -290,7 +290,7 @@ static void __init ppc4xx_configure_pci_PTMs(struct pci_controller *hose,
                                             void __iomem *reg,
                                             const struct resource *res)
 {
-       resource_size_t size = res->end - res->start + 1;
+       resource_size_t size = resource_size(res);
        u32 sa;
 
        /* Calculate window size */
@@ -349,7 +349,7 @@ static void __init ppc4xx_probe_pci_bridge(struct device_node *np)
        bus_range = of_get_property(np, "bus-range", NULL);
 
        /* Map registers */
-       reg = ioremap(rsrc_reg.start, rsrc_reg.end + 1 - rsrc_reg.start);
+       reg = ioremap(rsrc_reg.start, resource_size(&rsrc_reg));
        if (reg == NULL) {
                printk(KERN_ERR "%s: Can't map registers !", np->full_name);
                goto fail;
@@ -465,7 +465,7 @@ static void __init ppc4xx_configure_pcix_POMs(struct pci_controller *hose,
                if (ppc4xx_setup_one_pcix_POM(hose, reg,
                                              res->start,
                                              res->start - hose->pci_mem_offset,
-                                             res->end + 1 - res->start,
+                                             resource_size(res),
                                              res->flags,
                                              j) == 0) {
                        j++;
@@ -492,7 +492,7 @@ static void __init ppc4xx_configure_pcix_PIMs(struct pci_controller *hose,
                                              int big_pim,
                                              int enable_msi_hole)
 {
-       resource_size_t size = res->end - res->start + 1;
+       resource_size_t size = resource_size(res);
        u32 sa;
 
        /* RAM is always at 0 */
@@ -555,7 +555,7 @@ static void __init ppc4xx_probe_pcix_bridge(struct device_node *np)
        bus_range = of_get_property(np, "bus-range", NULL);
 
        /* Map registers */
-       reg = ioremap(rsrc_reg.start, rsrc_reg.end + 1 - rsrc_reg.start);
+       reg = ioremap(rsrc_reg.start, resource_size(&rsrc_reg));
        if (reg == NULL) {
                printk(KERN_ERR "%s: Can't map registers !", np->full_name);
                goto fail;
@@ -1604,7 +1604,7 @@ static void __init ppc4xx_configure_pciex_POMs(struct ppc4xx_pciex_port *port,
                if (ppc4xx_setup_one_pciex_POM(port, hose, mbase,
                                               res->start,
                                               res->start - hose->pci_mem_offset,
-                                              res->end + 1 - res->start,
+                                              resource_size(res),
                                               res->flags,
                                               j) == 0) {
                        j++;
@@ -1639,7 +1639,7 @@ static void __init ppc4xx_configure_pciex_PIMs(struct ppc4xx_pciex_port *port,
                                               void __iomem *mbase,
                                               struct resource *res)
 {
-       resource_size_t size = res->end - res->start + 1;
+       resource_size_t size = resource_size(res);
        u64 sa;
 
        if (port->endpoint) {
index b2acda07220dfd45fc941bb4d788d5fcac6ee32b..18e75ca19fe688d7e1eb6c321bce98d7214a8d38 100644 (file)
@@ -347,7 +347,7 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags,
                return;
        }
 
-       qe_ic->regs = ioremap(res.start, res.end - res.start + 1);
+       qe_ic->regs = ioremap(res.start, resource_size(&res));
 
        qe_ic->irqhost->host_data = qe_ic;
        qe_ic->hc_irq = qe_ic_irq_chip;
index 77e4934b88c5463dcd73c4b0f531aea79682b7d3..fd1a6c3b1721e73e6178f7b3209541ed2142e032 100644 (file)
@@ -41,7 +41,7 @@ int par_io_init(struct device_node *np)
        ret = of_address_to_resource(np, 0, &res);
        if (ret)
                return ret;
-       par_io = ioremap(res.start, res.end - res.start + 1);
+       par_io = ioremap(res.start, resource_size(&res));
 
        num_ports = of_get_property(np, "num-ports", NULL);
        if (num_ports)
index 1f15ad43614011a3bf4f395335ad5649b9dc41ec..039a7820ba7f0b9744645b962a9245dd9ef46033 100644 (file)
@@ -247,7 +247,7 @@ static int __init icp_native_init_one_node(struct device_node *np,
                        return -1;
                }
 
-               if (icp_native_map_one_cpu(*indx, r.start, r.end - r.start))
+               if (icp_native_map_one_cpu(*indx, r.start, resource_size(&r)))
                        return -1;
 
                (*indx)++;
index 32c385ef1011778cb172ddd33392343418b939b5..0f62f467275403554b018f26463cf7887592bf16 100644 (file)
@@ -58,7 +58,7 @@ int register_trapped_io(struct trapped_io *tiop)
 
        for (k = 0; k < tiop->num_resources; k++) {
                res = tiop->resource + k;
-               len += roundup((res->end - res->start) + 1, PAGE_SIZE);
+               len += roundup(resource_size(res), PAGE_SIZE);
                flags |= res->flags;
        }
 
@@ -85,7 +85,7 @@ int register_trapped_io(struct trapped_io *tiop)
                       (unsigned long)(tiop->virt_base + len),
                       res->flags & IORESOURCE_IO ? "io" : "mmio",
                       (unsigned long)res->start);
-               len += roundup((res->end - res->start) + 1, PAGE_SIZE);
+               len += roundup(resource_size(res), PAGE_SIZE);
        }
 
        tiop->magic = IO_TRAPPED_MAGIC;
@@ -128,7 +128,7 @@ void __iomem *match_trapped_io_handler(struct list_head *list,
                                return tiop->virt_base + voffs;
                        }
 
-                       len = (res->end - res->start) + 1;
+                       len = resource_size(res);
                        voffs += roundup(len, PAGE_SIZE);
                }
        }
@@ -173,7 +173,7 @@ static unsigned long lookup_address(struct trapped_io *tiop,
 
        for (k = 0; k < tiop->num_resources; k++) {
                res = tiop->resource + k;
-               len = roundup((res->end - res->start) + 1, PAGE_SIZE);
+               len = roundup(resource_size(res), PAGE_SIZE);
                if (address < (vaddr + len))
                        return res->start + (address - vaddr);
                vaddr += len;
index e2a3af31ff9930b534c5b1ee7e5bce9721905ba1..c5a33f007f886b571443a96d5c4c4f30847269ef 100644 (file)
@@ -170,7 +170,7 @@ void __init reserve_crashkernel(void)
        if (crashk_res.end == crashk_res.start)
                goto disable;
 
-       crash_size = PAGE_ALIGN(crashk_res.end - crashk_res.start + 1);
+       crash_size = PAGE_ALIGN(resource_size(&crashk_res));
        if (!crashk_res.start) {
                unsigned long max = memblock_end_of_DRAM() - memory_limit;
                crashk_res.start = __memblock_alloc_base(crash_size, PAGE_SIZE, max);
index 1c9c80a1a86af87611d4b77cc8b5a2c5244d1574..6ffccd6e0156aa87e9d5ca4134bf15a4b036d89f 100644 (file)
@@ -228,7 +228,7 @@ _sparc_ioremap(struct resource *res, u32 bus, u32 pa, int sz)
        }
 
        pa &= PAGE_MASK;
-       sparc_mapiorange(bus, pa, res->start, res->end - res->start + 1);
+       sparc_mapiorange(bus, pa, res->start, resource_size(res));
 
        return (void __iomem *)(unsigned long)(res->start + offset);
 }
@@ -240,7 +240,7 @@ static void _sparc_free_io(struct resource *res)
 {
        unsigned long plen;
 
-       plen = res->end - res->start + 1;
+       plen = resource_size(res);
        BUG_ON((plen & (PAGE_SIZE-1)) != 0);
        sparc_unmapiorange(res->start, plen);
        release_resource(res);
@@ -331,9 +331,9 @@ static void sbus_free_coherent(struct device *dev, size_t n, void *p,
        }
 
        n = PAGE_ALIGN(n);
-       if ((res->end-res->start)+1 != n) {
+       if (resource_size(res) != n) {
                printk("sbus_free_consistent: region 0x%lx asked 0x%zx\n",
-                   (long)((res->end-res->start)+1), n);
+                   (long)resource_size(res), n);
                return;
        }
 
@@ -504,9 +504,9 @@ static void pci32_free_coherent(struct device *dev, size_t n, void *p,
        }
 
        n = PAGE_ALIGN(n);
-       if ((res->end-res->start)+1 != n) {
+       if (resource_size(res) != n) {
                printk("pci_free_consistent: region 0x%lx asked 0x%lx\n",
-                   (long)((res->end-res->start)+1), (long)n);
+                   (long)resource_size(res), (long)n);
                return;
        }
 
index 713dc91020a623f8ba5c6904810220b256092545..2d1453dd93d5f5eed9b10a8621270dcdd3b3883f 100644 (file)
@@ -820,11 +820,9 @@ static int __pci_mmap_make_offset_bus(struct pci_dev *pdev, struct vm_area_struc
        unsigned long space_size, user_offset, user_size;
 
        if (mmap_state == pci_mmap_io) {
-               space_size = (pbm->io_space.end -
-                             pbm->io_space.start) + 1;
+               space_size = resource_size(&pbm->io_space);
        } else {
-               space_size = (pbm->mem_space.end -
-                             pbm->mem_space.start) + 1;
+               space_size = resource_size(&pbm->mem_space);
        }
 
        /* Make sure the request is in range. */
index 6cdc9ba55fe0443dd8906fd60056d1ad9e6e783f..5f85d8b34dbb0ed717484c03954a1254f4c5f0b1 100644 (file)
@@ -553,8 +553,7 @@ static void __init setup_bootmem_allocator(void)
 
 #ifdef CONFIG_KEXEC
        if (crashk_res.start != crashk_res.end)
-               reserve_bootmem(crashk_res.start,
-                       crashk_res.end - crashk_res.start + 1, 0);
+               reserve_bootmem(crashk_res.start, resource_size(&crashk_res), 0);
 #endif
 }
 
index e8c33a3020063b8425f48bae80f78c083da3fc91..726494b5834584d85ccc461f8a8ac04d283c1e31 100644 (file)
@@ -1553,7 +1553,7 @@ static void __init calgary_fixup_one_tce_space(struct pci_dev *dev)
                        continue;
 
                /* cover the whole region */
-               npages = (r->end - r->start) >> PAGE_SHIFT;
+               npages = resource_size(r) >> PAGE_SHIFT;
                npages++;
 
                iommu_range_reserve(tbl, r->start, npages);
index ba0a4cce53be2d70cf4b14c07e39d9756907d110..63228035f9d7417c758960ae69b844756fda3ee0 100644 (file)
@@ -234,7 +234,7 @@ void __init probe_roms(void)
        /* check for extension rom (ignore length byte!) */
        rom = isa_bus_to_virt(extension_rom_resource.start);
        if (romsignature(rom)) {
-               length = extension_rom_resource.end - extension_rom_resource.start + 1;
+               length = resource_size(&extension_rom_resource);
                if (romchecksum(rom, length)) {
                        request_resource(&iomem_resource, &extension_rom_resource);
                        upper = extension_rom_resource.start;
index cf39bc08ce08e3a0dbfa975cdc7fda4d053e656e..0c688232aab3596824cd37ce4f1c6b0a4f90a351 100644 (file)
@@ -212,7 +212,7 @@ static int bsr_add_node(struct device_node *bn)
 
                cur->bsr_minor  = i + total_bsr_devs;
                cur->bsr_addr   = res.start;
-               cur->bsr_len    = res.end - res.start + 1;
+               cur->bsr_len    = resource_size(&res);
                cur->bsr_bytes  = bsr_bytes[i];
                cur->bsr_stride = bsr_stride[i];
                cur->bsr_dev    = MKDEV(bsr_major, i + total_bsr_devs);
index 39ccdeada79101fe2e910328110843fd569d3188..e90e1c74fd4c1f61a006dc82dbfe481d38c84ceb 100644 (file)
@@ -621,7 +621,7 @@ static int __devinit hwicap_setup(struct device *dev, int id,
 
        drvdata->mem_start = regs_res->start;
        drvdata->mem_end = regs_res->end;
-       drvdata->mem_size = regs_res->end - regs_res->start + 1;
+       drvdata->mem_size = resource_size(regs_res);
 
        if (!request_mem_region(drvdata->mem_start,
                                        drvdata->mem_size, DRIVER_NAME)) {
index 954e334e01bbea5a5c028f445dd8551dd51dd718..06f9f27dbe7cdfcd1639f3644727d23ed5a20799 100644 (file)
@@ -1304,8 +1304,7 @@ static int mv_xor_shared_probe(struct platform_device *pdev)
        if (!res)
                return -ENODEV;
 
-       msp->xor_base = devm_ioremap(&pdev->dev, res->start,
-                                    res->end - res->start + 1);
+       msp->xor_base = devm_ioremap(&pdev->dev, res->start, resource_size(res));
        if (!msp->xor_base)
                return -EBUSY;
 
@@ -1314,7 +1313,7 @@ static int mv_xor_shared_probe(struct platform_device *pdev)
                return -ENODEV;
 
        msp->xor_high_base = devm_ioremap(&pdev->dev, res->start,
-                                         res->end - res->start + 1);
+                                         resource_size(res));
        if (!msp->xor_high_base)
                return -EBUSY;
 
index db1df59ae2b6f72c739eba721ea051d2fc66bc5a..9a6a274e6925f2c03edf2a92fda72b28f1d65aa6 100644 (file)
@@ -140,7 +140,7 @@ static void __devinit cell_edac_init_csrows(struct mem_ctl_info *mci)
                if (of_node_to_nid(np) != priv->node)
                        continue;
                csrow->first_page = r.start >> PAGE_SHIFT;
-               csrow->nr_pages = (r.end - r.start + 1) >> PAGE_SHIFT;
+               csrow->nr_pages = resource_size(&r) >> PAGE_SHIFT;
                csrow->last_page = csrow->first_page + csrow->nr_pages - 1;
                csrow->mtype = MEM_XDR;
                csrow->edac_mode = EDAC_SECDED;
index 38ab8e2cd7f4f864500aa3cac45dedb76e51d50c..11e1a5dad96fe417963286227dcc244b96da82a9 100644 (file)
@@ -538,15 +538,15 @@ static int __devinit mpc85xx_l2_err_probe(struct platform_device *op)
        /* we only need the error registers */
        r.start += 0xe00;
 
-       if (!devm_request_mem_region(&op->dev, r.start,
-                                    r.end - r.start + 1, pdata->name)) {
+       if (!devm_request_mem_region(&op->dev, r.start, resource_size(&r),
+                                    pdata->name)) {
                printk(KERN_ERR "%s: Error while requesting mem region\n",
                       __func__);
                res = -EBUSY;
                goto err;
        }
 
-       pdata->l2_vbase = devm_ioremap(&op->dev, r.start, r.end - r.start + 1);
+       pdata->l2_vbase = devm_ioremap(&op->dev, r.start, resource_size(&r));
        if (!pdata->l2_vbase) {
                printk(KERN_ERR "%s: Unable to setup L2 err regs\n", __func__);
                res = -ENOMEM;
@@ -987,15 +987,15 @@ static int __devinit mpc85xx_mc_err_probe(struct platform_device *op)
                goto err;
        }
 
-       if (!devm_request_mem_region(&op->dev, r.start,
-                                    r.end - r.start + 1, pdata->name)) {
+       if (!devm_request_mem_region(&op->dev, r.start, resource_size(&r),
+                                    pdata->name)) {
                printk(KERN_ERR "%s: Error while requesting mem region\n",
                       __func__);
                res = -EBUSY;
                goto err;
        }
 
-       pdata->mc_vbase = devm_ioremap(&op->dev, r.start, r.end - r.start + 1);
+       pdata->mc_vbase = devm_ioremap(&op->dev, r.start, resource_size(&r));
        if (!pdata->mc_vbase) {
                printk(KERN_ERR "%s: Unable to setup MC err regs\n", __func__);
                res = -ENOMEM;
index d92790140fe53852bd4e571ed29fe95f490e8e77..1a86fefd0f83f2a9f3969e5b96c1bfde53e1da1c 100644 (file)
@@ -581,8 +581,8 @@ static int __init gpio_probe(struct platform_device *pdev)
        if (!memres)
                goto err_no_resource;
 
-       if (request_mem_region(memres->start, memres->end - memres->start, "GPIO Controller")
-           == NULL) {
+       if (!request_mem_region(memres->start, resource_size(memres),
+                               "GPIO Controller")) {
                err = -ENODEV;
                goto err_no_ioregion;
        }
@@ -640,7 +640,7 @@ static int __init gpio_probe(struct platform_device *pdev)
                free_irq(gpio_ports[i].irq, &gpio_ports[i]);
        iounmap(virtbase);
  err_no_ioremap:
-       release_mem_region(memres->start, memres->end - memres->start);
+       release_mem_region(memres->start, resource_size(memres));
  err_no_ioregion:
  err_no_resource:
        clk_disable(clk);
@@ -660,7 +660,7 @@ static int __exit gpio_remove(struct platform_device *pdev)
        for (i = 0 ; i < U300_GPIO_NUM_PORTS; i++)
                free_irq(gpio_ports[i].irq, &gpio_ports[i]);
        iounmap(virtbase);
-       release_mem_region(memres->start, memres->end - memres->start);
+       release_mem_region(memres->start, resource_size(memres));
        clk_disable(clk);
        clk_put(clk);
        return 0;
index 9e8f4e1b0cc9c4c650a375e47c35712cd6696970..712c7904d03e5d460854cc565bf139bf29f3290e 100644 (file)
@@ -342,7 +342,7 @@ static int __init palm_bk3710_probe(struct platform_device *pdev)
                return -ENODEV;
        }
 
-       mem_size = mem->end - mem->start + 1;
+       mem_size = resource_size(mem);
        if (request_mem_region(mem->start, mem_size, "palm_bk3710") == NULL) {
                printk(KERN_ERR "failed to request memory region\n");
                return -EBUSY;
index bed3e39aac9610ac2434558e32295b1c59a8e8ea..71c231954972d304f6e402995ae963b56c20763b 100644 (file)
@@ -551,10 +551,10 @@ static int __init tx4939ide_probe(struct platform_device *pdev)
                return -ENODEV;
 
        if (!devm_request_mem_region(&pdev->dev, res->start,
-                                    res->end - res->start + 1, "tx4938ide"))
+                                    resource_size(res), "tx4938ide"))
                return -EBUSY;
        mapbase = (unsigned long)devm_ioremap(&pdev->dev, res->start,
-                                             res->end - res->start + 1);
+                                             resource_size(res));
        if (!mapbase)
                return -EBUSY;
        memset(&hw, 0, sizeof(hw));
index d55874e5d1c2d1b72f58b40d1dbe270614f120d6..44fc8b4bcd8157632b5e4bab9b8851dcac9e6523 100644 (file)
@@ -300,8 +300,7 @@ static int __devinit ps2_probe(struct sa1111_dev *dev)
 
  out:
        sa1111_disable_device(ps2if->dev);
-       release_mem_region(dev->res.start,
-                          dev->res.end - dev->res.start + 1);
+       release_mem_region(dev->res.start, resource_size(&dev->res));
  free:
        sa1111_set_drvdata(dev, NULL);
        kfree(ps2if);
@@ -317,8 +316,7 @@ static int __devexit ps2_remove(struct sa1111_dev *dev)
        struct ps2if *ps2if = sa1111_get_drvdata(dev);
 
        serio_unregister_port(ps2if->io);
-       release_mem_region(dev->res.start,
-                          dev->res.end - dev->res.start + 1);
+       release_mem_region(dev->res.start, resource_size(&dev->res));
        sa1111_set_drvdata(dev, NULL);
 
        kfree(ps2if);
index 9f3bfc1eb2402648a25dc0c1e90ce21cc374e50b..af9680273ff9723b56f2285532a084dd2bbc49c2 100644 (file)
@@ -422,7 +422,7 @@ static int __init vpif_probe(struct platform_device *pdev)
        if (!res)
                return -ENOENT;
 
-       res_len = res->end - res->start + 1;
+       res_len = resource_size(res);
 
        res = request_mem_region(res->start, res_len, res->name);
        if (!res)
index f6626e87dbc55248577f3d479067a87316a8ac99..69b60ba5dd7a90830ad175b9b4f4dfde60a2dd3d 100644 (file)
@@ -1768,14 +1768,13 @@ static int __devinit omap24xxcam_probe(struct platform_device *pdev)
                dev_err(cam->dev, "no mem resource?\n");
                goto err;
        }
-       if (!request_mem_region(mem->start, (mem->end - mem->start) + 1,
-                               pdev->name)) {
+       if (!request_mem_region(mem->start, resource_size(mem), pdev->name)) {
                dev_err(cam->dev,
                        "cannot reserve camera register I/O region\n");
                goto err;
        }
        cam->mmio_base_phys = mem->start;
-       cam->mmio_size = (mem->end - mem->start) + 1;
+       cam->mmio_size = resource_size(mem);
 
        /* map the region */
        cam->mmio_base = (unsigned long)
index 090d2a3a6548e0aa2d56ca5350a6ae2d012945a7..a8c08f332da04c596cf1ae3aa33c2a09f1a4f892 100644 (file)
@@ -681,11 +681,11 @@ static int i2o_iop_systab_set(struct i2o_controller *c)
                if (root && allocate_resource(root, res, sb->desired_mem_size, sb->desired_mem_size, sb->desired_mem_size, 1 << 20,     /* Unspecified, so use 1Mb and play safe */
                                              NULL, NULL) >= 0) {
                        c->mem_alloc = 1;
-                       sb->current_mem_size = 1 + res->end - res->start;
+                       sb->current_mem_size = resource_size(res);
                        sb->current_mem_base = res->start;
                        osm_info("%s: allocated %llu bytes of PCI memory at "
                                "0x%016llX.\n", c->name,
-                               (unsigned long long)(1 + res->end - res->start),
+                               (unsigned long long)resource_size(res),
                                (unsigned long long)res->start);
                }
        }
@@ -703,11 +703,11 @@ static int i2o_iop_systab_set(struct i2o_controller *c)
                if (root && allocate_resource(root, res, sb->desired_io_size, sb->desired_io_size, sb->desired_io_size, 1 << 20,        /* Unspecified, so use 1Mb and play safe */
                                              NULL, NULL) >= 0) {
                        c->io_alloc = 1;
-                       sb->current_io_size = 1 + res->end - res->start;
+                       sb->current_io_size = resource_size(res);
                        sb->current_mem_base = res->start;
                        osm_info("%s: allocated %llu bytes of PCI I/O at "
                                "0x%016llX.\n", c->name,
-                               (unsigned long long)(1 + res->end - res->start),
+                               (unsigned long long)resource_size(res),
                                (unsigned long long)res->start);
                }
        }
index ad715bf49cac916fa86b15179c3f6415ecec265f..71bc835324d8743d55ff95383b03027652645f7b 100644 (file)
@@ -177,7 +177,7 @@ static int __devinit tc6387xb_probe(struct platform_device *dev)
        if (ret)
                goto err_resource;
 
-       tc6387xb->scr = ioremap(rscr->start, rscr->end - rscr->start + 1);
+       tc6387xb->scr = ioremap(rscr->start, resource_size(rscr));
        if (!tc6387xb->scr) {
                ret = -ENOMEM;
                goto err_ioremap;
index 4afffe610f99d09a34e28790cbf67971012c70ea..769a4e8e10dc17a0a10e8e206b24567a2ba6747f 100644 (file)
@@ -95,7 +95,7 @@ static int __init ssc_probe(struct platform_device *pdev)
        }
 
        ssc->pdev = pdev;
-       ssc->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       ssc->regs = ioremap(regs->start, resource_size(regs));
        if (!ssc->regs) {
                dev_dbg(&pdev->dev, "ioremap failed\n");
                retval = -EINVAL;
index 0f3fb4f03bdf0b93851cfa10156296c6303d7557..28f5aaa19d4a289b8b0cf9241f42ab641e4051ca 100644 (file)
@@ -329,7 +329,7 @@ static int __init pwm_probe(struct platform_device *pdev)
        p->pdev = pdev;
        p->mask = *mp;
        p->irq = irq;
-       p->base = ioremap(r->start, r->end - r->start + 1);
+       p->base = ioremap(r->start, resource_size(r));
        if (!p->base)
                goto fail;
        p->clk = clk_get(&pdev->dev, "pwm_clk");
index 66dcddb9c20592690c31cd233af7354018c1f4b2..2a069f908b27fc31f2f7d9c8dcd24e138042a5d0 100644 (file)
@@ -1595,7 +1595,7 @@ static int dw_mci_probe(struct platform_device *pdev)
        INIT_LIST_HEAD(&host->queue);
 
        ret = -ENOMEM;
-       host->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       host->regs = ioremap(regs->start, resource_size(regs));
        if (!host->regs)
                goto err_freehost;
 
index d4297a97e1002d73769c6d7d7829a0fee12c17b9..67815eed2f0039b94a8e86301cf21bc4b88b9df5 100644 (file)
@@ -142,7 +142,7 @@ static int __devinit bfin_flash_probe(struct platform_device *pdev)
        state->map.write      = bfin_flash_write;
        state->map.copy_to    = bfin_flash_copy_to;
        state->map.bankwidth  = pdata->width;
-       state->map.size       = memory->end - memory->start + 1;
+       state->map.size       = resource_size(memory);
        state->map.virt       = (void __iomem *)memory->start;
        state->map.phys       = memory->start;
        state->map.map_priv_1 = (unsigned long)state;
index c00b9175ba9e7c3a747a0ecba02c17486419d106..1594a802631d439f008c58b601e5c29ab6d14a21 100644 (file)
@@ -155,7 +155,7 @@ static int ixp2000_flash_probe(struct platform_device *dev)
        if (!plat)
                return -ENODEV;
 
-       window_size = dev->resource->end - dev->resource->start + 1;
+       window_size = resource_size(dev->resource);
        dev_info(&dev->dev, "Probe of IXP2000 flash(%d banks x %dMiB)\n",
                 ixp_data->nr_banks, ((u32)window_size >> 20));
 
@@ -194,16 +194,17 @@ static int ixp2000_flash_probe(struct platform_device *dev)
        info->map.copy_to = ixp2000_flash_copy_to;
 
        info->res = request_mem_region(dev->resource->start,
-                       dev->resource->end - dev->resource->start + 1,
-                       dev_name(&dev->dev));
+                                      resource_size(dev->resource),
+                                      dev_name(&dev->dev));
        if (!info->res) {
                dev_err(&dev->dev, "Could not reserve memory region\n");
                err = -ENOMEM;
                goto Error;
        }
 
-       info->map.map_priv_1 = (unsigned long) ioremap(dev->resource->start,
-                               dev->resource->end - dev->resource->start + 1);
+       info->map.map_priv_1 =
+               (unsigned long)ioremap(dev->resource->start,
+                                      resource_size(dev->resource));
        if (!info->map.map_priv_1) {
                dev_err(&dev->dev, "Failed to ioremap flash region\n");
                err = -EIO;
index f59d62f74d44a39ed9ccea62358ed64e57361f56..7ae137d4b99871bbbe94f6b11effa25b5537875d 100644 (file)
@@ -70,7 +70,7 @@ static int __devinit pxa2xx_flash_probe(struct platform_device *pdev)
        info->map.name = (char *) flash->name;
        info->map.bankwidth = flash->width;
        info->map.phys = res->start;
-       info->map.size = res->end - res->start + 1;
+       info->map.size = resource_size(res);
        info->parts = flash->parts;
        info->nr_parts = flash->nr_parts;
 
index b300705d41cb67ce432023f003b2ee63904d59ab..d4ba1f218e9a84aef7b488f3970a21bdc84cd64e 100644 (file)
@@ -513,7 +513,7 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
 
        host->io_phys = (dma_addr_t)mem->start;
 
-       host->io_base = ioremap(mem->start, mem->end - mem->start + 1);
+       host->io_base = ioremap(mem->start, resource_size(mem));
        if (host->io_base == NULL) {
                printk(KERN_ERR "atmel_nand: ioremap failed\n");
                res = -EIO;
@@ -547,7 +547,7 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
        if (no_ecc)
                nand_chip->ecc.mode = NAND_ECC_NONE;
        if (hard_ecc && regs) {
-               host->ecc = ioremap(regs->start, regs->end - regs->start + 1);
+               host->ecc = ioremap(regs->start, resource_size(regs));
                if (host->ecc == NULL) {
                        printk(KERN_ERR "atmel_nand: ioremap failed\n");
                        res = -EIO;
index 9ec280738a9a51f3b22519e76103328445ae3954..8c569e454dc5b52248fa98017e0d1071f6700f64 100644 (file)
@@ -380,7 +380,7 @@ static int __devinit bcm_umi_nand_probe(struct platform_device *pdev)
                return -ENXIO;
 
        /* map physical address */
-       bcm_umi_io_base = ioremap(r->start, r->end - r->start + 1);
+       bcm_umi_io_base = ioremap(r->start, resource_size(r));
 
        if (!bcm_umi_io_base) {
                printk(KERN_ERR "ioremap to access BCM UMI NAND chip failed\n");
index 2f7c930872f9b5715bcd0313e0251f93010ef3a6..eb1fbac63eb6015ce2804d7e676698c4b51cd3ed 100644 (file)
@@ -713,7 +713,7 @@ static int __devinit mpc5121_nfc_probe(struct platform_device *op)
        }
 
        regs_paddr = res.start;
-       regs_size = res.end - res.start + 1;
+       regs_size = resource_size(&res);
 
        if (!devm_request_mem_region(dev, regs_paddr, regs_size, DRV_NAME)) {
                dev_err(dev, "Error requesting memory region!\n");
index f1573d492e90c1b886ed0b52d34b4e867649bb18..85045cde3126aaebee49cbbe72b24452aa380eb5 100644 (file)
@@ -1646,7 +1646,7 @@ static int __devinit bcm_enet_probe(struct platform_device *pdev)
        if (ret)
                goto out;
 
-       iomem_size = res_mem->end - res_mem->start + 1;
+       iomem_size = resource_size(res_mem);
        if (!request_mem_region(res_mem->start, iomem_size, "bcm63xx_enet")) {
                ret = -EBUSY;
                goto out;
@@ -1861,7 +1861,7 @@ static int __devexit bcm_enet_remove(struct platform_device *pdev)
        /* release device resources */
        iounmap(priv->base);
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       release_mem_region(res->start, res->end - res->start + 1);
+       release_mem_region(res->start, resource_size(res));
 
        /* disable hw block clocks */
        if (priv->phy_clk) {
@@ -1897,7 +1897,7 @@ static int __devinit bcm_enet_shared_probe(struct platform_device *pdev)
        if (!res)
                return -ENODEV;
 
-       iomem_size = res->end - res->start + 1;
+       iomem_size = resource_size(res);
        if (!request_mem_region(res->start, iomem_size, "bcm63xx_enet_dma"))
                return -EBUSY;
 
@@ -1915,7 +1915,7 @@ static int __devexit bcm_enet_shared_remove(struct platform_device *pdev)
 
        iounmap(bcm_enet_shared_base);
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       release_mem_region(res->start, res->end - res->start + 1);
+       release_mem_region(res->start, resource_size(res));
        return 0;
 }
 
index 60a49e5a2a53227338f9d94a27524c571a355d28..f76e88e74285549c25ce330c92788576769d841c 100644 (file)
@@ -799,7 +799,7 @@ static __devinit int softing_pdev_probe(struct platform_device *pdev)
        if (!pres)
                goto platform_resource_failed;
        card->dpram_phys = pres->start;
-       card->dpram_size = pres->end - pres->start + 1;
+       card->dpram_size = resource_size(pres);
        card->dpram = ioremap_nocache(card->dpram_phys, card->dpram_size);
        if (!card->dpram) {
                dev_alert(&card->pdev->dev, "dpram ioremap failed\n");
index dcc4a170b0f397ed5362341a8d5a62fb07d411a4..c35ba5fba8f60a88ee0b043740ce46f61435e55b 100644 (file)
@@ -1821,7 +1821,7 @@ static int __devinit davinci_emac_probe(struct platform_device *pdev)
        }
 
        priv->emac_base_phys = res->start + pdata->ctrl_reg_offset;
-       size = res->end - res->start + 1;
+       size = resource_size(res);
        if (!request_mem_region(res->start, size, ndev->name)) {
                dev_err(&pdev->dev, "failed request_mem_region() for regs\n");
                rc = -ENXIO;
@@ -1926,7 +1926,7 @@ no_irq_res:
        cpdma_ctlr_destroy(priv->dma);
 no_dma:
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       release_mem_region(res->start, res->end - res->start + 1);
+       release_mem_region(res->start, resource_size(res));
        iounmap(priv->remap_addr);
 
 probe_quit:
@@ -1960,7 +1960,7 @@ static int __devexit davinci_emac_remove(struct platform_device *pdev)
                cpdma_chan_destroy(priv->rxchan);
        cpdma_ctlr_destroy(priv->dma);
 
-       release_mem_region(res->start, res->end - res->start + 1);
+       release_mem_region(res->start, resource_size(res));
 
        unregister_netdev(ndev);
        iounmap(priv->remap_addr);
index a83dd312c3ac1ae07d68651d9b1d4b0c54635551..15e4a71fbf1e56f27232b257601180c39579f036 100644 (file)
@@ -965,7 +965,7 @@ static int __devinit ethoc_probe(struct platform_device *pdev)
        priv = netdev_priv(netdev);
        priv->netdev = netdev;
        priv->dma_alloc = 0;
-       priv->io_region_size = mmio->end - mmio->start + 1;
+       priv->io_region_size = resource_size(mmio);
 
        priv->iobase = devm_ioremap_nocache(&pdev->dev, netdev->base_addr,
                        resource_size(mmio));
index 9f81b1ac130e4f651bff6e73c7cec441d5dfe4db..fe57eee8a679359adeb986cd6be451abbd1c7d90 100644 (file)
@@ -867,10 +867,11 @@ static int __devinit mpc52xx_fec_probe(struct platform_device *op)
                                "Error while parsing device node resource\n" );
                goto err_netdev;
        }
-       if ((mem.end - mem.start + 1) < sizeof(struct mpc52xx_fec)) {
+       if (resource_size(&mem) < sizeof(struct mpc52xx_fec)) {
                printk(KERN_ERR DRIVER_NAME
-                       " - invalid resource size (%lx < %x), check mpc52xx_devices.c\n",
-                       (unsigned long)(mem.end - mem.start + 1), sizeof(struct mpc52xx_fec));
+                      " - invalid resource size (%lx < %x), check mpc52xx_devices.c\n",
+                      (unsigned long)resource_size(&mem),
+                      sizeof(struct mpc52xx_fec));
                rv = -EINVAL;
                goto err_netdev;
        }
index ad2975440719fd168b1da705adf061d04190bd45..b09270b5d0a56fe484ac0d5a6a77ddaf995adfec 100644 (file)
@@ -120,7 +120,7 @@ static int __devinit fs_mii_bitbang_init(struct mii_bus *bus,
        if (ret)
                return ret;
 
-       if (res.end - res.start < 13)
+       if (resource_size(&res) <= 13)
                return -ENODEV;
 
        /* This should really encode the pin number as well, but all
@@ -139,7 +139,7 @@ static int __devinit fs_mii_bitbang_init(struct mii_bus *bus,
                return -ENODEV;
        mdc_pin = *data;
 
-       bitbang->dir = ioremap(res.start, res.end - res.start + 1);
+       bitbang->dir = ioremap(res.start, resource_size(&res));
        if (!bitbang->dir)
                return -ENOMEM;
 
index 6a2e150e75bb2d774d2afc50f3913f558c92ae77..e0e9d6c35d83f61dee22ae9c4c8d54d82e6e538e 100644 (file)
@@ -136,7 +136,7 @@ static int __devinit fs_enet_mdio_probe(struct platform_device *ofdev)
 
        snprintf(new_bus->id, MII_BUS_ID_SIZE, "%x", res.start);
 
-       fec->fecp = ioremap(res.start, res.end - res.start + 1);
+       fec->fecp = ioremap(res.start, resource_size(&res));
        if (!fec->fecp)
                goto out_fec;
 
index d8e175382d1d2e7f44786309b688ef50396cf40d..1c97861596f03cbcdcfa1aa30daac23360f90f4e 100644 (file)
@@ -491,7 +491,7 @@ static int gianfar_ptp_probe(struct platform_device *dev)
        spin_lock_init(&etsects->lock);
 
        etsects->regs = ioremap(etsects->rsrc->start,
-                               1 + etsects->rsrc->end - etsects->rsrc->start);
+                               resource_size(etsects->rsrc));
        if (!etsects->regs) {
                pr_err("ioremap ptp registers failed\n");
                goto no_ioremap;
index 079450fe5e96d040b4c35edd270e94abfba4a842..725399ea06902f33e7e480b7f4f31826e019b7be 100644 (file)
@@ -2770,7 +2770,7 @@ static int __devinit emac_probe(struct platform_device *ofdev)
        }
        // TODO : request_mem_region
        dev->emacp = ioremap(dev->rsrc_regs.start,
-                            dev->rsrc_regs.end - dev->rsrc_regs.start + 1);
+                            resource_size(&dev->rsrc_regs));
        if (dev->emacp == NULL) {
                printk(KERN_ERR "%s: Can't map device registers!\n",
                       np->full_name);
index 6c6a02869dfcaee3fd3800f30234923b5d455252..27125cdd7e0139c848293ffbb359fae5b02b360f 100644 (file)
@@ -1169,7 +1169,7 @@ static int __init macb_probe(struct platform_device *pdev)
        clk_enable(bp->hclk);
 #endif
 
-       bp->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       bp->regs = ioremap(regs->start, resource_size(regs));
        if (!bp->regs) {
                dev_err(&pdev->dev, "failed to map registers, aborting.\n");
                err = -ENOMEM;
index a5d9b1c310b38beb48f27b3828384be3e032a006..b7564825738190cb5753a52ac447c2147b17a2d6 100644 (file)
@@ -2593,7 +2593,7 @@ static int mv643xx_eth_shared_probe(struct platform_device *pdev)
        if (msp == NULL)
                goto out;
 
-       msp->base = ioremap(res->start, res->end - res->start + 1);
+       msp->base = ioremap(res->start, resource_size(res));
        if (msp->base == NULL)
                goto out_free;
 
index 89f7540d90f909708fa318dbe9ecf6458252a922..df1292eb9c2e6862b43f2ea687d145dcc80dfe90 100644 (file)
@@ -1502,7 +1502,7 @@ static int pxa168_eth_probe(struct platform_device *pdev)
                err = -ENODEV;
                goto err_netdev;
        }
-       pep->base = ioremap(res->start, res->end - res->start + 1);
+       pep->base = ioremap(res->start, resource_size(res));
        if (pep->base == NULL) {
                err = -ENOMEM;
                goto err_netdev;
index 68d50429ddf3bfa1295491c0e042807aa503f856..ea65f7ec360a346259583505fb998ce8406b6b3b 100644 (file)
@@ -2597,7 +2597,7 @@ static int __devinit sbmac_probe(struct platform_device *pldev)
 
        res = platform_get_resource(pldev, IORESOURCE_MEM, 0);
        BUG_ON(!res);
-       sbm_base = ioremap_nocache(res->start, res->end - res->start + 1);
+       sbm_base = ioremap_nocache(res->start, resource_size(res));
        if (!sbm_base) {
                printk(KERN_ERR "%s: unable to map device registers\n",
                       dev_name(&pldev->dev));
index 2c5ac2bf5c565ecd03041b4b9117f8742fb877bf..844f6137970ae1e9247e3ccf9dc5b1a373097896 100644 (file)
@@ -293,7 +293,7 @@ static int parport_ax88796_probe(struct platform_device *pdev)
                goto exit_mem;
        }
 
-       size = (res->end - res->start) + 1;
+       size = resource_size(res);
        spacing = size / 3;
 
        dd->io = request_mem_region(res->start, size, pdev->name);
index 071b7dc0094b5eeab56f32ef2c2a13d357334a27..efa30da1ae8f6b4562cde92bf4ddeffbe48def51 100644 (file)
@@ -50,29 +50,26 @@ static ssize_t show_ctrl (struct device *dev, struct device_attribute *attr, cha
        pci_bus_for_each_resource(bus, res, index) {
                if (res && (res->flags & IORESOURCE_MEM) &&
                                !(res->flags & IORESOURCE_PREFETCH)) {
-                       out += sprintf(out, "start = %8.8llx, "
-                                       "length = %8.8llx\n",
-                                       (unsigned long long)res->start,
-                                       (unsigned long long)(res->end - res->start));
+                       out += sprintf(out, "start = %8.8llx, length = %8.8llx\n",
+                                      (unsigned long long)res->start,
+                                      (unsigned long long)resource_size(res));
                }
        }
        out += sprintf(out, "Free resources: prefetchable memory\n");
        pci_bus_for_each_resource(bus, res, index) {
                if (res && (res->flags & IORESOURCE_MEM) &&
                               (res->flags & IORESOURCE_PREFETCH)) {
-                       out += sprintf(out, "start = %8.8llx, "
-                                       "length = %8.8llx\n",
-                                       (unsigned long long)res->start,
-                                       (unsigned long long)(res->end - res->start));
+                       out += sprintf(out, "start = %8.8llx, length = %8.8llx\n",
+                                      (unsigned long long)res->start,
+                                      (unsigned long long)resource_size(res));
                }
        }
        out += sprintf(out, "Free resources: IO\n");
        pci_bus_for_each_resource(bus, res, index) {
                if (res && (res->flags & IORESOURCE_IO)) {
-                       out += sprintf(out, "start = %8.8llx, "
-                                       "length = %8.8llx\n",
-                                       (unsigned long long)res->start,
-                                       (unsigned long long)(res->end - res->start));
+                       out += sprintf(out, "start = %8.8llx, length = %8.8llx\n",
+                                      (unsigned long long)res->start,
+                                      (unsigned long long)resource_size(res));
                }
        }
        out += sprintf(out, "Free resources: bus numbers\n");
index fb33fa42d249847d1c900a5c374b6859f3cd8dde..4902206f53d942ec6174243991c842ea580feb34 100644 (file)
@@ -283,8 +283,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
        }
 
        /* reserve chip-select regions */
-       if (!request_mem_region(io->start, io->end + 1 - io->start,
-                               driver_name)) {
+       if (!request_mem_region(io->start, resource_size(io), driver_name)) {
                status = -ENXIO;
                goto fail1;
        }
@@ -308,7 +307,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)
        return 0;
 
 fail2:
-       release_mem_region(io->start, io->end + 1 - io->start);
+       release_mem_region(io->start, resource_size(io));
 fail1:
        if (cf->socket.io_offset)
                iounmap((void __iomem *) cf->socket.io_offset);
@@ -339,7 +338,7 @@ static int __exit at91_cf_remove(struct platform_device *pdev)
        struct resource         *io = cf->socket.io[0].res;
 
        pcmcia_unregister_socket(&cf->socket);
-       release_mem_region(io->start, io->end + 1 - io->start);
+       release_mem_region(io->start, resource_size(io));
        iounmap((void __iomem *) cf->socket.io_offset);
        if (board->irq_pin) {
                free_irq(board->irq_pin, cf);
index 6defd4a8168ee27597872c718d58a2f60804e9fe..06ad3e5e7d3d246b9acab61dd049a3f41c430f50 100644 (file)
@@ -209,9 +209,9 @@ static int __devinit electra_cf_probe(struct platform_device *ofdev)
 
        cf->ofdev = ofdev;
        cf->mem_phys = mem.start;
-       cf->mem_size = PAGE_ALIGN(mem.end - mem.start);
+       cf->mem_size = PAGE_ALIGN(resource_size(&mem));
        cf->mem_base = ioremap(cf->mem_phys, cf->mem_size);
-       cf->io_size = PAGE_ALIGN(io.end - io.start);
+       cf->io_size = PAGE_ALIGN(resource_size(&io));
 
        area = __get_vm_area(cf->io_size, 0, PHB_IO_BASE, PHB_IO_END);
        if (area == NULL)
index 523eb691c30b954e3a14d05f4b4e91fc3d27675c..f53c237bda2f0324d75a37efe5bb43f891ff52ff 100644 (file)
@@ -135,7 +135,7 @@ static int iodyn_find_io(struct pcmcia_socket *s, unsigned int attr,
                try = res->end + 1;
                if ((*base == 0) || (*base == try)) {
                        if (adjust_resource(s->io[i].res, res->start,
-                                       res->end - res->start + num + 1))
+                                           resource_size(res) + num))
                                continue;
                        *base = try;
                        s->io[i].InUse += num;
@@ -147,8 +147,8 @@ static int iodyn_find_io(struct pcmcia_socket *s, unsigned int attr,
                try = res->start - num;
                if ((*base == 0) || (*base == try)) {
                        if (adjust_resource(s->io[i].res,
-                                       res->start - num,
-                                       res->end - res->start + num + 1))
+                                           res->start - num,
+                                           resource_size(res) + num))
                                continue;
                        *base = try;
                        s->io[i].InUse += num;
index b187555d4388d394345f06997ffaa39361ed1de3..9da9656242af8b327d2859169df0acae2a56fd17 100644 (file)
@@ -770,7 +770,7 @@ static int nonstatic_find_io(struct pcmcia_socket *s, unsigned int attr,
                                                        res->end + num);
                        if (!ret) {
                                ret = adjust_resource(s->io[i].res, res->start,
-                                              res->end - res->start + num + 1);
+                                                     resource_size(res) + num);
                                if (ret)
                                        continue;
                                *base = try;
@@ -788,8 +788,8 @@ static int nonstatic_find_io(struct pcmcia_socket *s, unsigned int attr,
                                                        res->end);
                        if (!ret) {
                                ret = adjust_resource(s->io[i].res,
-                                              res->start - num,
-                                              res->end - res->start + num + 1);
+                                                     res->start - num,
+                                                     resource_size(res) + num);
                                if (ret)
                                        continue;
                                *base = try;
index 100e4d9372f1fa24c30d280efa4c105bc96da6f8..1a6937d9118facc169734e5968a9bd3f83fd94aa 100644 (file)
@@ -1018,7 +1018,7 @@ static void pnpacpi_encode_io(struct pnp_dev *dev,
                io->minimum = p->start;
                io->maximum = p->end;
                io->alignment = 0;      /* Correct? */
-               io->address_length = p->end - p->start + 1;
+               io->address_length = resource_size(p);
        } else {
                io->minimum = 0;
                io->address_length = 0;
@@ -1036,7 +1036,7 @@ static void pnpacpi_encode_fixed_io(struct pnp_dev *dev,
 
        if (pnp_resource_enabled(p)) {
                fixed_io->address = p->start;
-               fixed_io->address_length = p->end - p->start + 1;
+               fixed_io->address_length = resource_size(p);
        } else {
                fixed_io->address = 0;
                fixed_io->address_length = 0;
@@ -1059,7 +1059,7 @@ static void pnpacpi_encode_mem24(struct pnp_dev *dev,
                memory24->minimum = p->start;
                memory24->maximum = p->end;
                memory24->alignment = 0;
-               memory24->address_length = p->end - p->start + 1;
+               memory24->address_length = resource_size(p);
        } else {
                memory24->minimum = 0;
                memory24->address_length = 0;
@@ -1083,7 +1083,7 @@ static void pnpacpi_encode_mem32(struct pnp_dev *dev,
                memory32->minimum = p->start;
                memory32->maximum = p->end;
                memory32->alignment = 0;
-               memory32->address_length = p->end - p->start + 1;
+               memory32->address_length = resource_size(p);
        } else {
                memory32->minimum = 0;
                memory32->alignment = 0;
@@ -1106,7 +1106,7 @@ static void pnpacpi_encode_fixed_mem32(struct pnp_dev *dev,
                    p->flags & IORESOURCE_MEM_WRITEABLE ?
                    ACPI_READ_WRITE_MEMORY : ACPI_READ_ONLY_MEMORY;
                fixed_memory32->address = p->start;
-               fixed_memory32->address_length = p->end - p->start + 1;
+               fixed_memory32->address_length = resource_size(p);
        } else {
                fixed_memory32->address = 0;
                fixed_memory32->address_length = 0;
index cb1f47bfee96685637d81ca51c3f9415092fe7e3..cca2f9f9f3e30e6f8a1201ac0fd03774a980a8bc 100644 (file)
@@ -505,7 +505,7 @@ static void pnpbios_encode_mem(struct pnp_dev *dev, unsigned char *p,
 
        if (pnp_resource_enabled(res)) {
                base = res->start;
-               len = res->end - res->start + 1;
+               len = resource_size(res);
        } else {
                base = 0;
                len = 0;
@@ -529,7 +529,7 @@ static void pnpbios_encode_mem32(struct pnp_dev *dev, unsigned char *p,
 
        if (pnp_resource_enabled(res)) {
                base = res->start;
-               len = res->end - res->start + 1;
+               len = resource_size(res);
        } else {
                base = 0;
                len = 0;
@@ -559,7 +559,7 @@ static void pnpbios_encode_fixed_mem32(struct pnp_dev *dev, unsigned char *p,
 
        if (pnp_resource_enabled(res)) {
                base = res->start;
-               len = res->end - res->start + 1;
+               len = resource_size(res);
        } else {
                base = 0;
                len = 0;
@@ -617,7 +617,7 @@ static void pnpbios_encode_port(struct pnp_dev *dev, unsigned char *p,
 
        if (pnp_resource_enabled(res)) {
                base = res->start;
-               len = res->end - res->start + 1;
+               len = resource_size(res);
        } else {
                base = 0;
                len = 0;
@@ -636,11 +636,11 @@ static void pnpbios_encode_fixed_port(struct pnp_dev *dev, unsigned char *p,
                                      struct resource *res)
 {
        unsigned long base = res->start;
-       unsigned long len = res->end - res->start + 1;
+       unsigned long len = resource_size(res);
 
        if (pnp_resource_enabled(res)) {
                base = res->start;
-               len = res->end - res->start + 1;
+               len = resource_size(res);
        } else {
                base = 0;
                len = 0;
index e725d51e773d94c84f2f12361f6abb36eb5dcfcf..8dd08305aae13148239dfb5c6f27823ac51edad3 100644 (file)
@@ -223,7 +223,7 @@ static int __init at32_rtc_probe(struct platform_device *pdev)
        }
 
        rtc->irq = irq;
-       rtc->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       rtc->regs = ioremap(regs->start, resource_size(regs));
        if (!rtc->regs) {
                ret = -ENOMEM;
                dev_dbg(&pdev->dev, "could not map I/O memory\n");
index 911e75cdc125107186a53518b748dbc10329afe8..05beb6c1ca79c7a0e22793818debbfb774da4187 100644 (file)
@@ -606,7 +606,7 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
         * (needing ioremap etc), not i/o space resources like this ...
         */
        ports = request_region(ports->start,
-                       ports->end + 1 - ports->start,
+                       resource_size(ports),
                        driver_name);
        if (!ports) {
                dev_dbg(dev, "i/o registers already in use\n");
@@ -750,7 +750,7 @@ cleanup1:
        cmos_rtc.dev = NULL;
        rtc_device_unregister(cmos_rtc.rtc);
 cleanup0:
-       release_region(ports->start, ports->end + 1 - ports->start);
+       release_region(ports->start, resource_size(ports));
        return retval;
 }
 
@@ -779,7 +779,7 @@ static void __exit cmos_do_remove(struct device *dev)
        cmos->rtc = NULL;
 
        ports = cmos->iomem;
-       release_region(ports->start, ports->end + 1 - ports->start);
+       release_region(ports->start, resource_size(ports));
        cmos->iomem = NULL;
 
        cmos->dev = NULL;
index 47e681df31e280d27f4ce1a926b0f1c5bedbc13e..68e6caf2549662a66a84b7f94196a2c20ac2f93b 100644 (file)
@@ -343,7 +343,7 @@ static int __devinit ds1286_probe(struct platform_device *pdev)
        if (!priv)
                return -ENOMEM;
 
-       priv->size = res->end - res->start + 1;
+       priv->size = resource_size(res);
        if (!request_mem_region(res->start, priv->size, pdev->name)) {
                ret = -EBUSY;
                goto out;
index fbabc773dded52eb6ee17e3f6c92b589bef0d189..568ad30617e7dad58f38f7a6583b8c73630a4aa7 100644 (file)
@@ -490,7 +490,7 @@ ds1511_rtc_probe(struct platform_device *pdev)
        pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
        if (!pdata)
                return -ENOMEM;
-       pdata->size = res->end - res->start + 1;
+       pdata->size = resource_size(res);
        if (!devm_request_mem_region(&pdev->dev, res->start, pdata->size,
                        pdev->name))
                return -EBUSY;
index 042630c90dd34e7c8232a3ddde5b14809bf0176e..d84a448dd754b32203ace25e336df50e5710f43f 100644 (file)
@@ -173,7 +173,7 @@ static int __devinit ds1742_rtc_probe(struct platform_device *pdev)
        pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
        if (!pdata)
                return -ENOMEM;
-       pdata->size = res->end - res->start + 1;
+       pdata->size = resource_size(res);
        if (!devm_request_mem_region(&pdev->dev, res->start, pdata->size,
                pdev->name))
                return -EBUSY;
index 7410875e5838957d0763a079f967c78c72a0751c..8e2a24e33ed69f89530ab9996707c109c5d76816 100644 (file)
@@ -154,7 +154,7 @@ static int __devinit m48t35_probe(struct platform_device *pdev)
        if (!priv)
                return -ENOMEM;
 
-       priv->size = res->end - res->start + 1;
+       priv->size = resource_size(res);
        /*
         * kludge: remove the #ifndef after ioc3 resource
         * conflicts are resolved
index 3978f4caf724df35449a8f84c34e897f26c2cee8..28365388fb6c8665a96c9d7fb68638300d748dc0 100644 (file)
@@ -433,7 +433,7 @@ static int __devinit m48t59_rtc_probe(struct platform_device *pdev)
 
        if (!m48t59->ioaddr) {
                /* ioaddr not mapped externally */
-               m48t59->ioaddr = ioremap(res->start, res->end - res->start + 1);
+               m48t59->ioaddr = ioremap(res->start, resource_size(res));
                if (!m48t59->ioaddr)
                        goto out;
        }
index 0cec5650d56a3d03e7ed1c50fb3a3f46a90043bf..d33544802a2ea5fc023390a069bcbc1f9d147a41 100644 (file)
@@ -332,9 +332,8 @@ vrtc_mrst_do_probe(struct device *dev, struct resource *iomem, int rtc_irq)
        if (!iomem)
                return -ENODEV;
 
-       iomem = request_mem_region(iomem->start,
-                       iomem->end + 1 - iomem->start,
-                       driver_name);
+       iomem = request_mem_region(iomem->start, resource_size(iomem),
+                                  driver_name);
        if (!iomem) {
                dev_dbg(dev, "i/o mem already in use.\n");
                return -EBUSY;
index 46f14b82f3ab6e987efef66d90181414e34d475c..b3eba3cddd42658f76cb7ec84a3c13187993d1b4 100644 (file)
@@ -267,9 +267,8 @@ static int puv3_rtc_probe(struct platform_device *pdev)
                return -ENOENT;
        }
 
-       puv3_rtc_mem = request_mem_region(res->start,
-                                        res->end-res->start+1,
-                                        pdev->name);
+       puv3_rtc_mem = request_mem_region(res->start, resource_size(res),
+                                         pdev->name);
 
        if (puv3_rtc_mem == NULL) {
                dev_err(&pdev->dev, "failed to reserve memory region\n");
index 16512ecae31a384fef42e743884b5b0c8d905d7d..2a65e85e0f565c2744263b9f23ea36ae7cbb338e 100644 (file)
@@ -455,8 +455,7 @@ static int __devinit s3c_rtc_probe(struct platform_device *pdev)
                return -ENOENT;
        }
 
-       s3c_rtc_mem = request_mem_region(res->start,
-                                        res->end-res->start+1,
+       s3c_rtc_mem = request_mem_region(res->start, resource_size(res),
                                         pdev->name);
 
        if (s3c_rtc_mem == NULL) {
@@ -465,7 +464,7 @@ static int __devinit s3c_rtc_probe(struct platform_device *pdev)
                goto err_nores;
        }
 
-       s3c_rtc_base = ioremap(res->start, res->end - res->start + 1);
+       s3c_rtc_base = ioremap(res->start, resource_size(res));
        if (s3c_rtc_base == NULL) {
                dev_err(&pdev->dev, "failed ioremap()\n");
                ret = -EINVAL;
index 3f47c2ead8e51790bc7dc14686ec5776d6dd28b9..0c08e1c2558331cafe2667922f9f82bc4c8d0800 100644 (file)
@@ -746,7 +746,8 @@ static int __init a2232board_init(void)
                zd_a2232[nr_a2232] = z;
 
                boardaddr = ZTWO_VADDR( z->resource.start );
-               printk("Board is located at address 0x%x, size is 0x%x.\n", boardaddr, (unsigned int) ((z->resource.end+1) - (z->resource.start)));
+               printk("Board is located at address 0x%x, size is 0x%x\n",
+                      boardaddr, (unsigned int)resource_size(&z->resource));
 
                mem = (volatile struct a2232memory *) boardaddr;
 
index 74c5a6569d08674bba05a49888d131a459b74f9a..280f9d4454685bee5f85fbea889da19c20185f9b 100644 (file)
@@ -80,7 +80,7 @@ static int psb_gtt_insert(struct drm_device *dev, struct gtt_range *r)
 {
         struct drm_psb_private *dev_priv = dev->dev_private;
        u32 *gtt_slot, pte;
-       int numpages = (r->resource.end + 1 - r->resource.start) >> PAGE_SHIFT;
+       int numpages = resource_size(&r->resource) >> PAGE_SHIFT;
        struct page **pages;
        int i;
 
@@ -121,7 +121,7 @@ static void psb_gtt_remove(struct drm_device *dev, struct gtt_range *r)
 {
        struct drm_psb_private *dev_priv = dev->dev_private;
        u32 *gtt_slot, pte;
-       int numpages = (r->resource.end + 1 - r->resource.start) >> PAGE_SHIFT;
+       int numpages = resource_size(&r->resource) >> PAGE_SHIFT;
        int i;
 
        WARN_ON(r->stolen);
@@ -149,7 +149,7 @@ static int psb_gtt_attach_pages(struct gtt_range *gt)
        struct address_space *mapping;
        int i;
        struct page *p;
-       int pages = (gt->resource.end + 1 - gt->resource.start) >> PAGE_SHIFT;
+       int pages = resource_size(&gt->resource) >> PAGE_SHIFT;
 
        WARN_ON(gt->pages);
 
@@ -191,7 +191,7 @@ err:
 static void psb_gtt_detach_pages(struct gtt_range *gt)
 {
        int i;
-       int pages = (gt->resource.end + 1 - gt->resource.start) >> PAGE_SHIFT;
+       int pages = resource_size(&gt->resource) >> PAGE_SHIFT;
 
        for (i = 0; i < pages; i++) {
                /* FIXME: do we need to force dirty */
index 9b1ff2b6bb3703e98fcf7b9cd758d1b923ce5fd0..ff6979181ac5bf1b0dd3464e3c6a837062776586 100644 (file)
@@ -1304,8 +1304,7 @@ static int bfin_serial_probe(struct platform_device *pdev)
                        goto out_error_free_peripherals;
                }
 
-               uart->port.membase = ioremap(res->start,
-                       res->end - res->start);
+               uart->port.membase = ioremap(res->start, resource_size(res));
                if (!uart->port.membase) {
                        dev_err(&pdev->dev, "Cannot map uart IO\n");
                        ret = -ENXIO;
@@ -1483,7 +1482,7 @@ static int bfin_earlyprintk_probe(struct platform_device *pdev)
        }
 
        bfin_earlyprintk_port.port.membase = ioremap(res->start,
-                       res->end - res->start);
+                                                    resource_size(res));
        if (!bfin_earlyprintk_port.port.membase) {
                dev_err(&pdev->dev, "Cannot map uart IO\n");
                ret = -ENXIO;
index a54473123e0aad5c02e8e33177007b4b843cbb96..22fe801cce31725cc8c2be37a45b01469d4394a1 100644 (file)
@@ -954,7 +954,7 @@ static void imx_release_port(struct uart_port *port)
        struct resource *mmres;
 
        mmres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       release_mem_region(mmres->start, mmres->end - mmres->start + 1);
+       release_mem_region(mmres->start, resource_size(mmres));
 }
 
 /*
@@ -970,8 +970,7 @@ static int imx_request_port(struct uart_port *port)
        if (!mmres)
                return -ENODEV;
 
-       ret = request_mem_region(mmres->start, mmres->end - mmres->start + 1,
-                       "imx-uart");
+       ret = request_mem_region(mmres->start, resource_size(mmres), "imx-uart");
 
        return  ret ? 0 : -EBUSY;
 }
index 84db7321cce85e5d2be2a9cb3f7794c8f23ef0e3..8e07517f8acdc4276dd445428adf97f12709fc34 100644 (file)
@@ -892,7 +892,7 @@ static int m32r_sio_request_port(struct uart_port *port)
         * If we have a mapbase, then request that as well.
         */
        if (ret == 0 && up->port.flags & UPF_IOREMAP) {
-               int size = res->end - res->start + 1;
+               int size = resource_size(res);
 
                up->port.membase = ioremap(up->port.mapbase, size);
                if (!up->port.membase)
index 47cadf474149fe957a179458f24dc66ea6a57f9f..c37df8d0fa2819261dffccc5bc4d0180b9531f49 100644 (file)
@@ -1241,8 +1241,8 @@ static int serial_omap_probe(struct platform_device *pdev)
                return -ENODEV;
        }
 
-       if (!request_mem_region(mem->start, (mem->end - mem->start) + 1,
-                                    pdev->dev.driver->name)) {
+       if (!request_mem_region(mem->start, resource_size(mem),
+                               pdev->dev.driver->name)) {
                dev_err(&pdev->dev, "memory region already claimed\n");
                return -EBUSY;
        }
@@ -1308,7 +1308,7 @@ err:
        dev_err(&pdev->dev, "[UART%d]: failure [%s]: %d\n",
                                pdev->id, __func__, ret);
 do_release_region:
-       release_mem_region(mem->start, (mem->end - mem->start) + 1);
+       release_mem_region(mem->start, resource_size(mem));
        return ret;
 }
 
index 4302e6e3768e504d76f63d2be40198195c303290..531931c1b250129508040c2a2c78425827159951 100644 (file)
@@ -803,7 +803,7 @@ static int serial_pxa_probe(struct platform_device *dev)
                break;
        }
 
-       sport->port.membase = ioremap(mmres->start, mmres->end - mmres->start + 1);
+       sport->port.membase = ioremap(mmres->start, resource_size(mmres));
        if (!sport->port.membase) {
                ret = -ENOMEM;
                goto err_clk;
index 92aa54550e84babbae1d4451e87efe6e65690d4a..ad0f8f5f6ea189e1ba4e389a8626c2e1231a6033 100644 (file)
@@ -1435,7 +1435,7 @@ static int __devinit su_probe(struct platform_device *op)
 
        rp = &op->resource[0];
        up->port.mapbase = rp->start;
-       up->reg_size = (rp->end - rp->start) + 1;
+       up->reg_size = resource_size(rp);
        up->port.membase = of_ioremap(rp, 0, up->reg_size, "su");
        if (!up->port.membase) {
                if (type != SU_PORT_PORT)
index 37fc4e3d487c5f0ce53da3df7e59781134ef875a..026cb9ea5cd1503280d1da82ec42a186f7cc3d87 100644 (file)
@@ -573,8 +573,7 @@ static int __init vt8500_serial_probe(struct platform_device *pdev)
        snprintf(vt8500_port->name, sizeof(vt8500_port->name),
                 "VT8500 UART%d", pdev->id);
 
-       vt8500_port->uart.membase = ioremap(mmres->start,
-                                           mmres->end - mmres->start + 1);
+       vt8500_port->uart.membase = ioremap(mmres->start, resource_size(mmres));
        if (!vt8500_port->uart.membase) {
                ret = -ENOMEM;
                goto err;
index 7d3e469b99045be5ad1ff6e0dfecc4dd1870d50e..bdc3db946122f425a13b2cf619e61d3acbcae622 100644 (file)
@@ -58,7 +58,7 @@ static int uio_pdrv_probe(struct platform_device *pdev)
 
                uiomem->memtype = UIO_MEM_PHYS;
                uiomem->addr = r->start;
-               uiomem->size = r->end - r->start + 1;
+               uiomem->size = resource_size(r);
                ++uiomem;
        }
 
index 0f424af7f10934f530f608aa24f4f63ba0438142..31e799d9efe5d0c38da50c147678986b8e47dc92 100644 (file)
@@ -137,7 +137,7 @@ static int uio_pdrv_genirq_probe(struct platform_device *pdev)
 
                uiomem->memtype = UIO_MEM_PHYS;
                uiomem->addr = r->start;
-               uiomem->size = r->end - r->start + 1;
+               uiomem->size = resource_size(r);
                ++uiomem;
        }
 
index db1a659702ba0b50607ea738393a1deb6c5dfdc6..f045c8968a6e4ed4be7fbbd959cbd94f9135074b 100644 (file)
@@ -272,7 +272,7 @@ static void usba_init_debugfs(struct usba_udc *udc)
 
        regs_resource = platform_get_resource(udc->pdev, IORESOURCE_MEM,
                                CTRL_IOMEM_ID);
-       regs->d_inode->i_size = regs_resource->end - regs_resource->start + 1;
+       regs->d_inode->i_size = resource_size(regs_resource);
        udc->debugfs_regs = regs;
 
        usba_ep_init_debugfs(udc, to_usba_ep(udc->gadget.ep0));
index 2cd9a60c7f3a55d5872395aba45d4bc0bb1d977b..9c8e56fd0ffe15cb86526407855005d669fa0d38 100644 (file)
@@ -2445,7 +2445,7 @@ static int __init fsl_udc_probe(struct platform_device *pdev)
        }
 
        if (pdata->operating_mode == FSL_USB2_DR_DEVICE) {
-               if (!request_mem_region(res->start, res->end - res->start + 1,
+               if (!request_mem_region(res->start, resource_size(res),
                                        driver_name)) {
                        ERR("request mem region for %s failed\n", pdev->name);
                        ret = -EBUSY;
@@ -2593,7 +2593,7 @@ err_iounmap_noclk:
        iounmap(dr_regs);
 err_release_mem_region:
        if (pdata->operating_mode == FSL_USB2_DR_DEVICE)
-               release_mem_region(res->start, res->end - res->start + 1);
+               release_mem_region(res->start, resource_size(res));
 err_kfree:
        kfree(udc_controller);
        udc_controller = NULL;
@@ -2628,7 +2628,7 @@ static int __exit fsl_udc_remove(struct platform_device *pdev)
        free_irq(udc_controller->irq, udc_controller);
        iounmap(dr_regs);
        if (pdata->operating_mode == FSL_USB2_DR_DEVICE)
-               release_mem_region(res->start, res->end - res->start + 1);
+               release_mem_region(res->start, resource_size(res));
 
        device_unregister(&udc_controller->gadget.dev);
        /* free udc --wait for the release() finished */
index 98cc8a13169c9aab288803ecba0d88062a04e727..eab3d7059fbe83f17ba5850703ddab93deefcec7 100644 (file)
@@ -146,7 +146,7 @@ static int ehci_ath79_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len   = res->end - res->start + 1;
+       hcd->rsrc_len   = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                dev_dbg(&pdev->dev, "controller already in use\n");
index d41745c6f0c47edbe5632683ccaeaa5bce0aaa05..6536abdea6e6f117e0f5ea99968a069c96e35e62 100644 (file)
@@ -107,7 +107,7 @@ static int cns3xxx_ehci_probe(struct platform_device *pdev)
        }
 
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                                driver->description)) {
index f380bf97e5af71d614092c300d1e786949da1254..34a3140d1e5f169e182d2c2ce37762fd8413e8d6 100644 (file)
@@ -100,7 +100,7 @@ static int usb_hcd_fsl_probe(const struct hc_driver *driver,
                goto err2;
        }
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                                driver->description)) {
                dev_dbg(&pdev->dev, "controller already in use\n");
index 93b230dc51a2b0903ae5da70bed20a8b8200e139..fdfd8c5b639b843d6170a7afed710e2d58ab18c8 100644 (file)
@@ -130,7 +130,7 @@ static int __devinit ehci_hcd_grlib_probe(struct platform_device *op)
                return -ENOMEM;
 
        hcd->rsrc_start = res.start;
-       hcd->rsrc_len = res.end - res.start + 1;
+       hcd->rsrc_len = resource_size(&res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                printk(KERN_ERR "%s: request_mem_region failed\n", __FILE__);
index 50e600d26e287165e93cfdf205217850e077abd8..c4460f3d009fdb6595e0566b19a70a6302f3fd10 100644 (file)
@@ -100,7 +100,7 @@ static int ixp4xx_ehci_probe(struct platform_device *pdev)
                goto fail_request_resource;
        }
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                                driver->description)) {
index ff55757ba7d82c01068914620ae54bbcf948627b..c3ba3ed5f3a6d5ddf31173c2f8c0dda065d05fa4 100644 (file)
@@ -124,7 +124,7 @@ static int ehci_octeon_drv_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        hcd->rsrc_start = res_mem->start;
-       hcd->rsrc_len = res_mem->end - res_mem->start + 1;
+       hcd->rsrc_len = resource_size(res_mem);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                                OCTEON_EHCI_HCD_NAME)) {
index cd69099cda1910f9e5aa1f2af67780a872ec28c0..e8d54de44acc679bc5622d4075e7a16276efac52 100644 (file)
@@ -124,7 +124,7 @@ static int usb_hcd_msp_map_regs(struct mspusb_device *dev)
        res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
        if (res == NULL)
                return -ENOMEM;
-       res_len = res->end - res->start + 1;
+       res_len = resource_size(res);
        if (!request_mem_region(res->start, res_len, "mab regs"))
                return -EBUSY;
 
@@ -140,7 +140,7 @@ static int usb_hcd_msp_map_regs(struct mspusb_device *dev)
                retval = -ENOMEM;
                goto err2;
        }
-       res_len = res->end - res->start + 1;
+       res_len = resource_size(res);
        if (!request_mem_region(res->start, res_len, "usbid regs")) {
                retval = -EBUSY;
                goto err2;
@@ -154,13 +154,13 @@ static int usb_hcd_msp_map_regs(struct mspusb_device *dev)
        return 0;
 err3:
        res = platform_get_resource(pdev, IORESOURCE_MEM, 2);
-       res_len = res->end - res->start + 1;
+       res_len = resource_size(res);
        release_mem_region(res->start, res_len);
 err2:
        iounmap(dev->mab_regs);
 err1:
        res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
-       res_len = res->end - res->start + 1;
+       res_len = resource_size(res);
        release_mem_region(res->start, res_len);
        dev_err(&pdev->dev, "Failed to map non-EHCI regs.\n");
        return retval;
@@ -194,7 +194,7 @@ int usb_hcd_msp_probe(const struct hc_driver *driver,
                goto err1;
        }
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, dev->name)) {
                retval = -EBUSY;
                goto err1;
index 8552db6c29c9e4cce9c5896bf296cd5a3cb71853..41d11fe14252ad7963d9e08ca277822aa8c8ff9c 100644 (file)
@@ -130,7 +130,7 @@ static int __devinit ehci_hcd_ppc_of_probe(struct platform_device *op)
                return -ENOMEM;
 
        hcd->rsrc_start = res.start;
-       hcd->rsrc_len = res.end - res.start + 1;
+       hcd->rsrc_len = resource_size(&res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                printk(KERN_ERR "%s: request_mem_region failed\n", __FILE__);
index 52a027aaa37028d464c73236725a74e3c578e7fc..d661cf7de140731d17cd46acf38ba689863656c8 100644 (file)
@@ -41,7 +41,7 @@ static int __devinit usb_w90x900_probe(const struct hc_driver *driver,
        }
 
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                retval = -EBUSY;
index a64d6d66d7600e8f73e1ae1fba3feafb52f31cfa..32793ce3d9e9dd4a32588204d5a59680046374e6 100644 (file)
@@ -174,7 +174,7 @@ static int __devinit ehci_hcd_xilinx_of_probe(struct platform_device *op)
                return -ENOMEM;
 
        hcd->rsrc_start = res.start;
-       hcd->rsrc_len = res.end - res.start + 1;
+       hcd->rsrc_len = resource_size(&res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                printk(KERN_ERR "%s: request_mem_region failed\n", __FILE__);
index 19223c7449e152a9a144d4fd174ad452c2c53113..572ea53b0226eb084d6134b1b7fe853bf0d67374 100644 (file)
@@ -605,7 +605,7 @@ static int __devinit of_fhci_probe(struct platform_device *ofdev)
                goto err_regs;
        }
 
-       hcd->regs = ioremap(usb_regs.start, usb_regs.end - usb_regs.start + 1);
+       hcd->regs = ioremap(usb_regs.start, resource_size(&usb_regs));
        if (!hcd->regs) {
                dev_err(dev, "could not ioremap regs\n");
                ret = -ENOMEM;
index ffea3e7cb0a88445ab3a60f23752282c65634317..c620c50f6770bf9f2ee1fa0ca6c2783ff7d1d2be 100644 (file)
@@ -93,8 +93,8 @@ static int ohci_ath79_probe(struct platform_device *pdev)
                ret = -ENODEV;
                goto err_put_hcd;
        }
-       hcd->rsrc_start = res->start;
-       hcd->rsrc_len   = res->end - res->start + 1;
+       hcd->rsrc_start = res->start;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                dev_dbg(&pdev->dev, "controller already in use\n");
index f05ef87e934cb976f4eb9581f03927260cdd06d3..5a00a1e1c6ca680df5ac8e4dc952944abffa074b 100644 (file)
@@ -100,7 +100,7 @@ static int cns3xxx_ohci_probe(struct platform_device *pdev)
                goto err1;
        }
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                        driver->description)) {
index d22fb4d577b775b9b2144796d4d57453bb98cda4..6aca2c4453f7aed7884e5b1e6520f6fffbeac753 100644 (file)
@@ -322,7 +322,7 @@ static int usb_hcd_da8xx_probe(const struct hc_driver *driver,
                goto err2;
        }
        hcd->rsrc_start = mem->start;
-       hcd->rsrc_len = mem->end - mem->start + 1;
+       hcd->rsrc_len = resource_size(mem);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                dev_dbg(&pdev->dev, "request_mem_region failed\n");
index e4ddfaf8870f72bde4dac4d2b0e90f4094534b69..d8b45647d1dc5595353c8d055c856b98e6395db3 100644 (file)
@@ -135,7 +135,7 @@ static int ohci_octeon_drv_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        hcd->rsrc_start = res_mem->start;
-       hcd->rsrc_len = res_mem->end - res_mem->start + 1;
+       hcd->rsrc_len = resource_size(res_mem);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
                                OCTEON_OHCI_HCD_NAME)) {
index 1ca1821320f4116e4ec05a5d74d05eee27e68041..0c12f4e14dcd0b4877a6e50c6a3923b9661bfc13 100644 (file)
@@ -110,7 +110,7 @@ static int __devinit ohci_hcd_ppc_of_probe(struct platform_device *op)
                return -ENOMEM;
 
        hcd->rsrc_start = res.start;
-       hcd->rsrc_len = res.end - res.start + 1;
+       hcd->rsrc_len = resource_size(&res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                printk(KERN_ERR "%s: request_mem_region failed\n", __FILE__);
index 89e670e38c106b79f8851563728280e5e442e744..c0f595c444874ddf1b1e5210fb33d14f91475afa 100644 (file)
@@ -56,7 +56,7 @@ static int usb_hcd_ppc_soc_probe(const struct hc_driver *driver,
        if (!hcd)
                return -ENOMEM;
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                pr_debug("%s: request_mem_region failed\n", __FILE__);
index d8eb3bdafabb9287a5d98a77c8ee96c0ea4df339..4204d9720d2331bb6e0b4d2f2e60e3ce42cdda1e 100644 (file)
@@ -131,7 +131,7 @@ int usb_hcd_sa1111_probe (const struct hc_driver *driver,
        if (!hcd)
                return -ENOMEM;
        hcd->rsrc_start = dev->res.start;
-       hcd->rsrc_len = dev->res.end - dev->res.start + 1;
+       hcd->rsrc_len = resource_size(&dev->res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                dbg("request_mem_region failed");
index 041d30f30c1045830f6db43de606c62390a497b5..78918ca0da238cce69525f42b01387ccaaf1f8dd 100644 (file)
@@ -103,8 +103,7 @@ static int ohci_hcd_sm501_drv_probe(struct platform_device *pdev)
                goto err0;
        }
 
-       if (!request_mem_region(mem->start, mem->end - mem->start + 1,
-                               pdev->name)) {
+       if (!request_mem_region(mem->start, resource_size(mem), pdev->name)) {
                dev_err(dev, "request_mem_region failed\n");
                retval = -EBUSY;
                goto err0;
@@ -126,7 +125,7 @@ static int ohci_hcd_sm501_drv_probe(struct platform_device *pdev)
 
        if (!dma_declare_coherent_memory(dev, mem->start,
                                         mem->start - mem->parent->start,
-                                        (mem->end - mem->start) + 1,
+                                        resource_size(mem),
                                         DMA_MEMORY_MAP |
                                         DMA_MEMORY_EXCLUSIVE)) {
                dev_err(dev, "cannot declare coherent memory\n");
@@ -149,7 +148,7 @@ static int ohci_hcd_sm501_drv_probe(struct platform_device *pdev)
        }
 
        hcd->rsrc_start = res->start;
-       hcd->rsrc_len = res->end - res->start + 1;
+       hcd->rsrc_len = resource_size(res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, pdev->name)) {
                dev_err(dev, "request_mem_region failed\n");
@@ -185,7 +184,7 @@ err3:
 err2:
        dma_release_declared_memory(dev);
 err1:
-       release_mem_region(mem->start, mem->end - mem->start + 1);
+       release_mem_region(mem->start, resource_size(mem));
 err0:
        return retval;
 }
@@ -201,7 +200,7 @@ static int ohci_hcd_sm501_drv_remove(struct platform_device *pdev)
        dma_release_declared_memory(&pdev->dev);
        mem = platform_get_resource(pdev, IORESOURCE_MEM, 1);
        if (mem)
-               release_mem_region(mem->start, mem->end - mem->start + 1);
+               release_mem_region(mem->start, resource_size(mem));
 
        /* mask interrupts and disable power */
 
index 3558491dd87d5eaae84df78fc15e0348382eaaf4..57ad1271fc9bec740bf57fe736bd86741d506d6d 100644 (file)
@@ -208,13 +208,13 @@ static int __devinit ohci_hcd_tmio_drv_probe(struct platform_device *dev)
        }
 
        hcd->rsrc_start = regs->start;
-       hcd->rsrc_len = regs->end - regs->start + 1;
+       hcd->rsrc_len = resource_size(regs);
 
        tmio = hcd_to_tmio(hcd);
 
        spin_lock_init(&tmio->lock);
 
-       tmio->ccr = ioremap(config->start, config->end - config->start + 1);
+       tmio->ccr = ioremap(config->start, resource_size(config));
        if (!tmio->ccr) {
                ret = -ENOMEM;
                goto err_ioremap_ccr;
@@ -228,7 +228,7 @@ static int __devinit ohci_hcd_tmio_drv_probe(struct platform_device *dev)
 
        if (!dma_declare_coherent_memory(&dev->dev, sram->start,
                                sram->start,
-                               sram->end - sram->start + 1,
+                               resource_size(sram),
                                DMA_MEMORY_MAP | DMA_MEMORY_EXCLUSIVE)) {
                ret = -EBUSY;
                goto err_dma_declare;
index 5fbe997dc6dfbf91989056ef93f29cc9dd72e571..dcd889803f0f2eb920582403c268868e4b00e50c 100644 (file)
@@ -3828,7 +3828,7 @@ static int oxu_drv_probe(struct platform_device *pdev)
                return -ENODEV;
        }
        memstart = res->start;
-       memlen = res->end - res->start + 1;
+       memlen = resource_size(res);
        dev_dbg(&pdev->dev, "MEM resource %lx-%lx\n", memstart, memlen);
        if (!request_mem_region(memstart, memlen,
                                oxu_hc_driver.description)) {
index d01c1e227681940c21cd7af480243d062b9ffa40..f7a62138e3e0d3bbdbdad19f130f4e489ce3fc08 100644 (file)
@@ -111,7 +111,7 @@ static int __devinit uhci_hcd_grlib_probe(struct platform_device *op)
                return -ENOMEM;
 
        hcd->rsrc_start = res.start;
-       hcd->rsrc_len = res.end - res.start + 1;
+       hcd->rsrc_len = resource_size(&res);
 
        if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {
                printk(KERN_ERR "%s: request_mem_region failed\n", __FILE__);
index f7582e8e2169216c64e0f75ff6e67e037579f885..d3e13b640d4ba28493f27ca99fc26cfd3677981f 100644 (file)
@@ -178,7 +178,7 @@ void whc_clean_up(struct whc *whc)
        if (whc->qset_pool)
                dma_pool_destroy(whc->qset_pool);
 
-       len   = whc->umc->resource.end - whc->umc->resource.start + 1;
+       len   = resource_size(&whc->umc->resource);
        if (whc->base)
                iounmap(whc->base);
        if (whc->base_phys)
index 70a004aa19db64edfb69c3f20018ef008c556c0e..3ae3c702500d65a7b7c9b456ac34488085d0d715 100644 (file)
@@ -222,7 +222,7 @@ int whcrc_setup_rc_umc(struct whcrc *whcrc)
        struct umc_dev *umc_dev = whcrc->umc_dev;
 
        whcrc->area = umc_dev->resource.start;
-       whcrc->rc_len = umc_dev->resource.end - umc_dev->resource.start + 1;
+       whcrc->rc_len = resource_size(&umc_dev->resource);
        result = -EBUSY;
        if (request_mem_region(whcrc->area, whcrc->rc_len, KBUILD_MODNAME) == NULL) {
                dev_err(dev, "can't request URC region (%zu bytes @ 0x%lx): %d\n",
index 4484c721f0f9b1ce6a160b5d7e450d0245b2e772..817ab60f7537266d5f63e2e3ef9bbeb1b108bac5 100644 (file)
@@ -906,7 +906,7 @@ static int __init atmel_lcdfb_probe(struct platform_device *pdev)
        if (map) {
                /* use a pre-allocated memory buffer */
                info->fix.smem_start = map->start;
-               info->fix.smem_len = map->end - map->start + 1;
+               info->fix.smem_len = resource_size(map);
                if (!request_mem_region(info->fix.smem_start,
                                        info->fix.smem_len, pdev->name)) {
                        ret = -EBUSY;
@@ -932,7 +932,7 @@ static int __init atmel_lcdfb_probe(struct platform_device *pdev)
 
        /* LCDC registers */
        info->fix.mmio_start = regs->start;
-       info->fix.mmio_len = regs->end - regs->start + 1;
+       info->fix.mmio_len = resource_size(regs);
 
        if (!request_mem_region(info->fix.mmio_start,
                                info->fix.mmio_len, pdev->name)) {
index ebb893c49e9027b9d9cb3aa897e83db394026ff0..ad41f508b423a8ad1d04831227ec1ba1454b18b8 100644 (file)
@@ -3460,9 +3460,10 @@ static int __devinit atyfb_setup_generic(struct pci_dev *pdev,
 
        raddr = addr + 0x7ff000UL;
        rrp = &pdev->resource[2];
-       if ((rrp->flags & IORESOURCE_MEM) && request_mem_region(rrp->start, rrp->end - rrp->start + 1, "atyfb")) {
+       if ((rrp->flags & IORESOURCE_MEM) &&
+           request_mem_region(rrp->start, resource_size(rrp), "atyfb")) {
                par->aux_start = rrp->start;
-               par->aux_size = rrp->end - rrp->start + 1;
+               par->aux_size = resource_size(rrp);
                raddr = rrp->start;
                PRINTKI("using auxiliary register aperture\n");
        }
@@ -3552,7 +3553,7 @@ static int __devinit atyfb_pci_probe(struct pci_dev *pdev,
 
        /* Reserve space */
        res_start = rp->start;
-       res_size = rp->end - rp->start + 1;
+       res_size = resource_size(rp);
        if (!request_mem_region(res_start, res_size, "atyfb"))
                return -EBUSY;
 
index 34b2fc472fe8c917d08738b620aac63b49ea9914..01a8fde67f20ab906b55ef2739159c430f905e55 100644 (file)
@@ -486,7 +486,7 @@ static int __devinit au1100fb_drv_probe(struct platform_device *dev)
        }
 
        au1100fb_fix.mmio_start = regs_res->start;
-       au1100fb_fix.mmio_len = regs_res->end - regs_res->start + 1;
+       au1100fb_fix.mmio_len = resource_size(regs_res);
 
        if (!request_mem_region(au1100fb_fix.mmio_start, au1100fb_fix.mmio_len,
                                DRIVER_NAME)) {
index 42fe155aba0e348a409c2aa002735fc382563e53..e02764319ff77e3590b04ec0297651b5672e6258 100644 (file)
@@ -303,7 +303,7 @@ static int __devinit cobalt_lcdfb_probe(struct platform_device *dev)
                return -EBUSY;
        }
 
-       info->screen_size = res->end - res->start + 1;
+       info->screen_size = resource_size(res);
        info->screen_base = ioremap(res->start, info->screen_size);
        info->fbops = &cobalt_lcd_fbops;
        info->fix = cobalt_lcdfb_fix;
index c225dcce89e78f083f0e02c60b3064b29d001748..9075bea55879fc9c3eb507dc9e7e2a4c707111e1 100644 (file)
@@ -709,11 +709,11 @@ static int __init control_of_init(struct device_node *dp)
 
        /* Map in frame buffer and registers */
        p->fb_orig_base = fb_res.start;
-       p->fb_orig_size = fb_res.end - fb_res.start + 1;
+       p->fb_orig_size = resource_size(&fb_res);
        /* use the big-endian aperture (??) */
        p->frame_buffer_phys = fb_res.start + 0x800000;
        p->control_regs_phys = reg_res.start;
-       p->control_regs_size = reg_res.end - reg_res.start + 1;
+       p->control_regs_size = resource_size(&reg_res);
 
        if (!p->fb_orig_base ||
            !request_mem_region(p->fb_orig_base,p->fb_orig_size,"controlfb")) {
index f70bd63b01871223d74a2930bdd4823c27a120d7..ee1de3e26dece9a80f152478ffa642cfef00beae 100644 (file)
@@ -697,7 +697,7 @@ static int __devinit of_platform_mb862xx_probe(struct platform_device *ofdev)
                goto fbrel;
        }
 
-       res_size = 1 + res.end - res.start;
+       res_size = resource_size(&res);
        par->res = request_mem_region(res.start, res_size, DRV_NAME);
        if (par->res == NULL) {
                dev_err(dev, "Cannot claim framebuffer/mmio\n");
@@ -787,7 +787,7 @@ static int __devexit of_platform_mb862xx_remove(struct platform_device *ofdev)
 {
        struct fb_info *fbi = dev_get_drvdata(&ofdev->dev);
        struct mb862xxfb_par *par = fbi->par;
-       resource_size_t res_size = 1 + par->res->end - par->res->start;
+       resource_size_t res_size = resource_size(par->res);
        unsigned long reg;
 
        dev_dbg(fbi->dev, "%s release\n", fbi->fix.id);
index c3636d55a3c5aa1b39cd15accc9e6c7454d5224a..243d16f09b8a2cbbfc6f5604f1775ec97cf91d72 100644 (file)
@@ -406,8 +406,7 @@ int mdp_probe(struct platform_device *pdev)
                goto error_get_irq;
        }
 
-       mdp->base = ioremap(resource->start,
-                           resource->end - resource->start);
+       mdp->base = ioremap(resource->start, resource_size(resource));
        if (mdp->base == 0) {
                printk(KERN_ERR "msmfb: cannot allocate mdp regs!\n");
                ret = -ENOMEM;
index ec351309e60739c1969102614b6d55a46d95d837..c6e3b4fcdd683b52eaebc7da3afd49bd24497590 100644 (file)
@@ -525,10 +525,9 @@ static int setup_fbmem(struct msmfb_info *msmfb, struct platform_device *pdev)
                return -ENOMEM;
        }
        fb->fix.smem_start = resource->start;
-       fb->fix.smem_len = resource->end - resource->start;
-       fbram = ioremap(resource->start,
-                       resource->end - resource->start);
-       if (fbram == 0) {
+       fb->fix.smem_len = resource_size(resource);
+       fbram = ioremap(resource->start, resource_size(resource));
+       if (fbram == NULL) {
                printk(KERN_ERR "msmfb: cannot allocate fbram!\n");
                return -ENOMEM;
        }
index f838d9e277f05e4fb5c9ee724d1f028a560e07a2..0fff59782e45936cd86b481c4dff09326d94e5a5 100644 (file)
@@ -551,7 +551,7 @@ static int __devinit nuc900fb_probe(struct platform_device *pdev)
 
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 
-       size = (res->end - res->start) + 1;
+       size = resource_size(res);
        fbi->mem = request_mem_region(res->start, size, pdev->name);
        if (fbi->mem == NULL) {
                dev_err(&pdev->dev, "failed to alloc memory region\n");
index ef532d9d3c99d9376e8c5c260eda261f46c203c5..f27ae16ead2ea1671e782821a1f6836140120ee7 100644 (file)
@@ -567,7 +567,7 @@ static int __devinit platinumfb_probe(struct platform_device* odev)
         * northbridge and that can fail. Only request framebuffer
         */
        if (!request_mem_region(pinfo->rsrc_fb.start,
-                               pinfo->rsrc_fb.end - pinfo->rsrc_fb.start + 1,
+                               resource_size(&pinfo->rsrc_fb),
                                "platinumfb framebuffer")) {
                printk(KERN_ERR "platinumfb: Can't request framebuffer !\n");
                framebuffer_release(info);
@@ -658,8 +658,7 @@ static int __devexit platinumfb_remove(struct platform_device* odev)
        iounmap(pinfo->cmap_regs);
 
        release_mem_region(pinfo->rsrc_fb.start,
-                          pinfo->rsrc_fb.end -
-                          pinfo->rsrc_fb.start + 1);
+                          resource_size(&pinfo->rsrc_fb));
 
        release_mem_region(pinfo->cmap_regs_phys, 0x1000);
 
index bb95ec56d25d9943aef4150595c0f190c9bb0cbc..18ead6f0184d136dcfc884e21db207748e18a0ef 100644 (file)
@@ -662,7 +662,7 @@ static int __devinit pxa168fb_probe(struct platform_device *pdev)
        info->fix.ypanstep = 0;
        info->fix.ywrapstep = 0;
        info->fix.mmio_start = res->start;
-       info->fix.mmio_len = res->end - res->start + 1;
+       info->fix.mmio_len = resource_size(res);
        info->fix.accel = FB_ACCEL_NONE;
        info->fbops = &pxa168fb_ops;
        info->pseudo_palette = fbi->pseudo_palette;
index b2dd31ca17101fede259112846789e48f9f42c9a..2cc0fd00463f549082d8836cd041b24c53f3af13 100644 (file)
@@ -254,7 +254,7 @@ static inline struct dio_driver *dio_dev_driver(const struct dio_dev *d)
 
 #define dio_resource_start(d) ((d)->resource.start)
 #define dio_resource_end(d)   ((d)->resource.end)
-#define dio_resource_len(d)   ((d)->resource.end-(d)->resource.start+1)
+#define dio_resource_len(d)   (resource_size(&(d)->resource))
 #define dio_resource_flags(d) ((d)->resource.flags)
 
 #define dio_request_device(d, name) \
index 1bc1338b817b8ab7b257e2dbe6325e9bcee38bbc..195aafc6cd07c691e37e7d0247538dbd63ff5360 100644 (file)
@@ -50,7 +50,7 @@ static inline resource_size_t pnp_resource_len(struct resource *res)
 {
        if (res->start == 0 && res->end == 0)
                return 0;
-       return res->end - res->start + 1;
+       return resource_size(res);
 }
 
 
index 7bf9db525e9ee7e7092959c64059198a60bacc3d..dff42025649b32cb03f84d359c0c213ec5617569 100644 (file)
@@ -187,7 +187,7 @@ extern struct zorro_dev *zorro_find_device(zorro_id id,
 
 #define zorro_resource_start(z)        ((z)->resource.start)
 #define zorro_resource_end(z)  ((z)->resource.end)
-#define zorro_resource_len(z)  ((z)->resource.end-(z)->resource.start+1)
+#define zorro_resource_len(z)  (resource_size(&(z)->resource))
 #define zorro_resource_flags(z)        ((z)->resource.flags)
 
 #define zorro_request_device(z, name) \
index 8d814cbc810950700113fc32b0bcaf8750265118..296fbc84d659d7d5749353e06d814b579ff50989 100644 (file)
@@ -1095,7 +1095,7 @@ size_t crash_get_memory_size(void)
        size_t size = 0;
        mutex_lock(&kexec_mutex);
        if (crashk_res.end != crashk_res.start)
-               size = crashk_res.end - crashk_res.start + 1;
+               size = resource_size(&crashk_res);
        mutex_unlock(&kexec_mutex);
        return size;
 }
index 3ff8cc5f487a832c6620b656cb477797695c2f70..010658335881cf133b918d2159817267c375a522 100644 (file)
@@ -262,8 +262,7 @@ static int i2sbus_add_dev(struct macio_dev *macio,
                 */
                dev->allocated_resource[i] =
                        request_mem_region(dev->resources[i].start,
-                                          dev->resources[i].end -
-                                          dev->resources[i].start + 1,
+                                          resource_size(&dev->resources[i]),
                                           dev->rnames[i]);
                if (!dev->allocated_resource[i]) {
                        printk(KERN_ERR "i2sbus: failed to claim resource %d!\n", i);
@@ -272,19 +271,19 @@ static int i2sbus_add_dev(struct macio_dev *macio,
        }
 
        r = &dev->resources[aoa_resource_i2smmio];
-       rlen = r->end - r->start + 1;
+       rlen = resource_size(r);
        if (rlen < sizeof(struct i2s_interface_regs))
                goto err;
        dev->intfregs = ioremap(r->start, rlen);
 
        r = &dev->resources[aoa_resource_txdbdma];
-       rlen = r->end - r->start + 1;
+       rlen = resource_size(r);
        if (rlen < sizeof(struct dbdma_regs))
                goto err;
        dev->out.dbdma = ioremap(r->start, rlen);
 
        r = &dev->resources[aoa_resource_rxdbdma];
-       rlen = r->end - r->start + 1;
+       rlen = resource_size(r);
        if (rlen < sizeof(struct dbdma_regs))
                goto err;
        dev->in.dbdma = ioremap(r->start, rlen);
index 6e24091818950edc9c298241be2d28a751b39f83..30468b31cad8e81ab239344624d35c08c8564d33 100644 (file)
@@ -448,7 +448,7 @@ static int __devinit atmel_abdac_probe(struct platform_device *pdev)
                goto out_free_card;
        }
 
-       dac->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       dac->regs = ioremap(regs->start, resource_size(regs));
        if (!dac->regs) {
                dev_dbg(&pdev->dev, "could not remap register memory\n");
                goto out_free_card;
index b310702c646e40ef59afedeed630dc320b5570be..41b901bde5c7e523aa0fefb815718c270646f745 100644 (file)
@@ -971,7 +971,7 @@ static int __devinit atmel_ac97c_probe(struct platform_device *pdev)
        chip->card = card;
        chip->pclk = pclk;
        chip->pdev = pdev;
-       chip->regs = ioremap(regs->start, regs->end - regs->start + 1);
+       chip->regs = ioremap(regs->start, resource_size(regs));
 
        if (!chip->regs) {
                dev_dbg(&pdev->dev, "could not remap register memory\n");
index 3ecbd67f88c9143e31de7d4fcb38ca092d9ea758..ab96cde7417b833d6e9e14e44aea7cb91cf965ba 100644 (file)
@@ -881,8 +881,7 @@ static int snd_pmac_free(struct snd_pmac *chip)
                for (i = 0; i < 3; i++) {
                        if (chip->requested & (1 << i))
                                release_mem_region(chip->rsrc[i].start,
-                                                  chip->rsrc[i].end -
-                                                  chip->rsrc[i].start + 1);
+                                                  resource_size(&chip->rsrc[i]));
                }
        }
 
@@ -1228,8 +1227,7 @@ int __devinit snd_pmac_new(struct snd_card *card, struct snd_pmac **chip_return)
                                goto __error;
                        }
                        if (request_mem_region(chip->rsrc[i].start,
-                                              chip->rsrc[i].end -
-                                              chip->rsrc[i].start + 1,
+                                              resource_size(&chip->rsrc[i]),
                                               rnames[i]) == NULL) {
                                printk(KERN_ERR "snd: can't request rsrc "
                                       " %d (%s: %pR)\n",
@@ -1254,8 +1252,7 @@ int __devinit snd_pmac_new(struct snd_card *card, struct snd_pmac **chip_return)
                                goto __error;
                        }
                        if (request_mem_region(chip->rsrc[i].start,
-                                              chip->rsrc[i].end -
-                                              chip->rsrc[i].start + 1,
+                                              resource_size(&chip->rsrc[i]),
                                               rnames[i]) == NULL) {
                                printk(KERN_ERR "snd: can't request rsrc "
                                       " %d (%s: %pR)\n",
index 313e0ccedd5b6ad64d270367a4e40ac78f80adf8..6a882aa5553028a089ae52791e0d5b9e38fa48f0 100644 (file)
@@ -678,7 +678,7 @@ static int __devinit fsl_ssi_probe(struct platform_device *pdev)
                kfree(ssi_private);
                return ret;
        }
-       ssi_private->ssi = ioremap(res.start, 1 + res.end - res.start);
+       ssi_private->ssi = ioremap(res.start, resource_size(&res));
        ssi_private->ssi_phys = res.start;
        ssi_private->irq = irq_of_parse_and_map(np, 0);
 
index fff695ccdd3eecff34446a6df4d7915f0fc4964b..86023142a4cb1e3774f0779937e0adc617c67688 100644 (file)
@@ -384,7 +384,7 @@ static int mpc5200_hpcd_probe(struct of_device *op)
                dev_err(&op->dev, "Missing reg property\n");
                return -ENODEV;
        }
-       regs = ioremap(res.start, 1 + res.end - res.start);
+       regs = ioremap(res.start, resource_size(&res));
        if (!regs) {
                dev_err(&op->dev, "Could not map registers\n");
                return -ENODEV;