From ed6e965824303255cacc1c1a195d3684caa26bce Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Thu, 31 Jul 2014 10:38:08 +0200 Subject: resource: Let dev_request_mem_region return an error pointer For all users fix or add the error check. Signed-off-by: Sascha Hauer --- arch/arm/mach-at91/at91sam926x_time.c | 2 ++ arch/arm/mach-at91/sam9_smc.c | 5 +++-- arch/arm/mach-imx/clk-imx1.c | 2 ++ arch/arm/mach-imx/clk-imx21.c | 2 ++ arch/arm/mach-imx/clk-imx25.c | 2 ++ arch/arm/mach-imx/clk-imx27.c | 2 ++ arch/arm/mach-imx/clk-imx31.c | 2 ++ arch/arm/mach-imx/clk-imx35.c | 2 ++ arch/arm/mach-imx/clk-imx5.c | 2 ++ arch/arm/mach-imx/clk-imx6.c | 2 ++ arch/arm/mach-imx/clocksource.c | 2 ++ arch/arm/mach-imx/esdctl.c | 5 +++-- arch/arm/mach-imx/iim.c | 4 ++-- arch/arm/mach-imx/ocotp.c | 4 ++-- arch/arm/mach-mxs/ocotp.c | 3 +++ arch/arm/mach-tegra/tegra20-pmc.c | 5 +++-- arch/arm/mach-tegra/tegra20-timer.c | 5 +++-- arch/arm/mach-zynq/clk-zynq7000.c | 4 ++-- 18 files changed, 41 insertions(+), 14 deletions(-) (limited to 'arch/arm') diff --git a/arch/arm/mach-at91/at91sam926x_time.c b/arch/arm/mach-at91/at91sam926x_time.c index 644dc34766..06d3e3276e 100644 --- a/arch/arm/mach-at91/at91sam926x_time.c +++ b/arch/arm/mach-at91/at91sam926x_time.c @@ -90,6 +90,8 @@ static int at91_pit_probe(struct device_d *dev) } pit_base = dev_request_mem_region(dev, 0); + if (IS_ERR(pit_base)) + return PTR_ERR(pit_base); pit_rate = clk_get_rate(clk) / 16; diff --git a/arch/arm/mach-at91/sam9_smc.c b/arch/arm/mach-at91/sam9_smc.c index 9f028079c2..403fa9b1c4 100644 --- a/arch/arm/mach-at91/sam9_smc.c +++ b/arch/arm/mach-at91/sam9_smc.c @@ -14,6 +14,7 @@ #include #include #include +#include #include @@ -164,9 +165,9 @@ static int at91sam9_smc_probe(struct device_d *dev) } smc_base_addr[id] = dev_request_mem_region(dev, 0); - if (!smc_base_addr[id]) { + if (IS_ERR(smc_base_addr[id])) { dev_err(dev, "Impossible to request smc.%d\n", id); - return -ENOMEM; + return PTR_ERR(smc_base_addr[id]); } return 0; diff --git a/arch/arm/mach-imx/clk-imx1.c b/arch/arm/mach-imx/clk-imx1.c index 6fcd6fa074..bb1318f3bf 100644 --- a/arch/arm/mach-imx/clk-imx1.c +++ b/arch/arm/mach-imx/clk-imx1.c @@ -90,6 +90,8 @@ static int imx1_ccm_probe(struct device_d *dev) void __iomem *regs; regs = dev_request_mem_region(dev, 0); + if (IS_ERR(regs)) + return PTR_ERR(regs); mx1_clocks_init(regs, 32000); diff --git a/arch/arm/mach-imx/clk-imx21.c b/arch/arm/mach-imx/clk-imx21.c index be9c46611a..b48bb8ccd3 100644 --- a/arch/arm/mach-imx/clk-imx21.c +++ b/arch/arm/mach-imx/clk-imx21.c @@ -112,6 +112,8 @@ static int imx21_ccm_probe(struct device_d *dev) unsigned long href = 26000000; base = dev_request_mem_region(dev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); writel(PCCR0_UART1_EN | PCCR0_UART2_EN | PCCR0_UART3_EN | PCCR0_UART4_EN | PCCR0_CSPI1_EN | PCCR0_CSPI2_EN | PCCR0_SDHC1_EN | diff --git a/arch/arm/mach-imx/clk-imx25.c b/arch/arm/mach-imx/clk-imx25.c index 1114ad2774..7d10078376 100644 --- a/arch/arm/mach-imx/clk-imx25.c +++ b/arch/arm/mach-imx/clk-imx25.c @@ -88,6 +88,8 @@ static int imx25_ccm_probe(struct device_d *dev) void __iomem *base; base = dev_request_mem_region(dev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); writel((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6) | (1 << 8) | (1 << 9) | (1 << 10) | (1 << 15) | (1 << 19) | (1 << 21) | (1 << 22) | diff --git a/arch/arm/mach-imx/clk-imx27.c b/arch/arm/mach-imx/clk-imx27.c index 2423627cfe..bd1753ab8a 100644 --- a/arch/arm/mach-imx/clk-imx27.c +++ b/arch/arm/mach-imx/clk-imx27.c @@ -159,6 +159,8 @@ static int imx27_ccm_probe(struct device_d *dev) void __iomem *base; base = dev_request_mem_region(dev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); writel(PCCR0_SDHC3_EN | PCCR0_SDHC2_EN | PCCR0_SDHC1_EN | PCCR0_PWM_EN | PCCR0_KPP_EN | PCCR0_IIM_EN | diff --git a/arch/arm/mach-imx/clk-imx31.c b/arch/arm/mach-imx/clk-imx31.c index 4935595355..eb9bb095e0 100644 --- a/arch/arm/mach-imx/clk-imx31.c +++ b/arch/arm/mach-imx/clk-imx31.c @@ -83,6 +83,8 @@ static int imx31_ccm_probe(struct device_d *dev) void __iomem *base; base = dev_request_mem_region(dev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); writel(0xffffffff, base + CCM_CGR0); writel(0xffffffff, base + CCM_CGR1); diff --git a/arch/arm/mach-imx/clk-imx35.c b/arch/arm/mach-imx/clk-imx35.c index 6ea4577478..dde23395a1 100644 --- a/arch/arm/mach-imx/clk-imx35.c +++ b/arch/arm/mach-imx/clk-imx35.c @@ -96,6 +96,8 @@ static int imx35_ccm_probe(struct device_d *dev) void __iomem *base; base = dev_request_mem_region(dev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); writel(0xffffffff, base + CCM_CGR0); writel(0xffffffff, base + CCM_CGR1); diff --git a/arch/arm/mach-imx/clk-imx5.c b/arch/arm/mach-imx/clk-imx5.c index e46f4d25a7..2ae8d6aa3a 100644 --- a/arch/arm/mach-imx/clk-imx5.c +++ b/arch/arm/mach-imx/clk-imx5.c @@ -311,6 +311,8 @@ static int imx51_ccm_probe(struct device_d *dev) void __iomem *regs; regs = dev_request_mem_region(dev, 0); + if (IS_ERR(regs)) + return PTR_ERR(regs); mx51_clocks_init(regs, 32768, 24000000, 22579200, 0); /* FIXME */ diff --git a/arch/arm/mach-imx/clk-imx6.c b/arch/arm/mach-imx/clk-imx6.c index 4598a62774..c0518768fc 100644 --- a/arch/arm/mach-imx/clk-imx6.c +++ b/arch/arm/mach-imx/clk-imx6.c @@ -328,6 +328,8 @@ static int imx6_ccm_probe(struct device_d *dev) anatop_base = (void *)MX6_ANATOP_BASE_ADDR; ccm_base = dev_request_mem_region(dev, 0); + if (IS_ERR(ccm_base)) + return PTR_ERR(ccm_base); base = anatop_base; diff --git a/arch/arm/mach-imx/clocksource.c b/arch/arm/mach-imx/clocksource.c index 9f5ca568fd..eba04a33a4 100644 --- a/arch/arm/mach-imx/clocksource.c +++ b/arch/arm/mach-imx/clocksource.c @@ -104,6 +104,8 @@ static int imx_gpt_probe(struct device_d *dev) return ret; timer_base = dev_request_mem_region(dev, 0); + if (IS_ERR(timer_base)) + return PTR_ERR(timer_base); /* setup GP Timer 1 */ writel(TCTL_SWR, timer_base + GPT_TCTL); diff --git a/arch/arm/mach-imx/esdctl.c b/arch/arm/mach-imx/esdctl.c index 811592f7da..f0d2b5b166 100644 --- a/arch/arm/mach-imx/esdctl.c +++ b/arch/arm/mach-imx/esdctl.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -297,8 +298,8 @@ static int imx_esdctl_probe(struct device_d *dev) return ret; base = dev_request_mem_region(dev, 0); - if (!base) - return -ENOMEM; + if (IS_ERR(base)) + return PTR_ERR(base); if (imx_esdctl_disabled) return 0; diff --git a/arch/arm/mach-imx/iim.c b/arch/arm/mach-imx/iim.c index 16ba678842..2546b921f1 100644 --- a/arch/arm/mach-imx/iim.c +++ b/arch/arm/mach-imx/iim.c @@ -411,8 +411,8 @@ static int imx_iim_probe(struct device_d *dev) iim->fuse_supply = ERR_PTR(-ENODEV); iim->base = dev_request_mem_region(dev, 0); - if (!iim->base) - return -EBUSY; + if (IS_ERR(iim->base)) + return PTR_ERR(iim->base); for (i = 0; i < IIM_NUM_BANKS; i++) { ret = imx_iim_add_bank(iim, i); diff --git a/arch/arm/mach-imx/ocotp.c b/arch/arm/mach-imx/ocotp.c index 476b3767a0..837500fff8 100644 --- a/arch/arm/mach-imx/ocotp.c +++ b/arch/arm/mach-imx/ocotp.c @@ -397,8 +397,8 @@ static int imx_ocotp_probe(struct device_d *dev) int ret = 0; base = dev_request_mem_region(dev, 0); - if (!base) - return -EBUSY; + if (IS_ERR(base)) + return PTR_ERR(base); imx_ocotp_init_dt(dev, base); diff --git a/arch/arm/mach-mxs/ocotp.c b/arch/arm/mach-mxs/ocotp.c index 59c3b8a095..c7c24e0980 100644 --- a/arch/arm/mach-mxs/ocotp.c +++ b/arch/arm/mach-mxs/ocotp.c @@ -183,6 +183,9 @@ static int mxs_ocotp_probe(struct device_d *dev) struct ocotp_priv *priv = xzalloc(sizeof (*priv)); priv->base = dev_request_mem_region(dev, 0); + if (IS_ERR(priv->base)) + return PTR_ERR(priv->base); + priv->clk = clk_get(dev, NULL); if (IS_ERR(priv->clk)) return PTR_ERR(priv->clk); diff --git a/arch/arm/mach-tegra/tegra20-pmc.c b/arch/arm/mach-tegra/tegra20-pmc.c index 94167d68fc..d86809432e 100644 --- a/arch/arm/mach-tegra/tegra20-pmc.c +++ b/arch/arm/mach-tegra/tegra20-pmc.c @@ -23,6 +23,7 @@ #include #include #include +#include #include @@ -40,9 +41,9 @@ EXPORT_SYMBOL(reset_cpu); static int tegra20_pmc_probe(struct device_d *dev) { pmc_base = dev_request_mem_region(dev, 0); - if (!pmc_base) { + if (IS_ERR(pmc_base)) { dev_err(dev, "could not get memory region\n"); - return -ENODEV; + return PTR_ERR(pmc_base); } return 0; diff --git a/arch/arm/mach-tegra/tegra20-timer.c b/arch/arm/mach-tegra/tegra20-timer.c index 2b3264794c..ddc70dc8dd 100644 --- a/arch/arm/mach-tegra/tegra20-timer.c +++ b/arch/arm/mach-tegra/tegra20-timer.c @@ -24,6 +24,7 @@ #include #include #include +#include #include /* register definitions */ @@ -51,9 +52,9 @@ static int tegra20_timer_probe(struct device_d *dev) return -EBUSY; timer_base = dev_request_mem_region(dev, 0); - if (!timer_base) { + if (IS_ERR(timer_base)) { dev_err(dev, "could not get memory region\n"); - return -ENODEV; + return PTR_ERR(timer_base); } /* diff --git a/arch/arm/mach-zynq/clk-zynq7000.c b/arch/arm/mach-zynq/clk-zynq7000.c index b4513a9a7a..2b9260ba1d 100644 --- a/arch/arm/mach-zynq/clk-zynq7000.c +++ b/arch/arm/mach-zynq/clk-zynq7000.c @@ -363,8 +363,8 @@ static int zynq_clock_probe(struct device_d *dev) unsigned long ps_clk_rate = 33333330; slcr_base = dev_request_mem_region(dev, 0); - if (!slcr_base) - return -EBUSY; + if (IS_ERR(slcr_base)) + return PTR_ERR(slcr_base); clks[ps_clk] = clk_fixed("ps_clk", ps_clk_rate); -- cgit v1.2.3