diff options
author | Daniel Gonzalez Cabanelas <dgcbueu@gmail.com> | 2020-05-18 09:20:03 +0200 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2020-05-18 09:51:18 +0200 |
commit | d1ce73677cb476ba5e9d6bd20c90ecf1d17a694a (patch) | |
tree | f37011bd25525ee9e3e372622c32a27865a762e1 /target/linux | |
parent | 1d40c8a9f28d43f0b5cbfaea907b3283165b0490 (diff) | |
download | upstream-d1ce73677cb476ba5e9d6bd20c90ecf1d17a694a.tar.gz upstream-d1ce73677cb476ba5e9d6bd20c90ecf1d17a694a.tar.bz2 upstream-d1ce73677cb476ba5e9d6bd20c90ecf1d17a694a.zip |
bcm63xx: periph_intc: report effective affinity
The bcm6345-periph-intc driver only targets a single CPU at a time, even
if the notional affinity is wider. Let's inform the core code about this.
This patch gets rid of the kernel message:
"genirq: irq_chip bcm6345-periph-intc did not update eff. affinity mask
of irq 52"
Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit e04ff3c7cc52c23f5b40730ee426710e22940d68)
Diffstat (limited to 'target/linux')
-rw-r--r-- | target/linux/brcm63xx/patches-4.14/326-irqchip-bcm6345-report-eff-affinity.patch | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-4.14/326-irqchip-bcm6345-report-eff-affinity.patch b/target/linux/brcm63xx/patches-4.14/326-irqchip-bcm6345-report-eff-affinity.patch new file mode 100644 index 0000000000..f25488575c --- /dev/null +++ b/target/linux/brcm63xx/patches-4.14/326-irqchip-bcm6345-report-eff-affinity.patch @@ -0,0 +1,20 @@ +--- a/drivers/irqchip/irq-bcm6345-periph.c ++++ b/drivers/irqchip/irq-bcm6345-periph.c +@@ -186,6 +186,8 @@ static int bcm6345_periph_set_affinity(s + } + raw_spin_unlock_irqrestore(&priv->lock, flags); + ++ irq_data_update_effective_affinity(data, cpumask_of(cpu)); ++ + return 0; + } + #endif +@@ -197,6 +199,8 @@ static int bcm6345_periph_map(struct irq + + irq_set_chip_and_handler(irq, &priv->chip, handle_level_irq); + ++ irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(irq))); ++ + return 0; + } + |