[OpenWrt-Devel] [PATCH] bcm63xx: Report that effective affinity is a single target
Daniel Gonzalez Cabanelas
dgcbueu at gmail.com
Mon Mar 16 13:17:16 EDT 2020
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"
---
...qchip-add-support-for-bcm6345-style-periphery-irq-.patch | 6 ++++--
...qchip-add-support-for-bcm6345-style-periphery-irq-.patch | 6 ++++--
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/target/linux/bcm63xx/patches-4.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch b/target/linux/bcm63xx/patches-4.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
index 7235d1f96b..11666133b9 100644
--- a/target/linux/bcm63xx/patches-4.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
+++ b/target/linux/bcm63xx/patches-4.14/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
@@ -94,7 +94,7 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
obj-$(CONFIG_METAG_PERFCOUNTER_IRQS) += irq-metag.o
--- /dev/null
+++ b/drivers/irqchip/irq-bcm6345-periph.c
-@@ -0,0 +1,339 @@
+@@ -0,0 +1,341 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file "COPYING" in the main directory of this archive
@@ -283,6 +283,8 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
+ }
+ raw_spin_unlock_irqrestore(&priv->lock, flags);
+
++ irq_data_update_effective_affinity(data, cpumask_of(cpu));
++
+ return 0;
+}
+#endif
@@ -293,7 +295,7 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
+ struct intc_data *priv = d->host_data;
+
+ 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;
+}
+
diff --git a/target/linux/bcm63xx/patches-4.19/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch b/target/linux/bcm63xx/patches-4.19/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
index b75987ef35..2f44a48c32 100644
--- a/target/linux/bcm63xx/patches-4.19/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
+++ b/target/linux/bcm63xx/patches-4.19/320-irqchip-add-support-for-bcm6345-style-periphery-irq-.patch
@@ -94,7 +94,7 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
obj-$(CONFIG_OMPIC) += irq-ompic.o
--- /dev/null
+++ b/drivers/irqchip/irq-bcm6345-periph.c
-@@ -0,0 +1,339 @@
+@@ -0,0 +1,341 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file "COPYING" in the main directory of this archive
@@ -283,6 +283,8 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
+ }
+ raw_spin_unlock_irqrestore(&priv->lock, flags);
+
++ irq_data_update_effective_affinity(data, cpumask_of(cpu));
++
+ return 0;
+}
+#endif
@@ -293,7 +295,7 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
+ struct intc_data *priv = d->host_data;
+
+ 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;
+}
+
--
2.25.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list