irqchip/nvic: Release nvic_base upon failure
[linux-2.6-microblaze.git] / drivers / irqchip / irq-nvic.c
index ba4759b..9423030 100644 (file)
@@ -107,6 +107,7 @@ static int __init nvic_of_init(struct device_node *node,
 
        if (!nvic_irq_domain) {
                pr_warn("Failed to allocate irq domain\n");
+               iounmap(nvic_base);
                return -ENOMEM;
        }
 
@@ -116,6 +117,7 @@ static int __init nvic_of_init(struct device_node *node,
        if (ret) {
                pr_warn("Failed to allocate irq chips\n");
                irq_domain_remove(nvic_irq_domain);
+               iounmap(nvic_base);
                return ret;
        }