xref: /linux/arch/mips/boot/dts/ingenic/cu1000-neo.dts (revision 95298d63c67673c654c08952672d016212b26054)
1// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include "x1000.dtsi"
5#include <dt-bindings/gpio/gpio.h>
6#include <dt-bindings/clock/ingenic,tcu.h>
7#include <dt-bindings/interrupt-controller/irq.h>
8
9/ {
10	compatible = "yna,cu1000-neo", "ingenic,x1000";
11	model = "YSH & ATIL General Board CU Neo";
12
13	aliases {
14		serial2 = &uart2;
15	};
16
17	chosen {
18		stdout-path = "serial2:115200n8";
19	};
20
21	memory {
22		device_type = "memory";
23		reg = <0x0 0x04000000>;
24	};
25
26	wlan_pwrseq: msc1-pwrseq {
27		compatible = "mmc-pwrseq-simple";
28
29		clocks = <&lpoclk>;
30		clock-names = "ext_clock";
31
32		reset-gpios = <&gpc 17 GPIO_ACTIVE_LOW>;
33		post-power-on-delay-ms = <200>;
34
35		lpoclk: ap6212a {
36			compatible = "fixed-clock";
37			#clock-cells = <0>;
38			clock-frequency = <32768>;
39		};
40	};
41};
42
43&exclk {
44	clock-frequency = <24000000>;
45};
46
47&tcu {
48	/* 1500 kHz for the system timer and clocksource */
49	assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER2>;
50	assigned-clock-rates = <1500000>, <1500000>;
51
52	/* Use channel #0 for the system timer channel #2 for the clocksource */
53	ingenic,pwm-channels-mask = <0xfa>;
54};
55
56&i2c0 {
57	status = "okay";
58
59	clock-frequency = <400000>;
60
61	pinctrl-names = "default";
62	pinctrl-0 = <&pins_i2c0>;
63
64	ads7830@48 {
65		compatible = "ti,ads7830";
66		reg = <0x48>;
67	};
68};
69
70&uart2 {
71	pinctrl-names = "default";
72	pinctrl-0 = <&pins_uart2>;
73
74	status = "okay";
75};
76
77&mac {
78	phy-mode = "rmii";
79	phy-handle = <&lan8720a>;
80
81	pinctrl-names = "default";
82	pinctrl-0 = <&pins_mac>;
83
84	snps,reset-gpio = <&gpc 23 GPIO_ACTIVE_LOW>; /* PC23 */
85	snps,reset-active-low;
86	snps,reset-delays-us = <0 10000 30000>;
87
88	status = "okay";
89};
90
91&mdio {
92	status = "okay";
93
94	lan8720a: ethernet-phy@0 {
95		compatible = "ethernet-phy-id0007.c0f0", "ethernet-phy-ieee802.3-c22";
96		reg = <0>;
97	};
98};
99
100&msc0 {
101	bus-width = <8>;
102	max-frequency = <50000000>;
103
104	pinctrl-names = "default";
105	pinctrl-0 = <&pins_msc0>;
106
107	non-removable;
108
109	status = "okay";
110};
111
112&msc1 {
113	bus-width = <4>;
114	max-frequency = <50000000>;
115
116	pinctrl-names = "default";
117	pinctrl-0 = <&pins_msc1>;
118
119	#address-cells = <1>;
120	#size-cells = <0>;
121
122	non-removable;
123
124	mmc-pwrseq = <&wlan_pwrseq>;
125
126	status = "okay";
127
128	ap6212a: wifi@1 {
129		compatible = "brcm,bcm4329-fmac";
130		reg = <1>;
131
132		interrupt-parent = <&gpc>;
133		interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
134		interrupt-names = "host-wake";
135
136		brcm,drive-strength = <10>;
137	};
138};
139
140&pinctrl {
141	pins_i2c0: i2c0 {
142		function = "i2c0";
143		groups = "i2c0-data";
144		bias-disable;
145	};
146
147	pins_uart2: uart2 {
148		function = "uart2";
149		groups = "uart2-data-d";
150		bias-disable;
151	};
152
153	pins_mac: mac {
154		function = "mac";
155		groups = "mac";
156		bias-disable;
157	};
158
159	pins_msc0: msc0 {
160		function = "mmc0";
161		groups = "mmc0-1bit", "mmc0-4bit", "mmc0-8bit";
162		bias-disable;
163	};
164
165	pins_msc1: msc1 {
166		function = "mmc1";
167		groups = "mmc1-1bit", "mmc1-4bit";
168		bias-disable;
169	};
170};
171