[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240118112739.2000497-3-dawei.li@shingroup.cn>
Date: Thu, 18 Jan 2024 19:27:37 +0800
From: Dawei Li <dawei.li@...ngroup.cn>
To: tglx@...utronix.de,
maz@...nel.org
Cc: sdonthineni@...dia.com,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
dawei.li@...ngroup.cn,
set_pte_at@...look.com
Subject: [PATCH 2/4] irqchip/gic: Implement generic gic_irq() API for GIC & GIC-v3
GIC & GIC-v3 share same gic_irq() implementations, unify them into a
generic API.
Signed-off-by: Dawei Li <dawei.li@...ngroup.cn>
---
drivers/irqchip/irq-gic-common.h | 5 +++++
drivers/irqchip/irq-gic-v3.c | 5 -----
drivers/irqchip/irq-gic.c | 5 -----
3 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/drivers/irqchip/irq-gic-common.h b/drivers/irqchip/irq-gic-common.h
index f407cce9ecaa..ed18db4ab2c5 100644
--- a/drivers/irqchip/irq-gic-common.h
+++ b/drivers/irqchip/irq-gic-common.h
@@ -19,6 +19,11 @@ struct gic_quirk {
u32 mask;
};
+static inline unsigned int gic_irq(struct irq_data *d)
+{
+ return d->hwirq;
+}
+
int gic_configure_irq(unsigned int irq, unsigned int type,
void __iomem *base, void (*sync_access)(void));
void gic_dist_config(void __iomem *base, int gic_irqs,
diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
index b9d9375a3434..474a498a521e 100644
--- a/drivers/irqchip/irq-gic-v3.c
+++ b/drivers/irqchip/irq-gic-v3.c
@@ -181,11 +181,6 @@ static enum gic_intid_range get_intid_range(struct irq_data *d)
return __get_intid_range(d->hwirq);
}
-static inline unsigned int gic_irq(struct irq_data *d)
-{
- return d->hwirq;
-}
-
static inline bool gic_irq_in_rdist(struct irq_data *d)
{
switch (get_intid_range(d)) {
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c
index 412196a7dad5..0d559effa172 100644
--- a/drivers/irqchip/irq-gic.c
+++ b/drivers/irqchip/irq-gic.c
@@ -162,11 +162,6 @@ static inline void __iomem *gic_cpu_base(struct irq_data *d)
return gic_data_cpu_base(gic_data);
}
-static inline unsigned int gic_irq(struct irq_data *d)
-{
- return d->hwirq;
-}
-
static inline bool cascading_gic_irq(struct irq_data *d)
{
void *data = irq_data_get_irq_handler_data(d);
--
2.27.0
Powered by blists - more mailing lists