Linux Audio

Check our new training course

Linux debugging, profiling, tracing and performance analysis training

Mar 24-27, 2025, special US time zones
Register
Loading...
Note: File does not exist in v6.13.7.
  1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2/*
  3 * Copyright (c) 2015 Heiko Stuebner <heiko@sntech.de>
  4 */
  5
  6/dts-v1/;
  7#include <dt-bindings/input/input.h>
  8#include <dt-bindings/pwm/pwm.h>
  9#include "rk3288.dtsi"
 10
 11/ {
 12	model = "Netxeon R89";
 13	compatible = "netxeon,r89", "rockchip,rk3288";
 14
 15	memory@0 {
 16		device_type = "memory";
 17		reg = <0x0 0x0 0x0 0x80000000>;
 18	};
 19
 20	ext_gmac: external-gmac-clock {
 21		compatible = "fixed-clock";
 22		clock-frequency = <125000000>;
 23		clock-output-names = "ext_gmac";
 24		#clock-cells = <0>;
 25	};
 26
 27	gpio-keys {
 28		compatible = "gpio-keys";
 29		autorepeat;
 30
 31		pinctrl-names = "default";
 32		pinctrl-0 = <&pwrbtn>;
 33
 34		power {
 35			gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
 36			linux,code = <KEY_POWER>;
 37			label = "GPIO Key Power";
 38			linux,input-type = <1>;
 39			wakeup-source;
 40			debounce-interval = <100>;
 41		};
 42	};
 43
 44	ir: ir-receiver {
 45		compatible = "gpio-ir-receiver";
 46		gpios = <&gpio7 RK_PA0 GPIO_ACTIVE_LOW>;
 47		pinctrl-names = "default";
 48		pinctrl-0 = <&ir_int>;
 49	};
 50
 51	vcc_host: vcc-host-regulator {
 52		compatible = "regulator-fixed";
 53		enable-active-high;
 54		gpio = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
 55		pinctrl-names = "default";
 56		pinctrl-0 = <&host_vbus_drv>;
 57		regulator-name = "vcc_host";
 58		regulator-always-on;
 59		regulator-boot-on;
 60	};
 61
 62	vcc_otg: vcc-otg-regulator {
 63		compatible = "regulator-fixed";
 64		enable-active-high;
 65		gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
 66		pinctrl-names = "default";
 67		pinctrl-0 = <&otg_vbus_drv>;
 68		regulator-name = "vcc_otg";
 69		regulator-always-on;
 70		regulator-boot-on;
 71	};
 72
 73	vcc_sdmmc: sdmmc-regulator {
 74		compatible = "regulator-fixed";
 75		regulator-name = "sdmmc-supply";
 76		regulator-min-microvolt = <3300000>;
 77		regulator-max-microvolt = <3300000>;
 78		gpio = <&gpio7 RK_PB3 GPIO_ACTIVE_LOW>;
 79		startup-delay-us = <100000>;
 80		vin-supply = <&vcc_io>;
 81	};
 82
 83	vcc_sys: sys-regulator {
 84		compatible = "regulator-fixed";
 85		regulator-name = "sys-supply";
 86		regulator-min-microvolt = <5000000>;
 87		regulator-max-microvolt = <5000000>;
 88		regulator-always-on;
 89		regulator-boot-on;
 90	};
 91};
 92
 93&cpu0 {
 94	cpu0-supply = <&vdd_cpu>;
 95};
 96
 97&gmac {
 98	phy-supply = <&vcc_lan>;
 99	phy-mode = "rgmii";
100	clock_in_out = "input";
101	snps,reset-gpio = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
102	snps,reset-active-low;
103	snps,reset-delays-us = <0 10000 1000000>;
104	assigned-clocks = <&cru SCLK_MAC>;
105	assigned-clock-parents = <&ext_gmac>;
106	pinctrl-names = "default";
107	pinctrl-0 = <&rgmii_pins>;
108	tx_delay = <0x30>;
109	rx_delay = <0x10>;
110	status = "ok";
111};
112
113&hdmi {
114	status = "okay";
115};
116
117&i2c0 {
118	status = "okay";
119
120	vdd_cpu: pmic@40 {
121		compatible = "silergy,syr827";
122		reg = <0x40>;
123		fcs,suspend-voltage-selector = <1>;
124		regulator-name = "VDD_CPU";
125		regulator-enable-ramp-delay = <300>;
126		regulator-min-microvolt = <850000>;
127		regulator-max-microvolt = <1350000>;
128		regulator-ramp-delay = <8000>;
129		regulator-always-on;
130		regulator-boot-on;
131		vin-supply = <&vcc_sys>;
132	};
133
134	vdd_gpu: pmic@41 {
135		compatible = "silergy,syr828";
136		reg = <0x41>;
137		fcs,suspend-voltage-selector = <1>;
138		regulator-name = "VDD_GPU";
139		regulator-enable-ramp-delay = <300>;
140		regulator-min-microvolt = <850000>;
141		regulator-max-microvolt = <1350000>;
142		regulator-ramp-delay = <8000>;
143		regulator-always-on;
144		regulator-boot-on;
145		vin-supply = <&vcc_sys>;
146	};
147
148	rtc@51 {
149		compatible = "haoyu,hym8563";
150		reg = <0x51>;
151		#clock-cells = <0>;
152		clock-output-names = "xin32k";
153		interrupt-parent = <&gpio0>;
154		interrupts = <RK_PA4 IRQ_TYPE_EDGE_FALLING>;
155		pinctrl-names = "default";
156		pinctrl-0 = <&pmic_int>;
157	};
158
159	act8846: pmic@5a {
160		compatible = "active-semi,act8846";
161		reg = <0x5a>;
162		pinctrl-names = "default";
163		pinctrl-0 = <&pmic_vsel>, <&pwr_hold>;
164		system-power-controller;
165
166		regulators {
167			vcc_ddr: REG1 {
168				regulator-name = "VCC_DDR";
169				regulator-min-microvolt = <1200000>;
170				regulator-max-microvolt = <1200000>;
171				regulator-always-on;
172			};
173
174			vcc_io: REG2 {
175				regulator-name = "VCC_IO";
176				regulator-min-microvolt = <3300000>;
177				regulator-max-microvolt = <3300000>;
178				regulator-always-on;
179			};
180
181			vdd_log: REG3 {
182				regulator-name = "VDD_LOG";
183				regulator-min-microvolt = <1000000>;
184				regulator-max-microvolt = <1000000>;
185				regulator-always-on;
186			};
187
188			vcc_20: REG4 {
189				regulator-name = "VCC_20";
190				regulator-min-microvolt = <2000000>;
191				regulator-max-microvolt = <2000000>;
192				regulator-always-on;
193			};
194
195			vccio_sd: REG5 {
196				regulator-name = "VCCIO_SD";
197				regulator-min-microvolt = <3300000>;
198				regulator-max-microvolt = <3300000>;
199				regulator-always-on;
200			};
201
202			vdd10_lcd: REG6 {
203				regulator-name = "VDD10_LCD";
204				regulator-min-microvolt = <1000000>;
205				regulator-max-microvolt = <1000000>;
206				regulator-always-on;
207			};
208
209			vcc_wl: REG7 {
210				regulator-name = "VCC_WL";
211				regulator-min-microvolt = <3300000>;
212				regulator-max-microvolt = <3300000>;
213				regulator-always-on;
214			};
215
216			vcca_33: REG8 {
217				regulator-name = "VCCA_33";
218				regulator-min-microvolt = <3300000>;
219				regulator-max-microvolt = <3300000>;
220				regulator-always-on;
221			};
222
223			vcc_lan: REG9 {
224				regulator-name = "VCC_LAN";
225				regulator-min-microvolt = <3300000>;
226				regulator-max-microvolt = <3300000>;
227				regulator-always-on;
228			};
229
230			vdd_10: REG10 {
231				regulator-name = "VDD_10";
232				regulator-min-microvolt = <1000000>;
233				regulator-max-microvolt = <1000000>;
234				regulator-always-on;
235			};
236
237			vcc_18: REG11 {
238				regulator-name = "VCC_18";
239				regulator-min-microvolt = <1800000>;
240				regulator-max-microvolt = <1800000>;
241				regulator-always-on;
242			};
243
244			vcc18_lcd: REG12 {
245				regulator-name = "VCC18_LCD";
246				regulator-min-microvolt = <1800000>;
247				regulator-max-microvolt = <1800000>;
248				regulator-always-on;
249			};
250		};
251	};
252};
253
254&i2c5 {
255	status = "okay";
256};
257
258&pinctrl {
259	pcfg_output_high: pcfg-output-high {
260		output-high;
261	};
262
263	pcfg_output_low: pcfg-output-low {
264		output-low;
265	};
266
267	act8846 {
268		pmic_vsel: pmic-vsel {
269			rockchip,pins = <7 RK_PA1 RK_FUNC_GPIO &pcfg_output_low>;
270		};
271
272		pwr_hold: pwr-hold {
273			rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_output_high>;
274		};
275	};
276
277	buttons {
278		pwrbtn: pwrbtn {
279			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
280		};
281	};
282
283	ir {
284		ir_int: ir-int {
285			rockchip,pins = <7 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>;
286		};
287	};
288
289	pmic {
290		pmic_int: pmic-int {
291			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
292		};
293	};
294
295	usb {
296		host_vbus_drv: host-vbus-drv {
297			rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
298		};
299
300		otg_vbus_drv: otg-vbus-drv {
301			rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
302		};
303	};
304};
305
306&pwm0 {
307	status = "okay";
308};
309
310&saradc {
311	vref-supply = <&vcc_18>;
312	status = "okay";
313};
314
315&sdmmc {
316	bus-width = <4>;
317	cap-mmc-highspeed;
318	cap-sd-highspeed;
319	card-detect-delay = <200>;
320	disable-wp;
321	pinctrl-names = "default";
322	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
323	vmmc-supply = <&vcc_sdmmc>;
324	vqmmc-supply = <&vccio_sd>;
325	status = "okay";
326};
327
328&tsadc {
329	rockchip,hw-tshut-mode = <0>;
330	rockchip,hw-tshut-polarity = <0>;
331	status = "okay";
332};
333
334&uart0 {
335	status = "okay";
336};
337
338&uart1 {
339	status = "okay";
340};
341
342&uart2 {
343	status = "okay";
344};
345
346&uart3 {
347	status = "okay";
348};
349
350&uart4 {
351	status = "okay";
352};
353
354&usb_host0_ehci {
355	status = "okay";
356};
357
358&usb_host1 {
359	status = "okay";
360};
361
362&usb_otg {
363	status = "okay";
364};
365
366&usbphy {
367	status = "okay";
368};
369
370&vopb {
371	status = "okay";
372};
373
374&vopb_mmu {
375	status = "okay";
376};
377
378&vopl {
379	status = "okay";
380};
381
382&vopl_mmu {
383	status = "okay";
384};
385
386&wdt {
387	status = "okay";
388};