diff options
author | Nishanth Menon <nm@ti.com> | 2014-06-26 12:40:19 +0530 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2014-06-30 19:11:16 +0000 |
commit | 1d50d2ce6337724d30055bdbe082236cc86e6785 (patch) | |
tree | a6995b7b09b5f969b9413bc565a183fef12e5295 /drivers/irqchip/irq-crossbar.c | |
parent | 7171511eaec5bf23fb06078f59784a3a0626b38f (diff) | |
download | talos-op-linux-1d50d2ce6337724d30055bdbe082236cc86e6785.tar.gz talos-op-linux-1d50d2ce6337724d30055bdbe082236cc86e6785.zip |
irqchip: crossbar: Dont use '0' to mark reserved interrupts
Today '0' is actually reserved, but may not be the same in the future.
So, use a flag to mark the GIC interrupts that are reserved.
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Sricharan R <r.sricharan@ti.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Link: https://lkml.kernel.org/r/1403766634-18543-2-git-send-email-r.sricharan@ti.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'drivers/irqchip/irq-crossbar.c')
-rw-r--r-- | drivers/irqchip/irq-crossbar.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/irqchip/irq-crossbar.c b/drivers/irqchip/irq-crossbar.c index 3d15d16a7088..20105bcdf408 100644 --- a/drivers/irqchip/irq-crossbar.c +++ b/drivers/irqchip/irq-crossbar.c @@ -17,6 +17,7 @@ #include <linux/irqchip/arm-gic.h> #define IRQ_FREE -1 +#define IRQ_RESERVED -2 #define GIC_IRQ_START 32 /* @@ -139,7 +140,7 @@ static int __init crossbar_of_init(struct device_node *node) pr_err("Invalid reserved entry\n"); goto err3; } - cb->irq_map[entry] = 0; + cb->irq_map[entry] = IRQ_RESERVED; } } @@ -170,7 +171,7 @@ static int __init crossbar_of_init(struct device_node *node) * reserved irqs. so find and store the offsets once. */ for (i = 0; i < max; i++) { - if (!cb->irq_map[i]) + if (cb->irq_map[i] == IRQ_RESERVED) continue; cb->register_offsets[i] = reserved; |