irq: check domain hwirq range for DT translate
A DT node may have more than 1 domain associated with it, so make sure the hwirq number is within range when doing DT translation. Signed-off-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Shawn Guo <shawn.guo@linaro.org> Cc: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Родитель
3ecdd05152
Коммит
93797d87d6
|
@ -135,6 +135,9 @@ int irq_domain_simple_dt_translate(struct irq_domain *d,
|
|||
return -EINVAL;
|
||||
if (intsize < 1)
|
||||
return -EINVAL;
|
||||
if (d->nr_irq && ((intspec[0] < d->hwirq_base) ||
|
||||
(intspec[0] >= d->hwirq_base + d->nr_irq)))
|
||||
return -EINVAL;
|
||||
|
||||
*out_hwirq = intspec[0];
|
||||
*out_type = IRQ_TYPE_NONE;
|
||||
|
|
Загрузка…
Ссылка в новой задаче