arm64: dts: ti: k3-j784s4: Configure pinctrl for timer IO
authorNishanth Menon <nm@ti.com>
Wed, 31 May 2023 21:32:15 +0000 (16:32 -0500)
committerVignesh Raghavendra <vigneshr@ti.com>
Thu, 15 Jun 2023 05:35:47 +0000 (11:05 +0530)
There are timer IO pads in the MCU domain, and in the MAIN domain.
These pads can be muxed for the related timers.

The details of the multiplexing can be found in the register
documentation and Technical Reference Manual[1].

These are similar to J721e/J7200, but have different mux capabilities.

[1] http://www.ti.com/lit/zip/spruj52

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20230531213215.602395-7-nm@ti.com
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi
arch/arm64/boot/dts/ti/k3-j784s4-mcu-wakeup.dtsi

index 446350f099f3aef8910256ed9db2872fdae0c482..2ea0adae6832f7f882f8911f9e7c97233e1a40c5 100644 (file)
                pinctrl-single,function-mask = <0xffffffff>;
        };
 
+       /* TIMERIO pad input CTRLMMR_TIMER*_CTRL registers */
+       main_timerio_input: pinctrl@104200 {
+               compatible = "pinctrl-single";
+               reg = <0x00 0x104200 0x00 0x50>;
+               #pinctrl-cells = <1>;
+               pinctrl-single,register-width = <32>;
+               pinctrl-single,function-mask = <0x00000007>;
+       };
+
+       /* TIMERIO pad output CTCTRLMMR_TIMERIO*_CTRL registers */
+       main_timerio_output: pinctrl@104280 {
+               compatible = "pinctrl-single";
+               reg = <0x00 0x104280 0x00 0x20>;
+               #pinctrl-cells = <1>;
+               pinctrl-single,register-width = <32>;
+               pinctrl-single,function-mask = <0x0000001f>;
+       };
+
        main_crypto: crypto@4e00000 {
                compatible = "ti,j721e-sa2ul";
                reg = <0x00 0x4e00000 0x00 0x1200>;
index 591fce5ad56ea9f4308d9d2c13992b2dd1a9f864..4dda88e777ab17e7b35c12da6debe8fc14ef4747 100644 (file)
                ti,interrupt-ranges = <16 928 16>;
        };
 
+       /* MCU_TIMERIO pad input CTRLMMR_MCU_TIMER*_CTRL registers */
+       mcu_timerio_input: pinctrl@40f04200 {
+               compatible = "pinctrl-single";
+               reg = <0x00 0x40f04200 0x00 0x28>;
+               #pinctrl-cells = <1>;
+               pinctrl-single,register-width = <32>;
+               pinctrl-single,function-mask = <0x0000000f>;
+               /* Non-MPU Firmware usage */
+               status = "reserved";
+       };
+
+       /* MCU_TIMERIO pad output CTRLMMR_MCU_TIMERIO*_CTRL registers */
+       mcu_timerio_output: pinctrl@40f04280 {
+               compatible = "pinctrl-single";
+               reg = <0x00 0x40f04280 0x00 0x28>;
+               #pinctrl-cells = <1>;
+               pinctrl-single,register-width = <32>;
+               pinctrl-single,function-mask = <0x0000000f>;
+               /* Non-MPU Firmware usage */
+               status = "reserved";
+       };
+
        mcu_conf: syscon@40f00000 {
                compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
                reg = <0x00 0x40f00000 0x00 0x20000>;