Hi Herve, On Mon, Oct 27, 2025 at 01:35:59PM +0100, Herve Codina (Schneider Electric) wrote: > On the Renesas RZ/N1 SoC, GPIOs can generate interruptions. Those > interruption lines are multiplexed by the GPIO Interrupt Multiplexer in > order to map 32 * 3 GPIO interrupt lines to 8 GIC interrupt lines. > > The GPIO interrupt multiplexer IP does nothing but select 8 GPIO > IRQ lines out of the 96 available to wire them to the GIC input lines. > > Signed-off-by: Herve Codina (Schneider Electric) Good news first: Reviewed-by: Wolfram Sang Tested-by: Wolfram Sang I can access GPIO LEDs on my board and PHY interrupts also work. > + if (parent_args->args[1] < RZN1_IRQMUX_GIC_SPI_BASE || > + parent_args->args[1] >= RZN1_IRQMUX_GIC_SPI_BASE + RZN1_IRQMUX_NUM_OUTPUTS) { > + dev_err(dev, "Invalid GIC interrupt %u\n", parent_args->args[1]); > + return -EINVAL; > + } I really like this solution. I think I suggested it before but can't recall the details. And it is not worth digging it up again. Looks good, works, perfect. ... > +static int rzn1_irqmux_probe(struct platform_device *pdev) > +{ > + struct device *dev = &pdev->dev; > + struct device_node *np = dev->of_node; > + u32 __iomem *regs; > + > + regs = devm_platform_ioremap_resource(pdev, 0); > + if (IS_ERR(regs)) > + return PTR_ERR(regs); > + > + return rzn1_irqmux_setup(dev, np, regs); The only super minor thing is that we could fold rzn1_irqmux_setup() into probe() according to my taste. But I am also fine as is. Looking really forward to see this series finally going upstream. Thanks again for your work on this! Wolfram