linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V2] irqchip/irq-csky-mpintc: Fixup mask/unmask un-implementation
@ 2021-11-01 13:45 guoren
  2021-11-06 14:26 ` [irqchip: irq/irqchip-fixes] irqchip/csky-mpintc: Fixup mask/unmask implementation irqchip-bot for Guo Ren
  2021-11-12 16:15 ` irqchip-bot for Guo Ren
  0 siblings, 2 replies; 3+ messages in thread
From: guoren @ 2021-11-01 13:45 UTC (permalink / raw)
  To: guoren, maz, tglx; +Cc: linux-kernel, linux-csky, Guo Ren

From: Guo Ren <guoren@linux.alibaba.com>

The mask/unmask must be implemented, and enable/disable supplement
them if the HW requires something different at startup time. When
irq source is disabled by mask, mpintc could complete irq normally.

So just replace the with mask/unmask function.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Cc: Marc Zyngier <maz@kernel.org>

---

Changes since V2:
 - Correct Marc's email
 - Remove Tested-by
 - Rename the functions to match the fields
---
 drivers/irqchip/irq-csky-mpintc.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/irqchip/irq-csky-mpintc.c b/drivers/irqchip/irq-csky-mpintc.c
index a1534edef7fa..870dcb3486a8 100644
--- a/drivers/irqchip/irq-csky-mpintc.c
+++ b/drivers/irqchip/irq-csky-mpintc.c
@@ -78,7 +78,7 @@ static void csky_mpintc_handler(struct pt_regs *regs)
 		readl_relaxed(reg_base + INTCL_RDYIR), regs);
 }
 
-static void csky_mpintc_enable(struct irq_data *d)
+static void csky_mpintc_unmask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -87,7 +87,7 @@ static void csky_mpintc_enable(struct irq_data *d)
 	writel_relaxed(d->hwirq, reg_base + INTCL_SENR);
 }
 
-static void csky_mpintc_disable(struct irq_data *d)
+static void csky_mpintc_mask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -164,8 +164,8 @@ static int csky_irq_set_affinity(struct irq_data *d,
 static struct irq_chip csky_irq_chip = {
 	.name           = "C-SKY SMP Intc",
 	.irq_eoi	= csky_mpintc_eoi,
-	.irq_enable	= csky_mpintc_enable,
-	.irq_disable	= csky_mpintc_disable,
+	.irq_unmask	= csky_mpintc_unmask,
+	.irq_mask	= csky_mpintc_mask,
 	.irq_set_type	= csky_mpintc_set_type,
 #ifdef CONFIG_SMP
 	.irq_set_affinity = csky_irq_set_affinity,
-- 
2.25.1


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

* [irqchip: irq/irqchip-fixes] irqchip/csky-mpintc: Fixup mask/unmask implementation
  2021-11-01 13:45 [PATCH V2] irqchip/irq-csky-mpintc: Fixup mask/unmask un-implementation guoren
@ 2021-11-06 14:26 ` irqchip-bot for Guo Ren
  2021-11-12 16:15 ` irqchip-bot for Guo Ren
  1 sibling, 0 replies; 3+ messages in thread
From: irqchip-bot for Guo Ren @ 2021-11-06 14:26 UTC (permalink / raw)
  To: linux-kernel; +Cc: Guo Ren, Marc Zyngier, tglx

The following commit has been merged into the irq/irqchip-fixes branch of irqchip:

Commit-ID:     e5f041b6867f2990e55adb47482efc3653674de5
Gitweb:        https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/e5f041b6867f2990e55adb47482efc3653674de5
Author:        Guo Ren <guoren@linux.alibaba.com>
AuthorDate:    Mon, 01 Nov 2021 21:45:34 +08:00
Committer:     Marc Zyngier <maz@kernel.org>
CommitterDate: Sat, 06 Nov 2021 14:24:04 

irqchip/csky-mpintc: Fixup mask/unmask implementation

The mask/unmask must be implemented, and enable/disable supplement
them if the HW requires something different at startup time. When
irq source is disabled by mask, mpintc could complete irq normally.

So drop enable/disable if favour of mask/unmask.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211101134534.3804542-1-guoren@kernel.org
---
 drivers/irqchip/irq-csky-mpintc.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/irqchip/irq-csky-mpintc.c b/drivers/irqchip/irq-csky-mpintc.c
index cb403c9..4aebd67 100644
--- a/drivers/irqchip/irq-csky-mpintc.c
+++ b/drivers/irqchip/irq-csky-mpintc.c
@@ -78,7 +78,7 @@ static void csky_mpintc_handler(struct pt_regs *regs)
 		readl_relaxed(reg_base + INTCL_RDYIR));
 }
 
-static void csky_mpintc_enable(struct irq_data *d)
+static void csky_mpintc_unmask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -87,7 +87,7 @@ static void csky_mpintc_enable(struct irq_data *d)
 	writel_relaxed(d->hwirq, reg_base + INTCL_SENR);
 }
 
-static void csky_mpintc_disable(struct irq_data *d)
+static void csky_mpintc_mask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -164,8 +164,8 @@ static int csky_irq_set_affinity(struct irq_data *d,
 static struct irq_chip csky_irq_chip = {
 	.name           = "C-SKY SMP Intc",
 	.irq_eoi	= csky_mpintc_eoi,
-	.irq_enable	= csky_mpintc_enable,
-	.irq_disable	= csky_mpintc_disable,
+	.irq_unmask	= csky_mpintc_unmask,
+	.irq_mask	= csky_mpintc_mask,
 	.irq_set_type	= csky_mpintc_set_type,
 #ifdef CONFIG_SMP
 	.irq_set_affinity = csky_irq_set_affinity,

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

* [irqchip: irq/irqchip-fixes] irqchip/csky-mpintc: Fixup mask/unmask implementation
  2021-11-01 13:45 [PATCH V2] irqchip/irq-csky-mpintc: Fixup mask/unmask un-implementation guoren
  2021-11-06 14:26 ` [irqchip: irq/irqchip-fixes] irqchip/csky-mpintc: Fixup mask/unmask implementation irqchip-bot for Guo Ren
@ 2021-11-12 16:15 ` irqchip-bot for Guo Ren
  1 sibling, 0 replies; 3+ messages in thread
From: irqchip-bot for Guo Ren @ 2021-11-12 16:15 UTC (permalink / raw)
  To: linux-kernel; +Cc: Guo Ren, Marc Zyngier, tglx

The following commit has been merged into the irq/irqchip-fixes branch of irqchip:

Commit-ID:     1cbb418b69ed28f3395c6208931843a53d3fbcbe
Gitweb:        https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/1cbb418b69ed28f3395c6208931843a53d3fbcbe
Author:        Guo Ren <guoren@linux.alibaba.com>
AuthorDate:    Mon, 01 Nov 2021 21:45:34 +08:00
Committer:     Marc Zyngier <maz@kernel.org>
CommitterDate: Fri, 12 Nov 2021 16:09:50 

irqchip/csky-mpintc: Fixup mask/unmask implementation

The mask/unmask must be implemented, and enable/disable supplement
them if the HW requires something different at startup time. When
irq source is disabled by mask, mpintc could complete irq normally.

So drop enable/disable if favour of mask/unmask.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211101134534.3804542-1-guoren@kernel.org
---
 drivers/irqchip/irq-csky-mpintc.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/irqchip/irq-csky-mpintc.c b/drivers/irqchip/irq-csky-mpintc.c
index cb403c9..4aebd67 100644
--- a/drivers/irqchip/irq-csky-mpintc.c
+++ b/drivers/irqchip/irq-csky-mpintc.c
@@ -78,7 +78,7 @@ static void csky_mpintc_handler(struct pt_regs *regs)
 		readl_relaxed(reg_base + INTCL_RDYIR));
 }
 
-static void csky_mpintc_enable(struct irq_data *d)
+static void csky_mpintc_unmask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -87,7 +87,7 @@ static void csky_mpintc_enable(struct irq_data *d)
 	writel_relaxed(d->hwirq, reg_base + INTCL_SENR);
 }
 
-static void csky_mpintc_disable(struct irq_data *d)
+static void csky_mpintc_mask(struct irq_data *d)
 {
 	void __iomem *reg_base = this_cpu_read(intcl_reg);
 
@@ -164,8 +164,8 @@ static int csky_irq_set_affinity(struct irq_data *d,
 static struct irq_chip csky_irq_chip = {
 	.name           = "C-SKY SMP Intc",
 	.irq_eoi	= csky_mpintc_eoi,
-	.irq_enable	= csky_mpintc_enable,
-	.irq_disable	= csky_mpintc_disable,
+	.irq_unmask	= csky_mpintc_unmask,
+	.irq_mask	= csky_mpintc_mask,
 	.irq_set_type	= csky_mpintc_set_type,
 #ifdef CONFIG_SMP
 	.irq_set_affinity = csky_irq_set_affinity,

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

end of thread, other threads:[~2021-11-12 16:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-01 13:45 [PATCH V2] irqchip/irq-csky-mpintc: Fixup mask/unmask un-implementation guoren
2021-11-06 14:26 ` [irqchip: irq/irqchip-fixes] irqchip/csky-mpintc: Fixup mask/unmask implementation irqchip-bot for Guo Ren
2021-11-12 16:15 ` irqchip-bot for Guo Ren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).