1d361ed88SLokesh Vutla// SPDX-License-Identifier: GPL-2.0
2d361ed88SLokesh Vutla/*
3d361ed88SLokesh Vutla * Device Tree Source for J7200 SoC Family MCU/WAKEUP Domain peripherals
4d361ed88SLokesh Vutla *
5d361ed88SLokesh Vutla * Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/
6d361ed88SLokesh Vutla */
7d361ed88SLokesh Vutla
8d361ed88SLokesh Vutla&cbass_mcu_wakeup {
9d361ed88SLokesh Vutla	dmsc: dmsc@44083000 {
10d361ed88SLokesh Vutla		compatible = "ti,k2g-sci";
11d361ed88SLokesh Vutla		ti,host-id = <12>;
12d361ed88SLokesh Vutla
13d361ed88SLokesh Vutla		mbox-names = "rx", "tx";
14d361ed88SLokesh Vutla
15d361ed88SLokesh Vutla		mboxes= <&secure_proxy_main 11>,
16d361ed88SLokesh Vutla			<&secure_proxy_main 13>;
17d361ed88SLokesh Vutla
18d361ed88SLokesh Vutla		reg-names = "debug_messages";
19d361ed88SLokesh Vutla		reg = <0x00 0x44083000 0x00 0x1000>;
20d361ed88SLokesh Vutla
21d361ed88SLokesh Vutla		k3_pds: power-controller {
22d361ed88SLokesh Vutla			compatible = "ti,sci-pm-domain";
23d361ed88SLokesh Vutla			#power-domain-cells = <2>;
24d361ed88SLokesh Vutla		};
25d361ed88SLokesh Vutla
26d361ed88SLokesh Vutla		k3_clks: clocks {
27d361ed88SLokesh Vutla			compatible = "ti,k2g-sci-clk";
28d361ed88SLokesh Vutla			#clock-cells = <2>;
29d361ed88SLokesh Vutla		};
30d361ed88SLokesh Vutla
31d361ed88SLokesh Vutla		k3_reset: reset-controller {
32d361ed88SLokesh Vutla			compatible = "ti,sci-reset";
33d361ed88SLokesh Vutla			#reset-cells = <2>;
34d361ed88SLokesh Vutla		};
35d361ed88SLokesh Vutla	};
36d361ed88SLokesh Vutla
37a323da4bSGrygorii Strashko	mcu_conf: syscon@40f00000 {
38a323da4bSGrygorii Strashko		compatible = "syscon", "simple-mfd";
39a323da4bSGrygorii Strashko		reg = <0x00 0x40f00000 0x00 0x20000>;
40a323da4bSGrygorii Strashko		#address-cells = <1>;
41a323da4bSGrygorii Strashko		#size-cells = <1>;
42a323da4bSGrygorii Strashko		ranges = <0x00 0x00 0x40f00000 0x20000>;
43a323da4bSGrygorii Strashko
44a323da4bSGrygorii Strashko		phy_gmii_sel: phy@4040 {
45a323da4bSGrygorii Strashko			compatible = "ti,am654-phy-gmii-sel";
46a323da4bSGrygorii Strashko			reg = <0x4040 0x4>;
47a323da4bSGrygorii Strashko			#phy-cells = <1>;
48a323da4bSGrygorii Strashko		};
49a323da4bSGrygorii Strashko	};
50a323da4bSGrygorii Strashko
51d361ed88SLokesh Vutla	chipid@43000014 {
52d361ed88SLokesh Vutla		compatible = "ti,am654-chipid";
53d361ed88SLokesh Vutla		reg = <0x00 0x43000014 0x00 0x4>;
54d361ed88SLokesh Vutla	};
55d361ed88SLokesh Vutla
56d361ed88SLokesh Vutla	wkup_pmx0: pinctrl@4301c000 {
57d361ed88SLokesh Vutla		compatible = "pinctrl-single";
58d361ed88SLokesh Vutla		/* Proxy 0 addressing */
59d361ed88SLokesh Vutla		reg = <0x00 0x4301c000 0x00 0x178>;
60d361ed88SLokesh Vutla		#pinctrl-cells = <1>;
61d361ed88SLokesh Vutla		pinctrl-single,register-width = <32>;
62d361ed88SLokesh Vutla		pinctrl-single,function-mask = <0xffffffff>;
63d361ed88SLokesh Vutla	};
64d361ed88SLokesh Vutla
65d361ed88SLokesh Vutla	mcu_ram: sram@41c00000 {
66d361ed88SLokesh Vutla		compatible = "mmio-sram";
67d361ed88SLokesh Vutla		reg = <0x00 0x41c00000 0x00 0x100000>;
68d361ed88SLokesh Vutla		ranges = <0x00 0x00 0x41c00000 0x100000>;
69d361ed88SLokesh Vutla		#address-cells = <1>;
70d361ed88SLokesh Vutla		#size-cells = <1>;
71d361ed88SLokesh Vutla	};
72d361ed88SLokesh Vutla
73d361ed88SLokesh Vutla	wkup_uart0: serial@42300000 {
74d361ed88SLokesh Vutla		compatible = "ti,j721e-uart", "ti,am654-uart";
75d361ed88SLokesh Vutla		reg = <0x00 0x42300000 0x00 0x100>;
76d361ed88SLokesh Vutla		reg-shift = <2>;
77d361ed88SLokesh Vutla		reg-io-width = <4>;
78d361ed88SLokesh Vutla		interrupts = <GIC_SPI 897 IRQ_TYPE_LEVEL_HIGH>;
79d361ed88SLokesh Vutla		clock-frequency = <48000000>;
80d361ed88SLokesh Vutla		current-speed = <115200>;
81d361ed88SLokesh Vutla		power-domains = <&k3_pds 287 TI_SCI_PD_EXCLUSIVE>;
82d361ed88SLokesh Vutla		clocks = <&k3_clks 287 2>;
83d361ed88SLokesh Vutla		clock-names = "fclk";
84d361ed88SLokesh Vutla	};
85d361ed88SLokesh Vutla
86d361ed88SLokesh Vutla	mcu_uart0: serial@40a00000 {
87d361ed88SLokesh Vutla		compatible = "ti,j721e-uart", "ti,am654-uart";
88d361ed88SLokesh Vutla		reg = <0x00 0x40a00000 0x00 0x100>;
89d361ed88SLokesh Vutla		reg-shift = <2>;
90d361ed88SLokesh Vutla		reg-io-width = <4>;
91d361ed88SLokesh Vutla		interrupts = <GIC_SPI 846 IRQ_TYPE_LEVEL_HIGH>;
92d361ed88SLokesh Vutla		clock-frequency = <96000000>;
93d361ed88SLokesh Vutla		current-speed = <115200>;
94d361ed88SLokesh Vutla		power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>;
95d361ed88SLokesh Vutla		clocks = <&k3_clks 149 2>;
96d361ed88SLokesh Vutla		clock-names = "fclk";
97d361ed88SLokesh Vutla	};
98d361ed88SLokesh Vutla
99d361ed88SLokesh Vutla	wkup_gpio_intr: interrupt-controller2 {
100d361ed88SLokesh Vutla		compatible = "ti,sci-intr";
101d361ed88SLokesh Vutla		ti,intr-trigger-type = <1>;
102d361ed88SLokesh Vutla		interrupt-controller;
103d361ed88SLokesh Vutla		interrupt-parent = <&gic500>;
104d361ed88SLokesh Vutla		#interrupt-cells = <1>;
105d361ed88SLokesh Vutla		ti,sci = <&dmsc>;
106d361ed88SLokesh Vutla		ti,sci-dev-id = <137>;
107d361ed88SLokesh Vutla		ti,interrupt-ranges = <16 960 16>;
108d361ed88SLokesh Vutla	};
10946374264SPeter Ujfalusi
11046374264SPeter Ujfalusi	mcu_navss: bus@28380000 {
11146374264SPeter Ujfalusi		compatible = "simple-mfd";
11246374264SPeter Ujfalusi		#address-cells = <2>;
11346374264SPeter Ujfalusi		#size-cells = <2>;
11446374264SPeter Ujfalusi		ranges = <0x00 0x28380000 0x00 0x28380000 0x00 0x03880000>;
11546374264SPeter Ujfalusi		dma-coherent;
11646374264SPeter Ujfalusi		dma-ranges;
11746374264SPeter Ujfalusi		ti,sci-dev-id = <232>;
11846374264SPeter Ujfalusi
11946374264SPeter Ujfalusi		mcu_ringacc: ringacc@2b800000 {
12046374264SPeter Ujfalusi			compatible = "ti,am654-navss-ringacc";
12146374264SPeter Ujfalusi			reg =	<0x00 0x2b800000 0x00 0x400000>,
12246374264SPeter Ujfalusi				<0x00 0x2b000000 0x00 0x400000>,
12346374264SPeter Ujfalusi				<0x00 0x28590000 0x00 0x100>,
12446374264SPeter Ujfalusi				<0x00 0x2a500000 0x00 0x40000>;
12546374264SPeter Ujfalusi			reg-names = "rt", "fifos", "proxy_gcfg", "proxy_target";
12646374264SPeter Ujfalusi			ti,num-rings = <286>;
12746374264SPeter Ujfalusi			ti,sci-rm-range-gp-rings = <0x1>; /* GP ring range */
12846374264SPeter Ujfalusi			ti,sci = <&dmsc>;
12946374264SPeter Ujfalusi			ti,sci-dev-id = <235>;
13046374264SPeter Ujfalusi			msi-parent = <&main_udmass_inta>;
13146374264SPeter Ujfalusi		};
13246374264SPeter Ujfalusi
13346374264SPeter Ujfalusi		mcu_udmap: dma-controller@285c0000 {
13446374264SPeter Ujfalusi			compatible = "ti,j721e-navss-mcu-udmap";
13546374264SPeter Ujfalusi			reg =	<0x00 0x285c0000 0x00 0x100>,
13646374264SPeter Ujfalusi				<0x00 0x2a800000 0x00 0x40000>,
13746374264SPeter Ujfalusi				<0x00 0x2aa00000 0x00 0x40000>;
13846374264SPeter Ujfalusi			reg-names = "gcfg", "rchanrt", "tchanrt";
13946374264SPeter Ujfalusi			msi-parent = <&main_udmass_inta>;
14046374264SPeter Ujfalusi			#dma-cells = <1>;
14146374264SPeter Ujfalusi
14246374264SPeter Ujfalusi			ti,sci = <&dmsc>;
14346374264SPeter Ujfalusi			ti,sci-dev-id = <236>;
14446374264SPeter Ujfalusi			ti,ringacc = <&mcu_ringacc>;
14546374264SPeter Ujfalusi
14646374264SPeter Ujfalusi			ti,sci-rm-range-tchan = <0x0d>, /* TX_CHAN */
14746374264SPeter Ujfalusi						<0x0f>; /* TX_HCHAN */
14846374264SPeter Ujfalusi			ti,sci-rm-range-rchan = <0x0a>, /* RX_CHAN */
14946374264SPeter Ujfalusi						<0x0b>; /* RX_HCHAN */
15046374264SPeter Ujfalusi			ti,sci-rm-range-rflow = <0x00>; /* GP RFLOW */
15146374264SPeter Ujfalusi		};
15246374264SPeter Ujfalusi	};
153a323da4bSGrygorii Strashko
154a323da4bSGrygorii Strashko	mcu_cpsw: ethernet@46000000 {
155a323da4bSGrygorii Strashko		compatible = "ti,j721e-cpsw-nuss";
156a323da4bSGrygorii Strashko		#address-cells = <2>;
157a323da4bSGrygorii Strashko		#size-cells = <2>;
158a323da4bSGrygorii Strashko		reg = <0x00 0x46000000 0x00 0x200000>;
159a323da4bSGrygorii Strashko		reg-names = "cpsw_nuss";
160a323da4bSGrygorii Strashko		ranges = <0x00 0x00 0x00 0x46000000 0x00 0x200000>;
161a323da4bSGrygorii Strashko		dma-coherent;
162a323da4bSGrygorii Strashko		clocks = <&k3_clks 18 21>;
163a323da4bSGrygorii Strashko		clock-names = "fck";
164a323da4bSGrygorii Strashko		power-domains = <&k3_pds 18 TI_SCI_PD_EXCLUSIVE>;
165a323da4bSGrygorii Strashko
166a323da4bSGrygorii Strashko		dmas = <&mcu_udmap 0xf000>,
167a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf001>,
168a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf002>,
169a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf003>,
170a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf004>,
171a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf005>,
172a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf006>,
173a323da4bSGrygorii Strashko		       <&mcu_udmap 0xf007>,
174a323da4bSGrygorii Strashko		       <&mcu_udmap 0x7000>;
175a323da4bSGrygorii Strashko		dma-names = "tx0", "tx1", "tx2", "tx3",
176a323da4bSGrygorii Strashko			    "tx4", "tx5", "tx6", "tx7",
177a323da4bSGrygorii Strashko			    "rx";
178a323da4bSGrygorii Strashko
179a323da4bSGrygorii Strashko		ethernet-ports {
180a323da4bSGrygorii Strashko			#address-cells = <1>;
181a323da4bSGrygorii Strashko			#size-cells = <0>;
182a323da4bSGrygorii Strashko
183a323da4bSGrygorii Strashko			cpsw_port1: port@1 {
184a323da4bSGrygorii Strashko				reg = <1>;
185a323da4bSGrygorii Strashko				ti,mac-only;
186a323da4bSGrygorii Strashko				label = "port1";
187a323da4bSGrygorii Strashko				ti,syscon-efuse = <&mcu_conf 0x200>;
188a323da4bSGrygorii Strashko				phys = <&phy_gmii_sel 1>;
189a323da4bSGrygorii Strashko			};
190a323da4bSGrygorii Strashko		};
191a323da4bSGrygorii Strashko
192a323da4bSGrygorii Strashko		davinci_mdio: mdio@f00 {
193a323da4bSGrygorii Strashko			compatible = "ti,cpsw-mdio","ti,davinci_mdio";
194a323da4bSGrygorii Strashko			reg = <0x00 0xf00 0x00 0x100>;
195a323da4bSGrygorii Strashko			#address-cells = <1>;
196a323da4bSGrygorii Strashko			#size-cells = <0>;
197a323da4bSGrygorii Strashko			clocks = <&k3_clks 18 21>;
198a323da4bSGrygorii Strashko			clock-names = "fck";
199a323da4bSGrygorii Strashko			bus_freq = <1000000>;
200a323da4bSGrygorii Strashko		};
201a323da4bSGrygorii Strashko
202a323da4bSGrygorii Strashko		cpts@3d000 {
203a323da4bSGrygorii Strashko			compatible = "ti,am65-cpts";
204a323da4bSGrygorii Strashko			reg = <0x00 0x3d000 0x00 0x400>;
205a323da4bSGrygorii Strashko			clocks = <&k3_clks 18 2>;
206a323da4bSGrygorii Strashko			clock-names = "cpts";
207a323da4bSGrygorii Strashko			interrupts-extended = <&gic500 GIC_SPI 858 IRQ_TYPE_LEVEL_HIGH>;
208a323da4bSGrygorii Strashko			interrupt-names = "cpts";
209a323da4bSGrygorii Strashko			ti,cpts-ext-ts-inputs = <4>;
210a323da4bSGrygorii Strashko			ti,cpts-periodic-outputs = <2>;
211a323da4bSGrygorii Strashko		};
212a323da4bSGrygorii Strashko	};
21303bfeb52SVignesh Raghavendra
21403bfeb52SVignesh Raghavendra	mcu_i2c0: i2c@40b00000 {
21503bfeb52SVignesh Raghavendra		compatible = "ti,j721e-i2c", "ti,omap4-i2c";
21603bfeb52SVignesh Raghavendra		reg = <0x00 0x40b00000 0x00 0x100>;
21703bfeb52SVignesh Raghavendra		interrupts = <GIC_SPI 852 IRQ_TYPE_LEVEL_HIGH>;
21803bfeb52SVignesh Raghavendra		#address-cells = <1>;
21903bfeb52SVignesh Raghavendra		#size-cells = <0>;
22003bfeb52SVignesh Raghavendra		clock-names = "fck";
22103bfeb52SVignesh Raghavendra		clocks = <&k3_clks 194 1>;
22203bfeb52SVignesh Raghavendra		power-domains = <&k3_pds 194 TI_SCI_PD_EXCLUSIVE>;
22303bfeb52SVignesh Raghavendra	};
22403bfeb52SVignesh Raghavendra
22503bfeb52SVignesh Raghavendra	mcu_i2c1: i2c@40b10000 {
22603bfeb52SVignesh Raghavendra		compatible = "ti,j721e-i2c", "ti,omap4-i2c";
22703bfeb52SVignesh Raghavendra		reg = <0x00 0x40b10000 0x00 0x100>;
22803bfeb52SVignesh Raghavendra		interrupts = <GIC_SPI 853 IRQ_TYPE_LEVEL_HIGH>;
22903bfeb52SVignesh Raghavendra		#address-cells = <1>;
23003bfeb52SVignesh Raghavendra		#size-cells = <0>;
23103bfeb52SVignesh Raghavendra		clock-names = "fck";
23203bfeb52SVignesh Raghavendra		clocks = <&k3_clks 195 1>;
23303bfeb52SVignesh Raghavendra		power-domains = <&k3_pds 195 TI_SCI_PD_EXCLUSIVE>;
23403bfeb52SVignesh Raghavendra	};
23503bfeb52SVignesh Raghavendra
23603bfeb52SVignesh Raghavendra	wkup_i2c0: i2c@42120000 {
23703bfeb52SVignesh Raghavendra		compatible = "ti,j721e-i2c", "ti,omap4-i2c";
23803bfeb52SVignesh Raghavendra		reg = <0x00 0x42120000 0x00 0x100>;
23903bfeb52SVignesh Raghavendra		interrupts = <GIC_SPI 896 IRQ_TYPE_LEVEL_HIGH>;
24003bfeb52SVignesh Raghavendra		#address-cells = <1>;
24103bfeb52SVignesh Raghavendra		#size-cells = <0>;
24203bfeb52SVignesh Raghavendra		clock-names = "fck";
24303bfeb52SVignesh Raghavendra		clocks = <&k3_clks 197 1>;
24403bfeb52SVignesh Raghavendra		power-domains = <&k3_pds 197 TI_SCI_PD_SHARED>;
24503bfeb52SVignesh Raghavendra	};
2461b772656SVignesh Raghavendra
2471b772656SVignesh Raghavendra	fss: syscon@47000000 {
2481b772656SVignesh Raghavendra		compatible = "syscon", "simple-mfd";
2491b772656SVignesh Raghavendra		reg = <0x00 0x47000000 0x00 0x100>;
2501b772656SVignesh Raghavendra		#address-cells = <2>;
2511b772656SVignesh Raghavendra		#size-cells = <2>;
2521b772656SVignesh Raghavendra		ranges;
2531b772656SVignesh Raghavendra
2541b772656SVignesh Raghavendra		hbmc_mux: hbmc-mux {
2551b772656SVignesh Raghavendra			compatible = "mmio-mux";
2561b772656SVignesh Raghavendra			#mux-control-cells = <1>;
2571b772656SVignesh Raghavendra			mux-reg-masks = <0x4 0x2>; /* HBMC select */
2581b772656SVignesh Raghavendra		};
2591b772656SVignesh Raghavendra
2601b772656SVignesh Raghavendra		hbmc: hyperbus@47034000 {
2611b772656SVignesh Raghavendra			compatible = "ti,am654-hbmc";
2621b772656SVignesh Raghavendra			reg = <0x00 0x47034000 0x00 0x100>,
2631b772656SVignesh Raghavendra				<0x05 0x00000000 0x01 0x0000000>;
2641b772656SVignesh Raghavendra			power-domains = <&k3_pds 102 TI_SCI_PD_EXCLUSIVE>;
2651b772656SVignesh Raghavendra			clocks = <&k3_clks 102 0>;
2661b772656SVignesh Raghavendra			assigned-clocks = <&k3_clks 102 5>;
2671b772656SVignesh Raghavendra			assigned-clock-rates = <333333333>;
2681b772656SVignesh Raghavendra			#address-cells = <2>;
2691b772656SVignesh Raghavendra			#size-cells = <1>;
2701b772656SVignesh Raghavendra			mux-controls = <&hbmc_mux 0>;
2711b772656SVignesh Raghavendra		};
2721b772656SVignesh Raghavendra	};
273d361ed88SLokesh Vutla};
274