[PATCH v7 04/12] irqchip/atmel-aic5: Add support for sam9x7 aic

Varshini Rajendran posted 12 patches 1 year, 5 months ago
There is a newer version of this series
[PATCH v7 04/12] irqchip/atmel-aic5: Add support for sam9x7 aic
Posted by Varshini Rajendran 1 year, 5 months ago
From: Hari Prasath <Hari.PrasathGE@microchip.com>

Add support for the Advanced interrupt controller(AIC) chip in the sam9x7.

Signed-off-by: Hari Prasath <Hari.PrasathGE@microchip.com>
Signed-off-by: Varshini Rajendran <varshini.rajendran@microchip.com>
---
Changes in v7:

- Removed the line break in the function.
---
 drivers/irqchip/irq-atmel-aic5.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/irqchip/irq-atmel-aic5.c b/drivers/irqchip/irq-atmel-aic5.c
index 145535bd7560..f9168efa4160 100644
--- a/drivers/irqchip/irq-atmel-aic5.c
+++ b/drivers/irqchip/irq-atmel-aic5.c
@@ -320,6 +320,7 @@ static const struct of_device_id aic5_irq_fixups[] __initconst = {
 	{ .compatible = "atmel,sama5d3", .data = sama5d3_aic_irq_fixup },
 	{ .compatible = "atmel,sama5d4", .data = sama5d3_aic_irq_fixup },
 	{ .compatible = "microchip,sam9x60", .data = sam9x60_aic_irq_fixup },
+	{ .compatible = "microchip,sam9x7", .data = sam9x60_aic_irq_fixup },
 	{ /* sentinel */ },
 };
 
@@ -406,3 +407,11 @@ static int __init sam9x60_aic5_of_init(struct device_node *node,
 	return aic5_of_init(node, parent, NR_SAM9X60_IRQS);
 }
 IRQCHIP_DECLARE(sam9x60_aic5, "microchip,sam9x60-aic", sam9x60_aic5_of_init);
+
+#define NR_SAM9X7_IRQS		70
+
+static int __init sam9x7_aic5_of_init(struct device_node *node, struct device_node *parent)
+{
+	return aic5_of_init(node, parent, NR_SAM9X7_IRQS);
+}
+IRQCHIP_DECLARE(sam9x7_aic5, "microchip,sam9x7-aic", sam9x7_aic5_of_init);
-- 
2.25.1
Re: [PATCH v7 04/12] irqchip/atmel-aic5: Add support for sam9x7 aic
Posted by Nicolas Ferre 1 year, 5 months ago
On 03/09/2024 at 08:42, Varshini Rajendran wrote:
> From: Hari Prasath <Hari.PrasathGE@microchip.com>
> 
> Add support for the Advanced interrupt controller(AIC) chip in the sam9x7.
> 
> Signed-off-by: Hari Prasath <Hari.PrasathGE@microchip.com>
> Signed-off-by: Varshini Rajendran <varshini.rajendran@microchip.com>

After several investigations to make this "smarter" (see on previous 
versions posts), we figured out this historic way of handling NR_XXX_IRQ 
is the best/simplest one.

Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>

Best regards,
   Nicolas

> ---
> Changes in v7:
> 
> - Removed the line break in the function.
> ---
>   drivers/irqchip/irq-atmel-aic5.c | 9 +++++++++
>   1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/irqchip/irq-atmel-aic5.c b/drivers/irqchip/irq-atmel-aic5.c
> index 145535bd7560..f9168efa4160 100644
> --- a/drivers/irqchip/irq-atmel-aic5.c
> +++ b/drivers/irqchip/irq-atmel-aic5.c
> @@ -320,6 +320,7 @@ static const struct of_device_id aic5_irq_fixups[] __initconst = {
>   	{ .compatible = "atmel,sama5d3", .data = sama5d3_aic_irq_fixup },
>   	{ .compatible = "atmel,sama5d4", .data = sama5d3_aic_irq_fixup },
>   	{ .compatible = "microchip,sam9x60", .data = sam9x60_aic_irq_fixup },
> +	{ .compatible = "microchip,sam9x7", .data = sam9x60_aic_irq_fixup },
>   	{ /* sentinel */ },
>   };
>   
> @@ -406,3 +407,11 @@ static int __init sam9x60_aic5_of_init(struct device_node *node,
>   	return aic5_of_init(node, parent, NR_SAM9X60_IRQS);
>   }
>   IRQCHIP_DECLARE(sam9x60_aic5, "microchip,sam9x60-aic", sam9x60_aic5_of_init);
> +
> +#define NR_SAM9X7_IRQS		70
> +
> +static int __init sam9x7_aic5_of_init(struct device_node *node, struct device_node *parent)
> +{
> +	return aic5_of_init(node, parent, NR_SAM9X7_IRQS);
> +}
> +IRQCHIP_DECLARE(sam9x7_aic5, "microchip,sam9x7-aic", sam9x7_aic5_of_init);
[tip: irq/core] irqchip/atmel-aic5: Add support for sam9x7 aic
Posted by tip-bot2 for Hari Prasath 1 year, 4 months ago
The following commit has been merged into the irq/core branch of tip:

Commit-ID:     e408b0131644b0b3e7ab880aad905ca0c8ca8ad0
Gitweb:        https://git.kernel.org/tip/e408b0131644b0b3e7ab880aad905ca0c8ca8ad0
Author:        Hari Prasath <Hari.PrasathGE@microchip.com>
AuthorDate:    Tue, 03 Sep 2024 12:12:52 +05:30
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Wed, 02 Oct 2024 15:36:47 +02:00

irqchip/atmel-aic5: Add support for sam9x7 aic

Add support for the Advanced interrupt controller(AIC) chip in the sam9x7.

Signed-off-by: Hari Prasath <Hari.PrasathGE@microchip.com>
Signed-off-by: Varshini Rajendran <varshini.rajendran@microchip.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/all/20240903064252.49530-1-varshini.rajendran@microchip.com

---
 drivers/irqchip/irq-atmel-aic5.c |  9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/irqchip/irq-atmel-aic5.c b/drivers/irqchip/irq-atmel-aic5.c
index c0f55dc..e98c287 100644
--- a/drivers/irqchip/irq-atmel-aic5.c
+++ b/drivers/irqchip/irq-atmel-aic5.c
@@ -319,6 +319,7 @@ static const struct of_device_id aic5_irq_fixups[] __initconst = {
 	{ .compatible = "atmel,sama5d3", .data = sama5d3_aic_irq_fixup },
 	{ .compatible = "atmel,sama5d4", .data = sama5d3_aic_irq_fixup },
 	{ .compatible = "microchip,sam9x60", .data = sam9x60_aic_irq_fixup },
+	{ .compatible = "microchip,sam9x7", .data = sam9x60_aic_irq_fixup },
 	{ /* sentinel */ },
 };
 
@@ -405,3 +406,11 @@ static int __init sam9x60_aic5_of_init(struct device_node *node,
 	return aic5_of_init(node, parent, NR_SAM9X60_IRQS);
 }
 IRQCHIP_DECLARE(sam9x60_aic5, "microchip,sam9x60-aic", sam9x60_aic5_of_init);
+
+#define NR_SAM9X7_IRQS		70
+
+static int __init sam9x7_aic5_of_init(struct device_node *node, struct device_node *parent)
+{
+	return aic5_of_init(node, parent, NR_SAM9X7_IRQS);
+}
+IRQCHIP_DECLARE(sam9x7_aic5, "microchip,sam9x7-aic", sam9x7_aic5_of_init);