From: Bartosz Golaszewski <bgolaszew...@baylibre.com>

Add a missing call to request_mem_region() before calling ioremap() to
make sure the region is not being used by anyone else.

Signed-off-by: Bartosz Golaszewski <bgolaszew...@baylibre.com>
---
 arch/arm/mach-davinci/irq.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/arm/mach-davinci/irq.c b/arch/arm/mach-davinci/irq.c
index 2afaf19dc46c..2b6943731af9 100644
--- a/arch/arm/mach-davinci/irq.c
+++ b/arch/arm/mach-davinci/irq.c
@@ -86,9 +86,18 @@ davinci_aintc_handle_irq(struct pt_regs *regs)
 void __init davinci_aintc_init(const struct davinci_aintc_config *config)
 {
        unsigned int irq_off, reg_off, prio, shift;
+       void __iomem *req;
        int ret, irq_base;
        const u8 *prios;
 
+       req = request_mem_region(config->reg.start,
+                                resource_size(&config->reg),
+                                "davinci-cp-intc");
+       if (!req) {
+               pr_err("%s: register range busy\n", __func__);
+               return;
+       }
+
        davinci_aintc_base = ioremap(config->reg.start,
                                     resource_size(&config->reg));
        if (!davinci_aintc_base) {
-- 
2.20.1

Reply via email to