From: "Marek Behún" <kabel@kernel.org>
To: "Andrew Lunn" <andrew@lunn.ch>,
"Gregory Clement" <gregory.clement@bootlin.com>,
"Sebastian Hesselbarth" <sebastian.hesselbarth@gmail.com>,
"Thomas Gleixner" <tglx@linutronix.de>,
linux-arm-kernel@lists.infradead.org, arm@kernel.org,
"Andy Shevchenko" <andy@kernel.org>,
"Hans de Goede" <hdegoede@redhat.com>,
"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: "Marek Behún" <kabel@kernel.org>
Subject: [PATCH 11/13] irqchip/armada-370-xp: Iterate only valid bits of the per-CPU interrupt cause register
Date: Mon, 15 Jul 2024 12:51:54 +0200 [thread overview]
Message-ID: <20240715105156.18388-12-kabel@kernel.org> (raw)
In-Reply-To: <20240715105156.18388-1-kabel@kernel.org>
Use MPIC_PER_CPU_IRQS_NR (29) bound instead of BITS_PER_LONG (32) when
iterating the bits of the per-CPU interrupt cause register, since there
are only 29 per-CPU interrupts. The top 3 bits are always zero anyway,
so this may save a couple of cycles in the interrupt handler.
Signed-off-by: Marek Behún <kabel@kernel.org>
---
drivers/irqchip/irq-armada-370-xp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/irqchip/irq-armada-370-xp.c b/drivers/irqchip/irq-armada-370-xp.c
index 78d9c7699972..1db9160da20a 100644
--- a/drivers/irqchip/irq-armada-370-xp.c
+++ b/drivers/irqchip/irq-armada-370-xp.c
@@ -683,7 +683,7 @@ static void mpic_handle_cascade_irq(struct irq_desc *desc)
cause = readl_relaxed(mpic->per_cpu + MPIC_PPI_CAUSE);
cpuid = cpu_logical_map(smp_processor_id());
- for_each_set_bit(i, &cause, BITS_PER_LONG) {
+ for_each_set_bit(i, &cause, MPIC_PER_CPU_IRQS_NR) {
irqsrc = readl_relaxed(mpic->base + MPIC_INT_SOURCE_CTL(i));
/* Check if the interrupt is not masked on current CPU.
--
2.44.2
next prev parent reply other threads:[~2024-07-15 10:55 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-15 10:51 [PATCH 00/13] armada-370-xp irqchip updates round 5 Marek Behún
2024-07-15 10:51 ` [PATCH 01/13] irqchip/armada-370-xp: Drop IPI_DOORBELL_START and rename IPI_DOORBELL_END Marek Behún
2024-07-15 10:51 ` [PATCH 02/13] irqchip/armada-370-xp: Drop msi_doorbell_end() Marek Behún
2024-07-15 10:51 ` [PATCH 03/13] irqchip/armada-370-xp: Rename struct irq_domain variables for consistency Marek Behún
2024-07-28 21:41 ` Thomas Gleixner
2024-07-15 10:51 ` [PATCH 04/13] irqchip/armada-370-xp: Add the __init attribute to mpic_msi_init() Marek Behún
2024-07-28 21:42 ` Thomas Gleixner
2024-07-15 10:51 ` [PATCH 05/13] irqchip/armada-370-xp: Put __init attribute after return type in mpic_ipi_init() Marek Behún
2024-07-15 10:51 ` [PATCH 06/13] irqchip/armada-370-xp: Put static variables into driver private structure Marek Behún
2024-07-28 21:44 ` Thomas Gleixner
2024-07-15 10:51 ` [PATCH 07/13] irqchip/armada-370-xp: Put MSI doorbell limits into the mpic structure Marek Behún
2024-07-15 10:51 ` [PATCH 08/13] irqchip/armada-370-xp: Pass around the driver private structure Marek Behún
2024-07-15 10:51 ` [PATCH 09/13] irqchip/armada-370-xp: Dynamically allocate " Marek Behún
2024-07-15 10:51 ` [PATCH 10/13] irqchip/armada-370-xp: Fix reenabling last per-CPU interrupt Marek Behún
2024-07-28 21:47 ` Thomas Gleixner
2024-07-29 13:28 ` Marek Behún
2024-07-29 13:36 ` Thomas Gleixner
2024-07-15 10:51 ` Marek Behún [this message]
2024-07-28 21:53 ` [PATCH 11/13] irqchip/armada-370-xp: Iterate only valid bits of the per-CPU interrupt cause register Thomas Gleixner
2024-07-15 10:51 ` [PATCH 12/13] irqchip/armada-370-xp: Allow mapping only per-CPU interrupts Marek Behún
2024-07-28 21:55 ` Thomas Gleixner
2024-07-15 10:51 ` [PATCH 13/13] irqchip/armada-370-xp: Use the mpic_is_ipi_available() helper in one more case Marek Behún
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240715105156.18388-12-kabel@kernel.org \
--to=kabel@kernel.org \
--cc=andrew@lunn.ch \
--cc=andy@kernel.org \
--cc=arm@kernel.org \
--cc=gregory.clement@bootlin.com \
--cc=hdegoede@redhat.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=sebastian.hesselbarth@gmail.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.