[PATCH v13 1/5] dt-bindings: gpio: fix microchip,mpfs-gpio interrupt documentation
Rob Herring (Arm)
robh at kernel.org
Sun Mar 22 15:52:27 PDT 2026
On Wed, 18 Mar 2026 11:04:32 +0000, Conor Dooley wrote:
> From: Conor Dooley <conor.dooley at microchip.com>
>
> The microchip,mpfs-gpio binding suffered greatly due to being written
> with a narrow minded view of the controller, and the interrupt bits
> ended up incorrect. It was mistakenly assumed that the interrupt
> configuration was set by platform firmware, based on the FPGA
> configuration, and that the GPIO DT nodes were the only way to really
> communicate interrupt configuration to software.
>
> Instead, the mux should be a device in its own right, and the GPIO
> controllers should be connected to it, rather than to the PLIC.
> Now that a binding exists for that mux, try to fix the misconceptions
> in the GPIO controller binding.
>
> Firstly, it's not possible for this controller to have fewer than 14
> GPIOs, and thus 14 interrupts also. There are three controllers, with
> 14, 24 & 32 GPIOs each. The fabric core, CoreGPIO, can of course have
> a customisable number of GPIOs.
>
> The example is wacky too - it follows from the incorrect understanding
> that the GPIO controllers are connected to the PLIC directly. They are
> not however, with a mux sitting in between. Update the example to use
> the mux as a parent, and the interrupt numbers at the mux for GPIO2 as
> the example - rather than the strange looking, repeated <53>.
>
> Signed-off-by: Conor Dooley <conor.dooley at microchip.com>
> ---
> .../bindings/gpio/microchip,mpfs-gpio.yaml | 24 ++++++++++++-------
> 1 file changed, 15 insertions(+), 9 deletions(-)
>
Acked-by: Rob Herring (Arm) <robh at kernel.org>
More information about the linux-riscv
mailing list