Re: [PATCH] arm64: dts: ti: k3*: Introduce reg definition for interrupt routers

From: Nishanth Menon
Date: Tue May 11 2021 - 15:56:26 EST


On 21:53-20210511, Lokesh Vutla wrote:
>
>
> On 10/05/21 8:25 pm, Nishanth Menon wrote:
> > Interrupt routers are memory mapped peripherals, that are organized
> > in our dts bus hierarchy to closely represents the actual hardware
> > behavior.
> >
> > However, without explicitly calling out the reg property, using
> > 2021.03+ dt-schema package, this exposes the following problem with
> > dtbs_check:
> >
> > /arch/arm64/boot/dts/ti/k3-am654-base-board.dt.yaml: bus@100000:
> > interrupt-controller0: {'type': 'object'} is not allowed for
> > {'compatible': ['ti,sci-intr'], .....
> >
> > Even though we don't use interrupt router directly via memory mapped
> > registers and have to use it via the system controller, the hardware
> > block is memory mapped, so describe the base address in device tree.
> >
> > This is a valid, comprehensive description of hardware and permitted
> > by the existing ti,sci-intr schema.
> >
> > Signed-off-by: Nishanth Menon <nm@xxxxxx>
> > ---
> >
> > if possible, I'd like to pick this fixup for 5.13 window..
> >
> > arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-am65-main.dtsi | 6 ++++--
> > arch/arm64/boot/dts/ti/k3-am65-wakeup.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 6 ++++--
> > arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j721e-main.dtsi | 6 ++++--
> > arch/arm64/boot/dts/ti/k3-j721e-mcu-wakeup.dtsi | 3 ++-
> > 8 files changed, 22 insertions(+), 11 deletions(-)
> >
> > diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> > index b2bcbf23eefd..a49e41021573 100644
> > --- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> > +++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
> > @@ -373,8 +373,9 @@ main_spi4: spi@20140000 {
> > clocks = <&k3_clks 145 0>;
> > };
> >
> > - main_gpio_intr: interrupt-controller0 {
> > + main_gpio_intr: interrupt-controller@a00000 {
> > compatible = "ti,sci-intr";
> > + reg = <0x00 0xa00000 0x00 0x800>;
>
> IIRC, we are going with 0x00a00000 (0x%8x) for all regs. With that fixed for all
> regs:
>
> Reviewed-by: Lokesh Vutla <lokeshvutla@xxxxxx>

Thanks for the catch.. Picked your reviews and posted v2
https://lore.kernel.org/linux-arm-kernel/20210511194821.13919-1-nm@xxxxxx/

--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D