blob: 06790f05b39537648c38b10ad6a4d9783b4bb076 [file] [log] [blame]
Johan Jonker41ed3912022-04-16 17:09:45 +02001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2016 Paweł Jarosz <paweljarosz3691@gmail.com>
4 */
5
6/dts-v1/;
7#include <dt-bindings/input/input.h>
8#include "rk3066a.dtsi"
9
10/ {
11 model = "Rikomagic MK808";
12 compatible = "rikomagic,mk808", "rockchip,rk3066a";
13
14 aliases {
15 mmc0 = &mmc0;
16 mmc1 = &mmc1;
17 };
18
19 chosen {
20 stdout-path = "serial2:115200n8";
21 };
22
23 memory@60000000 {
24 reg = <0x60000000 0x40000000>;
25 device_type = "memory";
26 };
27
28 adc-keys {
29 compatible = "adc-keys";
30 io-channels = <&saradc 1>;
31 io-channel-names = "buttons";
32 keyup-threshold-microvolt = <2500000>;
33 poll-interval = <100>;
34
Johan Jonker98125082023-03-19 16:05:57 +010035 button-recovery {
Johan Jonker41ed3912022-04-16 17:09:45 +020036 label = "recovery";
37 linux,code = <KEY_VENDOR>;
38 press-threshold-microvolt = <0>;
39 };
40 };
41
42 gpio-leds {
43 compatible = "gpio-leds";
44
45 blue_led: led-0 {
46 label = "mk808:blue:power";
47 gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>;
48 default-state = "off";
49 linux,default-trigger = "default-on";
50 };
51 };
52
53 hdmi_con {
54 compatible = "hdmi-connector";
55 type = "c";
56
57 port {
58 hdmi_con_in: endpoint {
59 remote-endpoint = <&hdmi_out_con>;
60 };
61 };
62 };
63
64 vcc_2v5: vcc-2v5 {
65 compatible = "regulator-fixed";
66 regulator-name = "vcc_2v5";
67 regulator-min-microvolt = <2500000>;
68 regulator-max-microvolt = <2500000>;
69 };
70
71 vcc_io: vcc-io {
72 compatible = "regulator-fixed";
73 regulator-name = "vcc_io";
74 regulator-min-microvolt = <3300000>;
75 regulator-max-microvolt = <3300000>;
76 };
77
78 vcc_host: usb-host-regulator {
79 compatible = "regulator-fixed";
80 enable-active-high;
81 gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
82 pinctrl-0 = <&host_drv>;
83 pinctrl-names = "default";
84 regulator-always-on;
85 regulator-name = "host-pwr";
86 regulator-min-microvolt = <5000000>;
87 regulator-max-microvolt = <5000000>;
88 startup-delay-us = <100000>;
89 vin-supply = <&vcc_io>;
90 };
91
92 vcc_otg: usb-otg-regulator {
93 compatible = "regulator-fixed";
94 enable-active-high;
95 gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
96 pinctrl-0 = <&otg_drv>;
97 pinctrl-names = "default";
98 regulator-always-on;
99 regulator-name = "vcc_otg";
100 regulator-min-microvolt = <5000000>;
101 regulator-max-microvolt = <5000000>;
102 startup-delay-us = <100000>;
103 vin-supply = <&vcc_io>;
104 };
105
106 vcc_sd: sdmmc-regulator {
107 compatible = "regulator-fixed";
108 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
109 pinctrl-0 = <&sdmmc_pwr>;
110 pinctrl-names = "default";
111 regulator-name = "vcc_sd";
112 regulator-min-microvolt = <3300000>;
113 regulator-max-microvolt = <3300000>;
114 startup-delay-us = <100000>;
115 vin-supply = <&vcc_io>;
116 };
117
118 vcc_wifi: sdio-regulator {
119 compatible = "regulator-fixed";
120 enable-active-high;
121 gpio = <&gpio3 RK_PD0 GPIO_ACTIVE_HIGH>;
122 pinctrl-0 = <&wifi_pwr>;
123 pinctrl-names = "default";
124 regulator-name = "vcc_wifi";
125 regulator-min-microvolt = <3300000>;
126 regulator-max-microvolt = <3300000>;
127 startup-delay-us = <100000>;
128 vin-supply = <&vcc_io>;
129 };
130};
131
132&hdmi {
133 status = "okay";
134};
135
136&hdmi_in_vop1 {
137 status = "disabled";
138};
139
140&hdmi_out {
141 hdmi_out_con: endpoint {
142 remote-endpoint = <&hdmi_con_in>;
143 };
144};
145
146&mmc0 {
147 bus-width = <4>;
148 cap-mmc-highspeed;
149 cap-sd-highspeed;
150 vmmc-supply = <&vcc_sd>;
151 status = "okay";
152};
153
154&mmc1 {
155 bus-width = <4>;
156 non-removable;
157 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4>;
158 pinctrl-names = "default";
159 vmmc-supply = <&vcc_wifi>;
Johan Jonker98125082023-03-19 16:05:57 +0100160 #address-cells = <1>;
161 #size-cells = <0>;
Johan Jonker41ed3912022-04-16 17:09:45 +0200162 status = "okay";
Johan Jonker98125082023-03-19 16:05:57 +0100163
164 brcmf: wifi@1 {
165 compatible = "brcm,bcm4329-fmac";
166 reg = <1>;
167 };
168};
169
170&nfc {
171 #address-cells = <1>;
172 #size-cells = <0>;
173 status = "okay";
174
175 nand@0 {
176 reg = <0>;
177 label = "rk-nand";
178 nand-bus-width = <8>;
179 nand-ecc-mode = "hw";
180 nand-ecc-step-size = <1024>;
181 nand-ecc-strength = <40>;
182 nand-is-boot-medium;
183 rockchip,boot-blks = <8>;
184 rockchip,boot-ecc-strength = <24>;
185 };
Johan Jonker41ed3912022-04-16 17:09:45 +0200186};
187
188&pinctrl {
189 usb-host {
190 host_drv: host-drv {
191 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_default>;
192 };
193 };
194
195 usb-otg {
196 otg_drv: otg-drv {
197 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_default>;
198 };
199 };
200
201 sdmmc {
202 sdmmc_pwr: sdmmc-pwr {
203 rockchip,pins = <3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_default>;
204 };
205 };
206
207 sdio {
208 wifi_pwr: wifi-pwr {
209 rockchip,pins = <3 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
210 };
211 };
212};
213
214&saradc {
215 vref-supply = <&vcc_2v5>;
216 status = "okay";
217};
218
219&uart2 {
220 status = "okay";
221};
222
223&usb_host {
224 status = "okay";
225};
226
227&usb_otg {
228 status = "okay";
229};
230
231&usbphy {
232 status = "okay";
233};
234
235&vop0 {
236 status = "okay";
237};
238
239&wdt {
240 status = "okay";
241};