Skip to content

Commit 94debe0

Browse files
ffainelliMarc Zyngier
authored andcommitted
irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts
When support for the level triggered interrupt controller flavor was added with c0ca726, we forgot to update the flags to be set to contain IRQ_LEVEL. While the flow handler is correct, the output from /proc/interrupts does not show such interrupts as being level triggered when they are, correct that. Fixes: c0ca726 ("irqchip/brcmstb-l2: Add support for the BCM7271 L2 controller") Signed-off-by: Florian Fainelli <[email protected]> Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Signed-off-by: Marc Zyngier <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 5dc4c99 commit 94debe0

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

drivers/irqchip/irq-brcmstb-l2.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ static int __init brcmstb_l2_intc_of_init(struct device_node *np,
161161
*init_params)
162162
{
163163
unsigned int clr = IRQ_NOREQUEST | IRQ_NOPROBE | IRQ_NOAUTOEN;
164+
unsigned int set = 0;
164165
struct brcmstb_l2_intc_data *data;
165166
struct irq_chip_type *ct;
166167
int ret;
@@ -208,9 +209,12 @@ static int __init brcmstb_l2_intc_of_init(struct device_node *np,
208209
if (IS_ENABLED(CONFIG_MIPS) && IS_ENABLED(CONFIG_CPU_BIG_ENDIAN))
209210
flags |= IRQ_GC_BE_IO;
210211

212+
if (init_params->handler == handle_level_irq)
213+
set |= IRQ_LEVEL;
214+
211215
/* Allocate a single Generic IRQ chip for this node */
212216
ret = irq_alloc_domain_generic_chips(data->domain, 32, 1,
213-
np->full_name, init_params->handler, clr, 0, flags);
217+
np->full_name, init_params->handler, clr, set, flags);
214218
if (ret) {
215219
pr_err("failed to allocate generic irq chip\n");
216220
goto out_free_domain;

0 commit comments

Comments
 (0)