Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.13.7.
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for K2G EVM
  4 *
  5 * Copyright (C) 2016-2017 Texas Instruments Incorporated - http://www.ti.com/
  6 */
  7/dts-v1/;
  8
  9#include "keystone-k2g.dtsi"
 10
 11/ {
 12	compatible =  "ti,k2g-evm", "ti,k2g", "ti,keystone";
 13	model = "Texas Instruments K2G General Purpose EVM";
 14
 15	memory@800000000 {
 16		device_type = "memory";
 17		reg = <0x00000008 0x00000000 0x00000000 0x80000000>;
 18	};
 19
 20	reserved-memory {
 21		#address-cells = <2>;
 22		#size-cells = <2>;
 23		ranges;
 24
 25		dsp_common_memory: dsp-common-memory@81f800000 {
 26			compatible = "shared-dma-pool";
 27			reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
 28			reusable;
 29			status = "okay";
 30		};
 31	};
 32
 33	vcc3v3_dcin_reg: fixedregulator-vcc3v3-dcin {
 34		compatible = "regulator-fixed";
 35		regulator-name = "mmc0_fixed";
 36		regulator-min-microvolt = <3300000>;
 37		regulator-max-microvolt = <3300000>;
 38		regulator-always-on;
 39	};
 40};
 41
 42&k2g_pinctrl {
 43	uart0_pins: pinmux_uart0_pins {
 44		pinctrl-single,pins = <
 45			K2G_CORE_IOPAD(0x11cc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
 46			K2G_CORE_IOPAD(0x11d0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0)	/* uart0_txd.uart0_txd */
 47		>;
 48	};
 49
 50	mmc0_pins: pinmux_mmc0_pins {
 51		pinctrl-single,pins = <
 52			K2G_CORE_IOPAD(0x1300) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_dat3.mmc0_dat3 */
 53			K2G_CORE_IOPAD(0x1304) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_dat2.mmc0_dat2 */
 54			K2G_CORE_IOPAD(0x1308) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_dat1.mmc0_dat1 */
 55			K2G_CORE_IOPAD(0x130c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_dat0.mmc0_dat0 */
 56			K2G_CORE_IOPAD(0x1310) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_clk.mmc0_clk */
 57			K2G_CORE_IOPAD(0x1314) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE2)	/* mmc0_cmd.mmc0_cmd */
 58			K2G_CORE_IOPAD(0x12ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE3)	/* mmc0_sdcd.gpio1_12 */
 59		>;
 60	};
 61
 62	mmc1_pins: pinmux_mmc1_pins {
 63		pinctrl-single,pins = <
 64			K2G_CORE_IOPAD(0x10ec) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat7.mmc1_dat7 */
 65			K2G_CORE_IOPAD(0x10f0) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat6.mmc1_dat6 */
 66			K2G_CORE_IOPAD(0x10f4) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat5.mmc1_dat5 */
 67			K2G_CORE_IOPAD(0x10f8) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat4.mmc1_dat4 */
 68			K2G_CORE_IOPAD(0x10fc) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat3.mmc1_dat3 */
 69			K2G_CORE_IOPAD(0x1100) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat2.mmc1_dat2 */
 70			K2G_CORE_IOPAD(0x1104) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat1.mmc1_dat1 */
 71			K2G_CORE_IOPAD(0x1108) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_dat0.mmc1_dat0 */
 72			K2G_CORE_IOPAD(0x110c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_clk.mmc1_clk */
 73			K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* mmc1_cmd.mmc1_cmd */
 74		>;
 75	};
 76
 77	i2c0_pins: pinmux_i2c0_pins {
 78		pinctrl-single,pins = <
 79			K2G_CORE_IOPAD(0x137c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* i2c0_scl.i2c0_scl */
 80			K2G_CORE_IOPAD(0x1380) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
 81		>;
 82	};
 83
 84	ecap0_pins: ecap0_pins {
 85		pinctrl-single,pins = <
 86			K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4)	/* pr1_mdio_data.ecap0_in_apwm0_out */
 87		>;
 88	};
 89
 90	spi1_pins: pinmux_spi1_pins {
 91		pinctrl-single,pins = <
 92			K2G_CORE_IOPAD(0x11a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_scs0.spi1_scs0 */
 93			K2G_CORE_IOPAD(0x11ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_clk.spi1_clk */
 94			K2G_CORE_IOPAD(0x11b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_miso.spi1_miso */
 95			K2G_CORE_IOPAD(0x11b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)	/* spi1_mosi.spi1_mosi */
 96		>;
 97	};
 98
 99	qspi_pins: pinmux_qspi_pins {
100		pinctrl-single,pins = <
101			K2G_CORE_IOPAD(0x1204) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_clk.qspi_clk */
102			K2G_CORE_IOPAD(0x1208) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_rclk.qspi_rclk */
103			K2G_CORE_IOPAD(0x120c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d0.qspi_d0 */
104			K2G_CORE_IOPAD(0x1210) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d1.qspi_d1 */
105			K2G_CORE_IOPAD(0x1214) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d2.qspi_d2 */
106			K2G_CORE_IOPAD(0x1218) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_d3.qspi_d3 */
107			K2G_CORE_IOPAD(0x121c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* qspi_csn0.qspi_csn0 */
108		>;
109	};
110
111	uart2_pins: pinmux_uart2_pins {
112		pinctrl-single,pins = <
113			K2G_CORE_IOPAD(0x11ec) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0)      /* uart2_rxd.uart2_rxd */
114			K2G_CORE_IOPAD(0x11f0) (BUFFER_CLASS_B | PIN_PULLDOWN | MUX_MODE0)      /* uart2_txd.uart2_txd */
115		>;
116	};
117};
118
119&uart0 {
120	pinctrl-names = "default";
121	pinctrl-0 = <&uart0_pins>;
122	status = "okay";
123};
124
125&gpio1 {
126	status = "okay";
127};
128
129&mmc0 {
130	pinctrl-names = "default";
131	pinctrl-0 = <&mmc0_pins>;
132	vmmc-supply = <&vcc3v3_dcin_reg>;
133	cd-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
134	status = "okay";
135};
136
137&mmc1 {
138	pinctrl-names = "default";
139	pinctrl-0 = <&mmc1_pins>;
140	vmmc-supply = <&vcc3v3_dcin_reg>; /* VCC3V3_EMMC is connected to VCC3V3_DCIN */
141	ti,non-removable;
142	status = "okay";
143};
144
145&dsp0 {
146	memory-region = <&dsp_common_memory>;
147	status = "okay";
148};
149
150&i2c0 {
151	pinctrl-names = "default";
152	pinctrl-0 = <&i2c0_pins>;
153	status = "okay";
154
155	eeprom@50 {
156		compatible = "atmel,24c1024";
157		reg = <0x50>;
158	};
159};
160
161&keystone_usb0 {
162	status = "okay";
163};
164
165&usb0_phy {
166	status = "okay";
167};
168
169&usb0 {
170	dr_mode = "host";
171	status = "okay";
172};
173
174&keystone_usb1 {
175	status = "okay";
176};
177
178&usb1_phy {
179	status = "okay";
180};
181
182&usb1 {
183	dr_mode = "peripheral";
184	status = "okay";
185};
186
187&ecap0 {
188	status = "okay";
189	pinctrl-names = "default";
190	pinctrl-0 = <&ecap0_pins>;
191};
192
193&spi1 {
194	pinctrl-names = "default";
195	pinctrl-0 = <&spi1_pins>;
196	status = "okay";
197
198	spi_nor: flash@0 {
199		#address-cells = <1>;
200		#size-cells = <1>;
201		compatible = "jedec,spi-nor";
202		spi-max-frequency = <5000000>;
203		m25p,fast-read;
204		reg = <0>;
205
206		partition@0 {
207			label = "u-boot-spl";
208			reg = <0x0 0x100000>;
209			read-only;
210		};
211
212		partition@1 {
213			label = "misc";
214			reg = <0x100000 0xf00000>;
215		};
216	};
217};
218
219&qspi {
220	status = "okay";
221	pinctrl-names = "default";
222	pinctrl-0 = <&qspi_pins>;
223	cdns,rclk-en;
224
225	flash0: m25p80@0 {
226		compatible = "s25fl512s", "jedec,spi-nor";
227		reg = <0>;
228		spi-tx-bus-width = <1>;
229		spi-rx-bus-width = <4>;
230		spi-max-frequency = <96000000>;
231		#address-cells = <1>;
232		#size-cells = <1>;
233		cdns,read-delay = <5>;
234		cdns,tshsl-ns = <500>;
235		cdns,tsd2d-ns = <500>;
236		cdns,tchsh-ns = <119>;
237		cdns,tslch-ns = <119>;
238
239		partition@0 {
240			label = "QSPI.u-boot-spl-os";
241			reg = <0x00000000 0x00100000>;
242		};
243		partition@1 {
244			label = "QSPI.u-boot-env";
245			reg = <0x00100000 0x00040000>;
246		};
247		partition@2 {
248			label = "QSPI.skern";
249			reg = <0x00140000 0x0040000>;
250		};
251		partition@3 {
252			label = "QSPI.pmmc-firmware";
253			reg = <0x00180000 0x0040000>;
254		};
255		partition@4 {
256			label = "QSPI.kernel";
257			reg = <0x001C0000 0x0800000>;
258		};
259		partition@5 {
260			label = "QSPI.file-system";
261			reg = <0x009C0000 0x3640000>;
262		};
263	};
264};
265
266&uart2 {
267	pinctrl-names = "default";
268	pinctrl-0 = <&uart2_pins>;
269	status = "okay";
270};