Messages in this thread Patch in this message | | | From | Zhen Lei <> | Subject | [PATCH 1/1] irqchip/gicv3: remove duplicated parameter testing | Date | Wed, 1 Apr 2015 14:54:58 +0800 |
| |
Test hardware irq number from small to large, and add a blank above each comment. To make it more clear.
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com> --- drivers/irqchip/irq-gic-v3.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c index fd8850d..f43cfa1 100644 --- a/drivers/irqchip/irq-gic-v3.c +++ b/drivers/irqchip/irq-gic-v3.c @@ -611,12 +611,6 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, /* SGIs are private to the core kernel */ if (hw < 16) return -EPERM; - /* Nothing here */ - if (hw >= gic_data.irq_nr && hw < 8192) - return -EPERM; - /* Off limits */ - if (hw >= GIC_ID_NR) - return -EPERM;
/* PPIs */ if (hw < 32) { @@ -624,13 +618,17 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, irq_domain_set_info(d, irq, hw, &gic_chip, d->host_data, handle_percpu_devid_irq, NULL, NULL); set_irq_flags(irq, IRQF_VALID | IRQF_NOAUTOEN); + return 0; } + /* SPIs */ - if (hw >= 32 && hw < gic_data.irq_nr) { + if (hw < gic_data.irq_nr) { irq_domain_set_info(d, irq, hw, &gic_chip, d->host_data, handle_fasteoi_irq, NULL, NULL); set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); + return 0; } + /* LPIs */ if (hw >= 8192 && hw < GIC_ID_NR) { if (!gic_dist_supports_lpis()) @@ -638,9 +636,10 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, irq_domain_set_info(d, irq, hw, &gic_chip, d->host_data, handle_fasteoi_irq, NULL, NULL); set_irq_flags(irq, IRQF_VALID); + return 0; }
- return 0; + return -EPERM; }
static int gic_irq_domain_xlate(struct irq_domain *d, -- 1.8.0
| |