Linux Audio

Check our new training course

Yocto / OpenEmbedded training

Feb 10-13, 2025
Register
Loading...
v4.17
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Keystone 2 Kepler/Hawking soc specific device tree
  4 *
  5 * Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
  6 */
  7
  8#include <dt-bindings/reset/ti-syscon.h>
  9
 10/ {
 11	compatible = "ti,k2hk", "ti,keystone";
 12	model = "Texas Instruments Keystone 2 Kepler/Hawking SoC";
 13
 14	cpus {
 15		#address-cells = <1>;
 16		#size-cells = <0>;
 17
 18		interrupt-parent = <&gic>;
 19
 20		cpu@0 {
 21			compatible = "arm,cortex-a15";
 22			device_type = "cpu";
 23			reg = <0>;
 24		};
 25
 26		cpu@1 {
 27			compatible = "arm,cortex-a15";
 28			device_type = "cpu";
 29			reg = <1>;
 30		};
 31
 32		cpu@2 {
 33			compatible = "arm,cortex-a15";
 34			device_type = "cpu";
 35			reg = <2>;
 36		};
 37
 38		cpu@3 {
 39			compatible = "arm,cortex-a15";
 40			device_type = "cpu";
 41			reg = <3>;
 42		};
 43	};
 44
 45	aliases {
 46		rproc0 = &dsp0;
 47		rproc1 = &dsp1;
 48		rproc2 = &dsp2;
 49		rproc3 = &dsp3;
 50		rproc4 = &dsp4;
 51		rproc5 = &dsp5;
 52		rproc6 = &dsp6;
 53		rproc7 = &dsp7;
 54	};
 55};
 56
 57&soc0 {
 58		/include/ "keystone-k2hk-clocks.dtsi"
 59
 60		msm_ram: msmram@c000000 {
 61			compatible = "mmio-sram";
 62			reg = <0x0c000000 0x600000>;
 63			ranges = <0x0 0x0c000000 0x600000>;
 64			#address-cells = <1>;
 65			#size-cells = <1>;
 66
 67			sram-bm@5f0000 {
 68				reg = <0x5f0000 0x8000>;
 69			};
 70		};
 71
 72		psc: power-sleep-controller@2350000 {
 73			pscrst: reset-controller {
 74				compatible = "ti,k2hk-pscrst", "ti,syscon-reset";
 75				#reset-cells = <1>;
 76
 77				ti,reset-bits = <
 78					0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
 79					0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */
 80					0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */
 81					0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */
 82					0xa4c 8 0xa4c 8 0x84c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 4: dsp4 */
 83					0xa50 8 0xa50 8 0x850 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 5: dsp5 */
 84					0xa54 8 0xa54 8 0x854 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 6: dsp6 */
 85					0xa58 8 0xa58 8 0x858 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 7: dsp7 */
 86				>;
 87			};
 88		};
 89
 90		devctrl: device-state-control@2620000 {
 91			dspgpio0: keystone_dsp_gpio@240 {
 92				compatible = "ti,keystone-dsp-gpio";
 93				reg = <0x240 0x4>;
 94				gpio-controller;
 95				#gpio-cells = <2>;
 96				gpio,syscon-dev = <&devctrl 0x240>;
 97			};
 98
 99			dspgpio1: keystone_dsp_gpio@244 {
100				compatible = "ti,keystone-dsp-gpio";
101				reg = <0x244 0x4>;
102				gpio-controller;
103				#gpio-cells = <2>;
104				gpio,syscon-dev = <&devctrl 0x244>;
105			};
106
107			dspgpio2: keystone_dsp_gpio@248 {
108				compatible = "ti,keystone-dsp-gpio";
109				reg = <0x248 0x4>;
110				gpio-controller;
111				#gpio-cells = <2>;
112				gpio,syscon-dev = <&devctrl 0x248>;
113			};
114
115			dspgpio3: keystone_dsp_gpio@24c {
116				compatible = "ti,keystone-dsp-gpio";
117				reg = <0x24c 0x4>;
118				gpio-controller;
119				#gpio-cells = <2>;
120				gpio,syscon-dev = <&devctrl 0x24c>;
121			};
122
123			dspgpio4: keystone_dsp_gpio@250 {
124				compatible = "ti,keystone-dsp-gpio";
125				reg = <0x250 0x4>;
126				gpio-controller;
127				#gpio-cells = <2>;
128				gpio,syscon-dev = <&devctrl 0x250>;
129			};
130
131			dspgpio5: keystone_dsp_gpio@254 {
132				compatible = "ti,keystone-dsp-gpio";
133				reg = <0x254 0x4>;
134				gpio-controller;
135				#gpio-cells = <2>;
136				gpio,syscon-dev = <&devctrl 0x254>;
137			};
138
139			dspgpio6: keystone_dsp_gpio@258 {
140				compatible = "ti,keystone-dsp-gpio";
141				reg = <0x258 0x4>;
142				gpio-controller;
143				#gpio-cells = <2>;
144				gpio,syscon-dev = <&devctrl 0x258>;
145			};
146
147			dspgpio7: keystone_dsp_gpio@25c {
148				compatible = "ti,keystone-dsp-gpio";
149				reg = <0x25c 0x4>;
150				gpio-controller;
151				#gpio-cells = <2>;
152				gpio,syscon-dev = <&devctrl 0x25c>;
153			};
154		};
155
156		dsp0: dsp@10800000 {
157			compatible = "ti,k2hk-dsp";
158			reg = <0x10800000 0x00100000>,
159			      <0x10e00000 0x00008000>,
160			      <0x10f00000 0x00008000>;
161			reg-names = "l2sram", "l1pram", "l1dram";
162			clocks = <&clkgem0>;
163			ti,syscon-dev = <&devctrl 0x40>;
164			resets = <&pscrst 0>;
165			interrupt-parent = <&kirq0>;
166			interrupts = <0 8>;
167			interrupt-names = "vring", "exception";
168			kick-gpios = <&dspgpio0 27 0>;
169			status = "disabled";
170		};
171
172		dsp1: dsp@11800000 {
173			compatible = "ti,k2hk-dsp";
174			reg = <0x11800000 0x00100000>,
175			      <0x11e00000 0x00008000>,
176			      <0x11f00000 0x00008000>;
177			reg-names = "l2sram", "l1pram", "l1dram";
178			clocks = <&clkgem1>;
179			ti,syscon-dev = <&devctrl 0x44>;
180			resets = <&pscrst 1>;
181			interrupt-parent = <&kirq0>;
182			interrupts = <1 9>;
183			interrupt-names = "vring", "exception";
184			kick-gpios = <&dspgpio1 27 0>;
185			status = "disabled";
186		};
187
188		dsp2: dsp@12800000 {
189			compatible = "ti,k2hk-dsp";
190			reg = <0x12800000 0x00100000>,
191			      <0x12e00000 0x00008000>,
192			      <0x12f00000 0x00008000>;
193			reg-names = "l2sram", "l1pram", "l1dram";
194			clocks = <&clkgem2>;
195			ti,syscon-dev = <&devctrl 0x48>;
196			resets = <&pscrst 2>;
197			interrupt-parent = <&kirq0>;
198			interrupts = <2 10>;
199			interrupt-names = "vring", "exception";
200			kick-gpios = <&dspgpio2 27 0>;
201			status = "disabled";
202		};
203
204		dsp3: dsp@13800000 {
205			compatible = "ti,k2hk-dsp";
206			reg = <0x13800000 0x00100000>,
207			      <0x13e00000 0x00008000>,
208			      <0x13f00000 0x00008000>;
209			reg-names = "l2sram", "l1pram", "l1dram";
210			clocks = <&clkgem3>;
211			ti,syscon-dev = <&devctrl 0x4c>;
212			resets = <&pscrst 3>;
213			interrupt-parent = <&kirq0>;
214			interrupts = <3 11>;
215			interrupt-names = "vring", "exception";
216			kick-gpios = <&dspgpio3 27 0>;
217			status = "disabled";
218		};
219
220		dsp4: dsp@14800000 {
221			compatible = "ti,k2hk-dsp";
222			reg = <0x14800000 0x00100000>,
223			      <0x14e00000 0x00008000>,
224			      <0x14f00000 0x00008000>;
225			reg-names = "l2sram", "l1pram", "l1dram";
226			clocks = <&clkgem4>;
227			ti,syscon-dev = <&devctrl 0x50>;
228			resets = <&pscrst 4>;
229			interrupt-parent = <&kirq0>;
230			interrupts = <4 12>;
231			interrupt-names = "vring", "exception";
232			kick-gpios = <&dspgpio4 27 0>;
233			status = "disabled";
234		};
235
236		dsp5: dsp@15800000 {
237			compatible = "ti,k2hk-dsp";
238			reg = <0x15800000 0x00100000>,
239			      <0x15e00000 0x00008000>,
240			      <0x15f00000 0x00008000>;
241			reg-names = "l2sram", "l1pram", "l1dram";
242			clocks = <&clkgem5>;
243			ti,syscon-dev = <&devctrl 0x54>;
244			resets = <&pscrst 5>;
245			interrupt-parent = <&kirq0>;
246			interrupts = <5 13>;
247			interrupt-names = "vring", "exception";
248			kick-gpios = <&dspgpio5 27 0>;
249			status = "disabled";
250		};
251
252		dsp6: dsp@16800000 {
253			compatible = "ti,k2hk-dsp";
254			reg = <0x16800000 0x00100000>,
255			      <0x16e00000 0x00008000>,
256			      <0x16f00000 0x00008000>;
257			reg-names = "l2sram", "l1pram", "l1dram";
258			clocks = <&clkgem6>;
259			ti,syscon-dev = <&devctrl 0x58>;
260			resets = <&pscrst 6>;
261			interrupt-parent = <&kirq0>;
262			interrupts = <6 14>;
263			interrupt-names = "vring", "exception";
264			kick-gpios = <&dspgpio6 27 0>;
265			status = "disabled";
266		};
267
268		dsp7: dsp@17800000 {
269			compatible = "ti,k2hk-dsp";
270			reg = <0x17800000 0x00100000>,
271			      <0x17e00000 0x00008000>,
272			      <0x17f00000 0x00008000>;
273			reg-names = "l2sram", "l1pram", "l1dram";
274			clocks = <&clkgem7>;
275			ti,syscon-dev = <&devctrl 0x5c>;
276			resets = <&pscrst 7>;
277			interrupt-parent = <&kirq0>;
278			interrupts = <7 15>;
279			interrupt-names = "vring", "exception";
280			kick-gpios = <&dspgpio7 27 0>;
281			status = "disabled";
282		};
283
284		mdio: mdio@2090300 {
285			compatible	= "ti,keystone_mdio", "ti,davinci_mdio";
286			#address-cells = <1>;
287			#size-cells = <0>;
288			reg = <0x02090300 0x100>;
289			status = "disabled";
290			clocks = <&clkcpgmac>;
291			clock-names = "fck";
292			bus_freq	= <2500000>;
293		};
294		/include/ "keystone-k2hk-netcp.dtsi"
295};
v5.14.15
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Keystone 2 Kepler/Hawking soc specific device tree
  4 *
  5 * Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
  6 */
  7
  8#include <dt-bindings/reset/ti-syscon.h>
  9
 10/ {
 11	compatible = "ti,k2hk", "ti,keystone";
 12	model = "Texas Instruments Keystone 2 Kepler/Hawking SoC";
 13
 14	cpus {
 15		#address-cells = <1>;
 16		#size-cells = <0>;
 17
 18		interrupt-parent = <&gic>;
 19
 20		cpu@0 {
 21			compatible = "arm,cortex-a15";
 22			device_type = "cpu";
 23			reg = <0>;
 24		};
 25
 26		cpu@1 {
 27			compatible = "arm,cortex-a15";
 28			device_type = "cpu";
 29			reg = <1>;
 30		};
 31
 32		cpu@2 {
 33			compatible = "arm,cortex-a15";
 34			device_type = "cpu";
 35			reg = <2>;
 36		};
 37
 38		cpu@3 {
 39			compatible = "arm,cortex-a15";
 40			device_type = "cpu";
 41			reg = <3>;
 42		};
 43	};
 44
 45	aliases {
 46		rproc0 = &dsp0;
 47		rproc1 = &dsp1;
 48		rproc2 = &dsp2;
 49		rproc3 = &dsp3;
 50		rproc4 = &dsp4;
 51		rproc5 = &dsp5;
 52		rproc6 = &dsp6;
 53		rproc7 = &dsp7;
 54	};
 55};
 56
 57&soc0 {
 58		/include/ "keystone-k2hk-clocks.dtsi"
 59
 60		msm_ram: sram@c000000 {
 61			compatible = "mmio-sram";
 62			reg = <0x0c000000 0x600000>;
 63			ranges = <0x0 0x0c000000 0x600000>;
 64			#address-cells = <1>;
 65			#size-cells = <1>;
 66
 67			bm-sram@5f0000 {
 68				reg = <0x5f0000 0x8000>;
 69			};
 70		};
 71
 72		psc: power-sleep-controller@2350000 {
 73			pscrst: reset-controller {
 74				compatible = "ti,k2hk-pscrst", "ti,syscon-reset";
 75				#reset-cells = <1>;
 76
 77				ti,reset-bits = <
 78					0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
 79					0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */
 80					0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */
 81					0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */
 82					0xa4c 8 0xa4c 8 0x84c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 4: dsp4 */
 83					0xa50 8 0xa50 8 0x850 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 5: dsp5 */
 84					0xa54 8 0xa54 8 0x854 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 6: dsp6 */
 85					0xa58 8 0xa58 8 0x858 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 7: dsp7 */
 86				>;
 87			};
 88		};
 89
 90		devctrl: device-state-control@2620000 {
 91			dspgpio0: keystone_dsp_gpio@240 {
 92				compatible = "ti,keystone-dsp-gpio";
 93				reg = <0x240 0x4>;
 94				gpio-controller;
 95				#gpio-cells = <2>;
 96				gpio,syscon-dev = <&devctrl 0x240>;
 97			};
 98
 99			dspgpio1: keystone_dsp_gpio@244 {
100				compatible = "ti,keystone-dsp-gpio";
101				reg = <0x244 0x4>;
102				gpio-controller;
103				#gpio-cells = <2>;
104				gpio,syscon-dev = <&devctrl 0x244>;
105			};
106
107			dspgpio2: keystone_dsp_gpio@248 {
108				compatible = "ti,keystone-dsp-gpio";
109				reg = <0x248 0x4>;
110				gpio-controller;
111				#gpio-cells = <2>;
112				gpio,syscon-dev = <&devctrl 0x248>;
113			};
114
115			dspgpio3: keystone_dsp_gpio@24c {
116				compatible = "ti,keystone-dsp-gpio";
117				reg = <0x24c 0x4>;
118				gpio-controller;
119				#gpio-cells = <2>;
120				gpio,syscon-dev = <&devctrl 0x24c>;
121			};
122
123			dspgpio4: keystone_dsp_gpio@250 {
124				compatible = "ti,keystone-dsp-gpio";
125				reg = <0x250 0x4>;
126				gpio-controller;
127				#gpio-cells = <2>;
128				gpio,syscon-dev = <&devctrl 0x250>;
129			};
130
131			dspgpio5: keystone_dsp_gpio@254 {
132				compatible = "ti,keystone-dsp-gpio";
133				reg = <0x254 0x4>;
134				gpio-controller;
135				#gpio-cells = <2>;
136				gpio,syscon-dev = <&devctrl 0x254>;
137			};
138
139			dspgpio6: keystone_dsp_gpio@258 {
140				compatible = "ti,keystone-dsp-gpio";
141				reg = <0x258 0x4>;
142				gpio-controller;
143				#gpio-cells = <2>;
144				gpio,syscon-dev = <&devctrl 0x258>;
145			};
146
147			dspgpio7: keystone_dsp_gpio@25c {
148				compatible = "ti,keystone-dsp-gpio";
149				reg = <0x25c 0x4>;
150				gpio-controller;
151				#gpio-cells = <2>;
152				gpio,syscon-dev = <&devctrl 0x25c>;
153			};
154		};
155
156		dsp0: dsp@10800000 {
157			compatible = "ti,k2hk-dsp";
158			reg = <0x10800000 0x00100000>,
159			      <0x10e00000 0x00008000>,
160			      <0x10f00000 0x00008000>;
161			reg-names = "l2sram", "l1pram", "l1dram";
162			clocks = <&clkgem0>;
163			ti,syscon-dev = <&devctrl 0x40>;
164			resets = <&pscrst 0>;
165			interrupt-parent = <&kirq0>;
166			interrupts = <0 8>;
167			interrupt-names = "vring", "exception";
168			kick-gpios = <&dspgpio0 27 0>;
169			status = "disabled";
170		};
171
172		dsp1: dsp@11800000 {
173			compatible = "ti,k2hk-dsp";
174			reg = <0x11800000 0x00100000>,
175			      <0x11e00000 0x00008000>,
176			      <0x11f00000 0x00008000>;
177			reg-names = "l2sram", "l1pram", "l1dram";
178			clocks = <&clkgem1>;
179			ti,syscon-dev = <&devctrl 0x44>;
180			resets = <&pscrst 1>;
181			interrupt-parent = <&kirq0>;
182			interrupts = <1 9>;
183			interrupt-names = "vring", "exception";
184			kick-gpios = <&dspgpio1 27 0>;
185			status = "disabled";
186		};
187
188		dsp2: dsp@12800000 {
189			compatible = "ti,k2hk-dsp";
190			reg = <0x12800000 0x00100000>,
191			      <0x12e00000 0x00008000>,
192			      <0x12f00000 0x00008000>;
193			reg-names = "l2sram", "l1pram", "l1dram";
194			clocks = <&clkgem2>;
195			ti,syscon-dev = <&devctrl 0x48>;
196			resets = <&pscrst 2>;
197			interrupt-parent = <&kirq0>;
198			interrupts = <2 10>;
199			interrupt-names = "vring", "exception";
200			kick-gpios = <&dspgpio2 27 0>;
201			status = "disabled";
202		};
203
204		dsp3: dsp@13800000 {
205			compatible = "ti,k2hk-dsp";
206			reg = <0x13800000 0x00100000>,
207			      <0x13e00000 0x00008000>,
208			      <0x13f00000 0x00008000>;
209			reg-names = "l2sram", "l1pram", "l1dram";
210			clocks = <&clkgem3>;
211			ti,syscon-dev = <&devctrl 0x4c>;
212			resets = <&pscrst 3>;
213			interrupt-parent = <&kirq0>;
214			interrupts = <3 11>;
215			interrupt-names = "vring", "exception";
216			kick-gpios = <&dspgpio3 27 0>;
217			status = "disabled";
218		};
219
220		dsp4: dsp@14800000 {
221			compatible = "ti,k2hk-dsp";
222			reg = <0x14800000 0x00100000>,
223			      <0x14e00000 0x00008000>,
224			      <0x14f00000 0x00008000>;
225			reg-names = "l2sram", "l1pram", "l1dram";
226			clocks = <&clkgem4>;
227			ti,syscon-dev = <&devctrl 0x50>;
228			resets = <&pscrst 4>;
229			interrupt-parent = <&kirq0>;
230			interrupts = <4 12>;
231			interrupt-names = "vring", "exception";
232			kick-gpios = <&dspgpio4 27 0>;
233			status = "disabled";
234		};
235
236		dsp5: dsp@15800000 {
237			compatible = "ti,k2hk-dsp";
238			reg = <0x15800000 0x00100000>,
239			      <0x15e00000 0x00008000>,
240			      <0x15f00000 0x00008000>;
241			reg-names = "l2sram", "l1pram", "l1dram";
242			clocks = <&clkgem5>;
243			ti,syscon-dev = <&devctrl 0x54>;
244			resets = <&pscrst 5>;
245			interrupt-parent = <&kirq0>;
246			interrupts = <5 13>;
247			interrupt-names = "vring", "exception";
248			kick-gpios = <&dspgpio5 27 0>;
249			status = "disabled";
250		};
251
252		dsp6: dsp@16800000 {
253			compatible = "ti,k2hk-dsp";
254			reg = <0x16800000 0x00100000>,
255			      <0x16e00000 0x00008000>,
256			      <0x16f00000 0x00008000>;
257			reg-names = "l2sram", "l1pram", "l1dram";
258			clocks = <&clkgem6>;
259			ti,syscon-dev = <&devctrl 0x58>;
260			resets = <&pscrst 6>;
261			interrupt-parent = <&kirq0>;
262			interrupts = <6 14>;
263			interrupt-names = "vring", "exception";
264			kick-gpios = <&dspgpio6 27 0>;
265			status = "disabled";
266		};
267
268		dsp7: dsp@17800000 {
269			compatible = "ti,k2hk-dsp";
270			reg = <0x17800000 0x00100000>,
271			      <0x17e00000 0x00008000>,
272			      <0x17f00000 0x00008000>;
273			reg-names = "l2sram", "l1pram", "l1dram";
274			clocks = <&clkgem7>;
275			ti,syscon-dev = <&devctrl 0x5c>;
276			resets = <&pscrst 7>;
277			interrupt-parent = <&kirq0>;
278			interrupts = <7 15>;
279			interrupt-names = "vring", "exception";
280			kick-gpios = <&dspgpio7 27 0>;
281			status = "disabled";
282		};
283
284		mdio: mdio@2090300 {
285			compatible	= "ti,keystone_mdio", "ti,davinci_mdio";
286			#address-cells = <1>;
287			#size-cells = <0>;
288			reg = <0x02090300 0x100>;
289			status = "disabled";
290			clocks = <&clkcpgmac>;
291			clock-names = "fck";
292			bus_freq	= <2500000>;
293		};
294		/include/ "keystone-k2hk-netcp.dtsi"
295};