All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] irqchip/sifive-plic: add irq_mask and irq_unmask
@ 2019-09-12 21:40 ` Darius Rad
  0 siblings, 0 replies; 35+ messages in thread
From: Darius Rad @ 2019-09-12 21:40 UTC (permalink / raw)
  To: linux-riscv
  Cc: Palmer Dabbelt, Paul Walmsley, linux-kernel, Thomas Gleixner,
	Jason Cooper, Marc Zyngier

As per the existing comment, irq_mask and irq_unmask do not need
to do anything for the PLIC.  However, the functions must exist
(the pointers cannot be NULL) as they are not optional, based on
the documentation (Documentation/core-api/genericirq.rst) as well
as existing usage (e.g., include/linux/irqchip/chained_irq.h).

Signed-off-by: Darius Rad <darius@bluespec.com>
---
 drivers/irqchip/irq-sifive-plic.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/irqchip/irq-sifive-plic.c b/drivers/irqchip/irq-sifive-plic.c
index cf755964f2f8..52d5169f924f 100644
--- a/drivers/irqchip/irq-sifive-plic.c
+++ b/drivers/irqchip/irq-sifive-plic.c
@@ -111,6 +111,13 @@ static void plic_irq_disable(struct irq_data *d)
 	plic_irq_toggle(cpu_possible_mask, d->hwirq, 0);
 }
 
+/*
+ * There is no need to mask/unmask PLIC interrupts.  They are "masked"
+ * by reading claim and "unmasked" when writing it back.
+ */
+static void plic_irq_mask(struct irq_data *d) { }
+static void plic_irq_unmask(struct irq_data *d) { }
+
 #ifdef CONFIG_SMP
 static int plic_set_affinity(struct irq_data *d,
 			     const struct cpumask *mask_val, bool force)
@@ -138,12 +145,10 @@ static int plic_set_affinity(struct irq_data *d,
 
 static struct irq_chip plic_chip = {
 	.name		= "SiFive PLIC",
-	/*
-	 * There is no need to mask/unmask PLIC interrupts.  They are "masked"
-	 * by reading claim and "unmasked" when writing it back.
-	 */
 	.irq_enable	= plic_irq_enable,
 	.irq_disable	= plic_irq_disable,
+	.irq_mask	= plic_irq_mask,
+	.irq_unmask	= plic_irq_unmask,
 #ifdef CONFIG_SMP
 	.irq_set_affinity = plic_set_affinity,
 #endif
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 35+ messages in thread

end of thread, other threads:[~2019-10-14 18:39 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-12 21:40 [PATCH] irqchip/sifive-plic: add irq_mask and irq_unmask Darius Rad
2019-09-12 21:40 ` Darius Rad
2019-09-14 19:00 ` Palmer Dabbelt
2019-09-14 19:00   ` Palmer Dabbelt
2019-09-14 19:42   ` Charles Papon
2019-09-14 19:42     ` Charles Papon
2019-09-14 19:51     ` Palmer Dabbelt
2019-09-14 19:51       ` Palmer Dabbelt
2019-09-15 14:24 ` Marc Zyngier
2019-09-15 14:24   ` Marc Zyngier
2019-09-15 17:31   ` Palmer Dabbelt
2019-09-15 17:31     ` Palmer Dabbelt
2019-09-15 18:20     ` Marc Zyngier
2019-09-15 18:20       ` Marc Zyngier
2019-09-15 23:46       ` Palmer Dabbelt
2019-09-15 23:46         ` Palmer Dabbelt
2019-09-16 19:04       ` Darius Rad
2019-09-16 19:04         ` Darius Rad
2019-09-16 20:51         ` Palmer Dabbelt
2019-09-16 20:51           ` Palmer Dabbelt
2019-09-16 21:33           ` Marc Zyngier
2019-09-16 21:33             ` Marc Zyngier
2019-09-16 22:17             ` Palmer Dabbelt
2019-09-16 22:17               ` Palmer Dabbelt
2019-09-17 12:26             ` Paul Walmsley
2019-09-17 12:26               ` Paul Walmsley
2019-09-20 13:28               ` David Abdurachmanov
2019-09-20 13:28                 ` David Abdurachmanov
2019-09-16 21:41           ` Darius Rad
2019-09-16 21:41             ` Darius Rad
2019-09-16 22:17             ` Palmer Dabbelt
2019-09-16 22:17               ` Palmer Dabbelt
2019-09-17  6:56       ` Christoph Hellwig
2019-09-17  6:56         ` Christoph Hellwig
2019-10-14 18:38   ` [tip: irq/urgent] irqchip/sifive-plic: Switch to fasteoi flow tip-bot2 for Marc Zyngier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.