xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/dra74x.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (C) 2014 Texas Instruments Incorporated - https://www.ti.com/
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Based on "omap4.dtsi"
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun#include "dra7.dtsi"
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun/ {
11*4882a593Smuzhiyun	compatible = "ti,dra742", "ti,dra74", "ti,dra7";
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun	cpus {
14*4882a593Smuzhiyun		cpu@1 {
15*4882a593Smuzhiyun			device_type = "cpu";
16*4882a593Smuzhiyun			compatible = "arm,cortex-a15";
17*4882a593Smuzhiyun			reg = <1>;
18*4882a593Smuzhiyun			operating-points-v2 = <&cpu0_opp_table>;
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun			clocks = <&dpll_mpu_ck>;
21*4882a593Smuzhiyun			clock-names = "cpu";
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun			clock-latency = <300000>; /* From omap-cpufreq driver */
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun			/* cooling options */
26*4882a593Smuzhiyun			#cooling-cells = <2>; /* min followed by max */
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun			vbb-supply = <&abb_mpu>;
29*4882a593Smuzhiyun		};
30*4882a593Smuzhiyun	};
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun	aliases {
33*4882a593Smuzhiyun		rproc0 = &ipu1;
34*4882a593Smuzhiyun		rproc1 = &ipu2;
35*4882a593Smuzhiyun		rproc2 = &dsp1;
36*4882a593Smuzhiyun		rproc3 = &dsp2;
37*4882a593Smuzhiyun	};
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun	pmu {
40*4882a593Smuzhiyun		compatible = "arm,cortex-a15-pmu";
41*4882a593Smuzhiyun		interrupt-parent = <&wakeupgen>;
42*4882a593Smuzhiyun		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
43*4882a593Smuzhiyun			     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
44*4882a593Smuzhiyun	};
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun	ocp {
47*4882a593Smuzhiyun		dsp2_system: dsp_system@41500000 {
48*4882a593Smuzhiyun			compatible = "syscon";
49*4882a593Smuzhiyun			reg = <0x41500000 0x100>;
50*4882a593Smuzhiyun		};
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun		target-module@41501000 {
54*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
55*4882a593Smuzhiyun			reg = <0x41501000 0x4>,
56*4882a593Smuzhiyun			      <0x41501010 0x4>,
57*4882a593Smuzhiyun			      <0x41501014 0x4>;
58*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
59*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
60*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
61*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
62*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
63*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
64*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
65*4882a593Smuzhiyun			clocks = <&dsp2_clkctrl DRA7_DSP2_MMU0_DSP2_CLKCTRL 0>;
66*4882a593Smuzhiyun			clock-names = "fck";
67*4882a593Smuzhiyun			resets = <&prm_dsp2 1>;
68*4882a593Smuzhiyun			reset-names = "rstctrl";
69*4882a593Smuzhiyun			ranges = <0x0 0x41501000 0x1000>;
70*4882a593Smuzhiyun			#size-cells = <1>;
71*4882a593Smuzhiyun			#address-cells = <1>;
72*4882a593Smuzhiyun
73*4882a593Smuzhiyun			mmu0_dsp2: mmu@0 {
74*4882a593Smuzhiyun				compatible = "ti,dra7-dsp-iommu";
75*4882a593Smuzhiyun				reg = <0x0 0x100>;
76*4882a593Smuzhiyun				interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
77*4882a593Smuzhiyun				#iommu-cells = <0>;
78*4882a593Smuzhiyun				ti,syscon-mmuconfig = <&dsp2_system 0x0>;
79*4882a593Smuzhiyun			};
80*4882a593Smuzhiyun		};
81*4882a593Smuzhiyun
82*4882a593Smuzhiyun		target-module@41502000 {
83*4882a593Smuzhiyun			compatible = "ti,sysc-omap2", "ti,sysc";
84*4882a593Smuzhiyun			reg = <0x41502000 0x4>,
85*4882a593Smuzhiyun			      <0x41502010 0x4>,
86*4882a593Smuzhiyun			      <0x41502014 0x4>;
87*4882a593Smuzhiyun			reg-names = "rev", "sysc", "syss";
88*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
89*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
90*4882a593Smuzhiyun					<SYSC_IDLE_SMART>;
91*4882a593Smuzhiyun			ti,sysc-mask = <(SYSC_OMAP2_CLOCKACTIVITY |
92*4882a593Smuzhiyun					 SYSC_OMAP2_SOFTRESET |
93*4882a593Smuzhiyun					 SYSC_OMAP2_AUTOIDLE)>;
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun			clocks = <&dsp2_clkctrl DRA7_DSP2_MMU0_DSP2_CLKCTRL 0>;
96*4882a593Smuzhiyun			clock-names = "fck";
97*4882a593Smuzhiyun			resets = <&prm_dsp2 1>;
98*4882a593Smuzhiyun			reset-names = "rstctrl";
99*4882a593Smuzhiyun			ranges = <0x0 0x41502000 0x1000>;
100*4882a593Smuzhiyun			#size-cells = <1>;
101*4882a593Smuzhiyun			#address-cells = <1>;
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun			mmu1_dsp2: mmu@0 {
104*4882a593Smuzhiyun				compatible = "ti,dra7-dsp-iommu";
105*4882a593Smuzhiyun				reg = <0x0 0x100>;
106*4882a593Smuzhiyun				interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
107*4882a593Smuzhiyun				#iommu-cells = <0>;
108*4882a593Smuzhiyun				ti,syscon-mmuconfig = <&dsp2_system 0x1>;
109*4882a593Smuzhiyun			};
110*4882a593Smuzhiyun		};
111*4882a593Smuzhiyun
112*4882a593Smuzhiyun		dsp2: dsp@41000000 {
113*4882a593Smuzhiyun			compatible = "ti,dra7-dsp";
114*4882a593Smuzhiyun			reg = <0x41000000 0x48000>,
115*4882a593Smuzhiyun			      <0x41600000 0x8000>,
116*4882a593Smuzhiyun			      <0x41700000 0x8000>;
117*4882a593Smuzhiyun			reg-names = "l2ram", "l1pram", "l1dram";
118*4882a593Smuzhiyun			ti,bootreg = <&scm_conf 0x560 10>;
119*4882a593Smuzhiyun			iommus = <&mmu0_dsp2>, <&mmu1_dsp2>;
120*4882a593Smuzhiyun			status = "disabled";
121*4882a593Smuzhiyun			resets = <&prm_dsp2 0>;
122*4882a593Smuzhiyun			clocks = <&dsp2_clkctrl DRA7_DSP2_MMU0_DSP2_CLKCTRL 0>;
123*4882a593Smuzhiyun			firmware-name = "dra7-dsp2-fw.xe66";
124*4882a593Smuzhiyun		};
125*4882a593Smuzhiyun	};
126*4882a593Smuzhiyun};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun&cpu0_opp_table {
129*4882a593Smuzhiyun	opp-shared;
130*4882a593Smuzhiyun};
131*4882a593Smuzhiyun
132*4882a593Smuzhiyun&dss {
133*4882a593Smuzhiyun	reg = <0 0x80>,
134*4882a593Smuzhiyun	      <0x4054 0x4>,
135*4882a593Smuzhiyun	      <0x4300 0x20>,
136*4882a593Smuzhiyun	      <0x9054 0x4>,
137*4882a593Smuzhiyun	      <0x9300 0x20>;
138*4882a593Smuzhiyun	reg-names = "dss", "pll1_clkctrl", "pll1",
139*4882a593Smuzhiyun		    "pll2_clkctrl", "pll2";
140*4882a593Smuzhiyun
141*4882a593Smuzhiyun	clocks = <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 8>,
142*4882a593Smuzhiyun		 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 12>,
143*4882a593Smuzhiyun		 <&dss_clkctrl DRA7_DSS_DSS_CORE_CLKCTRL 13>;
144*4882a593Smuzhiyun	clock-names = "fck", "video1_clk", "video2_clk";
145*4882a593Smuzhiyun};
146*4882a593Smuzhiyun
147*4882a593Smuzhiyun&mailbox5 {
148*4882a593Smuzhiyun	mbox_ipu1_ipc3x: mbox-ipu1-ipc3x {
149*4882a593Smuzhiyun		ti,mbox-tx = <6 2 2>;
150*4882a593Smuzhiyun		ti,mbox-rx = <4 2 2>;
151*4882a593Smuzhiyun		status = "disabled";
152*4882a593Smuzhiyun	};
153*4882a593Smuzhiyun	mbox_dsp1_ipc3x: mbox-dsp1-ipc3x {
154*4882a593Smuzhiyun		ti,mbox-tx = <5 2 2>;
155*4882a593Smuzhiyun		ti,mbox-rx = <1 2 2>;
156*4882a593Smuzhiyun		status = "disabled";
157*4882a593Smuzhiyun	};
158*4882a593Smuzhiyun};
159*4882a593Smuzhiyun
160*4882a593Smuzhiyun&mailbox6 {
161*4882a593Smuzhiyun	mbox_ipu2_ipc3x: mbox-ipu2-ipc3x {
162*4882a593Smuzhiyun		ti,mbox-tx = <6 2 2>;
163*4882a593Smuzhiyun		ti,mbox-rx = <4 2 2>;
164*4882a593Smuzhiyun		status = "disabled";
165*4882a593Smuzhiyun	};
166*4882a593Smuzhiyun	mbox_dsp2_ipc3x: mbox-dsp2-ipc3x {
167*4882a593Smuzhiyun		ti,mbox-tx = <5 2 2>;
168*4882a593Smuzhiyun		ti,mbox-rx = <1 2 2>;
169*4882a593Smuzhiyun		status = "disabled";
170*4882a593Smuzhiyun	};
171*4882a593Smuzhiyun};
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun&pcie1_rc {
174*4882a593Smuzhiyun	compatible = "ti,dra746-pcie-rc", "ti,dra7-pcie";
175*4882a593Smuzhiyun};
176*4882a593Smuzhiyun
177*4882a593Smuzhiyun&pcie1_ep {
178*4882a593Smuzhiyun	compatible = "ti,dra746-pcie-ep", "ti,dra7-pcie-ep";
179*4882a593Smuzhiyun};
180*4882a593Smuzhiyun
181*4882a593Smuzhiyun&pcie2_rc {
182*4882a593Smuzhiyun	compatible = "ti,dra746-pcie-rc", "ti,dra7-pcie";
183*4882a593Smuzhiyun};
184*4882a593Smuzhiyun
185*4882a593Smuzhiyun&l4_per3 {
186*4882a593Smuzhiyun	segment@0 {
187*4882a593Smuzhiyun		usb4_tm: target-module@140000 {         /* 0x48940000, ap 75 3c.0 */
188*4882a593Smuzhiyun			compatible = "ti,sysc-omap4", "ti,sysc";
189*4882a593Smuzhiyun			reg = <0x140000 0x4>,
190*4882a593Smuzhiyun			      <0x140010 0x4>;
191*4882a593Smuzhiyun			reg-names = "rev", "sysc";
192*4882a593Smuzhiyun			ti,sysc-mask = <SYSC_OMAP4_DMADISABLE>;
193*4882a593Smuzhiyun			ti,sysc-midle = <SYSC_IDLE_FORCE>,
194*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
195*4882a593Smuzhiyun					<SYSC_IDLE_SMART>,
196*4882a593Smuzhiyun					<SYSC_IDLE_SMART_WKUP>;
197*4882a593Smuzhiyun			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
198*4882a593Smuzhiyun					<SYSC_IDLE_NO>,
199*4882a593Smuzhiyun					<SYSC_IDLE_SMART>,
200*4882a593Smuzhiyun					<SYSC_IDLE_SMART_WKUP>;
201*4882a593Smuzhiyun			/* Domains (P, C): l3init_pwrdm, l3init_clkdm */
202*4882a593Smuzhiyun			clocks = <&l3init_clkctrl DRA7_L3INIT_USB_OTG_SS4_CLKCTRL 0>;
203*4882a593Smuzhiyun			clock-names = "fck";
204*4882a593Smuzhiyun			#address-cells = <1>;
205*4882a593Smuzhiyun			#size-cells = <1>;
206*4882a593Smuzhiyun			ranges = <0x0 0x140000 0x20000>;
207*4882a593Smuzhiyun
208*4882a593Smuzhiyun			omap_dwc3_4: omap_dwc3_4@0 {
209*4882a593Smuzhiyun				compatible = "ti,dwc3";
210*4882a593Smuzhiyun				reg = <0 0x10000>;
211*4882a593Smuzhiyun				interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>;
212*4882a593Smuzhiyun				#address-cells = <1>;
213*4882a593Smuzhiyun				#size-cells = <1>;
214*4882a593Smuzhiyun				utmi-mode = <2>;
215*4882a593Smuzhiyun				ranges;
216*4882a593Smuzhiyun				status = "disabled";
217*4882a593Smuzhiyun				usb4: usb@10000 {
218*4882a593Smuzhiyun					compatible = "snps,dwc3";
219*4882a593Smuzhiyun					reg = <0x10000 0x17000>;
220*4882a593Smuzhiyun					interrupts = <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
221*4882a593Smuzhiyun						     <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
222*4882a593Smuzhiyun						     <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>;
223*4882a593Smuzhiyun					interrupt-names = "peripheral",
224*4882a593Smuzhiyun							  "host",
225*4882a593Smuzhiyun							  "otg";
226*4882a593Smuzhiyun					maximum-speed = "high-speed";
227*4882a593Smuzhiyun					dr_mode = "otg";
228*4882a593Smuzhiyun				};
229*4882a593Smuzhiyun			};
230*4882a593Smuzhiyun		};
231*4882a593Smuzhiyun	};
232*4882a593Smuzhiyun};
233