On 16/11/2020 17:24:27+0100, Gregory CLEMENT wrote: > This patch extends irqchip driver for ocelot to be used with an other > vcoreiii base platform: Jaguar2. > > Based on a larger patch from Lars Povlsen <lars.povlsen@xxxxxxxxxxxxx> > Signed-off-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxx> Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> > --- > drivers/irqchip/irq-mscc-ocelot.c | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/drivers/irqchip/irq-mscc-ocelot.c b/drivers/irqchip/irq-mscc-ocelot.c > index 584af3b0a9e2..0dfea8771172 100644 > --- a/drivers/irqchip/irq-mscc-ocelot.c > +++ b/drivers/irqchip/irq-mscc-ocelot.c > @@ -70,6 +70,18 @@ static const struct chip_props luton_props = { > .n_irq = 28, > }; > > +static const struct chip_props jaguar2_props = { > + .flags = FLAGS_HAS_TRIGGER, > + .reg_off_sticky = 0x10, > + .reg_off_ena = 0x18, > + .reg_off_ena_clr = 0x1c, > + .reg_off_ena_set = 0x20, > + .reg_off_ident = 0x38, > + .reg_off_trigger = 0x5c, > + .reg_off_force = 0xc, > + .n_irq = 29, > +}; > + > static void ocelot_irq_unmask(struct irq_data *data) > { > struct irq_chip_generic *gc = irq_data_get_irq_chip_data(data); > @@ -237,3 +249,11 @@ static int __init luton_irq_init(struct device_node *node, > } > > IRQCHIP_DECLARE(luton_icpu, "mscc,luton-icpu-intr", luton_irq_init); > + > +static int __init jaguar2_irq_init(struct device_node *node, > + struct device_node *parent) > +{ > + return vcoreiii_irq_init(node, parent, &jaguar2_props); > +} > + > +IRQCHIP_DECLARE(jaguar2_icpu, "mscc,jaguar2-icpu-intr", jaguar2_irq_init); > -- > 2.29.2 > -- Alexandre Belloni, Bootlin Embedded Linux and Kernel engineering https://bootlin.com