diff options
author | Arnd Bergmann <arnd@arndb.de> | 2018-10-04 10:41:12 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2018-10-04 10:41:16 -0400 |
commit | 5140512d5be501e09171deef16e03087f57ef980 (patch) | |
tree | 6e43e550c74b98af4b1b66b25d9545ad721d3089 | |
parent | 22b9292141aa791d8182514da9ba780e7ea09528 (diff) | |
parent | 186b45657b244ce865e01b65d73868a48252e1ff (diff) |
Merge tag 'v4.20-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt
Nodes for the newly support rk3188 display controller, a fix for a new
dtc warning, gpio setting for the sdmmc regulator on radxarock and a
new board the "S" variant of the rk3288-based Tinker board, that sports
an added emmc.
* tag 'v4.20-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
ARM: dts: rockchip: add rk3288-based Tinker board S
ARM: dts: rockchip: move shared tinker-board nodes to a common dtsi
ARM: dts: rockchip: explicitly set vcc_sd0 pin to gpio on rk3188-radxarock
ARM: dts: rockchip: Fix erroneous SPI bus dtc warnings on rk3036
ARM: dts: rockchip: add rk3188 lcd controller nodes
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r-- | Documentation/devicetree/bindings/arm/rockchip.txt | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3036.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3188-radxarock.dts | 8 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3188.dtsi | 82 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3288-tinker-s.dts | 26 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3288-tinker.dts | 498 | ||||
-rw-r--r-- | arch/arm/boot/dts/rk3288-tinker.dtsi | 502 |
8 files changed, 626 insertions, 497 deletions
diff --git a/Documentation/devicetree/bindings/arm/rockchip.txt b/Documentation/devicetree/bindings/arm/rockchip.txt index 0b7e699628d6..0cc71236d639 100644 --- a/Documentation/devicetree/bindings/arm/rockchip.txt +++ b/Documentation/devicetree/bindings/arm/rockchip.txt | |||
@@ -17,6 +17,10 @@ Rockchip platforms device tree bindings | |||
17 | Required root node properties: | 17 | Required root node properties: |
18 | - compatible = "asus,rk3288-tinker", "rockchip,rk3288"; | 18 | - compatible = "asus,rk3288-tinker", "rockchip,rk3288"; |
19 | 19 | ||
20 | - Asus Tinker board S | ||
21 | Required root node properties: | ||
22 | - compatible = "asus,rk3288-tinker-s", "rockchip,rk3288"; | ||
23 | |||
20 | - Kylin RK3036 board: | 24 | - Kylin RK3036 board: |
21 | Required root node properties: | 25 | Required root node properties: |
22 | - compatible = "rockchip,kylin-rk3036", "rockchip,rk3036"; | 26 | - compatible = "rockchip,kylin-rk3036", "rockchip,rk3036"; |
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 058a09e08a56..b0e966d625b9 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -870,6 +870,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += \ | |||
870 | rk3288-r89.dtb \ | 870 | rk3288-r89.dtb \ |
871 | rk3288-rock2-square.dtb \ | 871 | rk3288-rock2-square.dtb \ |
872 | rk3288-tinker.dtb \ | 872 | rk3288-tinker.dtb \ |
873 | rk3288-tinker-s.dtb \ | ||
873 | rk3288-veyron-brain.dtb \ | 874 | rk3288-veyron-brain.dtb \ |
874 | rk3288-veyron-jaq.dtb \ | 875 | rk3288-veyron-jaq.dtb \ |
875 | rk3288-veyron-jerry.dtb \ | 876 | rk3288-veyron-jerry.dtb \ |
diff --git a/arch/arm/boot/dts/rk3036.dtsi b/arch/arm/boot/dts/rk3036.dtsi index 67f57200d9a0..d560fc4051c5 100644 --- a/arch/arm/boot/dts/rk3036.dtsi +++ b/arch/arm/boot/dts/rk3036.dtsi | |||
@@ -733,7 +733,7 @@ | |||
733 | /* no rts / cts for uart2 */ | 733 | /* no rts / cts for uart2 */ |
734 | }; | 734 | }; |
735 | 735 | ||
736 | spi { | 736 | spi-pins { |
737 | spi_txd:spi-txd { | 737 | spi_txd:spi-txd { |
738 | rockchip,pins = <1 29 RK_FUNC_3 &pcfg_pull_default>; | 738 | rockchip,pins = <1 29 RK_FUNC_3 &pcfg_pull_default>; |
739 | }; | 739 | }; |
diff --git a/arch/arm/boot/dts/rk3188-radxarock.dts b/arch/arm/boot/dts/rk3188-radxarock.dts index 45fd2b302dda..4a2890618f6f 100644 --- a/arch/arm/boot/dts/rk3188-radxarock.dts +++ b/arch/arm/boot/dts/rk3188-radxarock.dts | |||
@@ -93,6 +93,8 @@ | |||
93 | regulator-min-microvolt = <3300000>; | 93 | regulator-min-microvolt = <3300000>; |
94 | regulator-max-microvolt = <3300000>; | 94 | regulator-max-microvolt = <3300000>; |
95 | gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; | 95 | gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; |
96 | pinctrl-names = "default"; | ||
97 | pinctrl-0 = <&sdmmc_pwr>; | ||
96 | startup-delay-us = <100000>; | 98 | startup-delay-us = <100000>; |
97 | vin-supply = <&vcc_io>; | 99 | vin-supply = <&vcc_io>; |
98 | }; | 100 | }; |
@@ -315,6 +317,12 @@ | |||
315 | }; | 317 | }; |
316 | }; | 318 | }; |
317 | 319 | ||
320 | sd0 { | ||
321 | sdmmc_pwr: sdmmc-pwr { | ||
322 | rockchip,pins = <RK_GPIO3 1 RK_FUNC_GPIO &pcfg_pull_none>; | ||
323 | }; | ||
324 | }; | ||
325 | |||
318 | usb { | 326 | usb { |
319 | host_vbus_drv: host-vbus-drv { | 327 | host_vbus_drv: host-vbus-drv { |
320 | rockchip,pins = <0 3 RK_FUNC_GPIO &pcfg_pull_none>; | 328 | rockchip,pins = <0 3 RK_FUNC_GPIO &pcfg_pull_none>; |
diff --git a/arch/arm/boot/dts/rk3188.dtsi b/arch/arm/boot/dts/rk3188.dtsi index aa123f93f181..b6f790973736 100644 --- a/arch/arm/boot/dts/rk3188.dtsi +++ b/arch/arm/boot/dts/rk3188.dtsi | |||
@@ -56,6 +56,11 @@ | |||
56 | }; | 56 | }; |
57 | }; | 57 | }; |
58 | 58 | ||
59 | display-subsystem { | ||
60 | compatible = "rockchip,display-subsystem"; | ||
61 | ports = <&vop0_out>, <&vop1_out>; | ||
62 | }; | ||
63 | |||
59 | sram: sram@10080000 { | 64 | sram: sram@10080000 { |
60 | compatible = "mmio-sram"; | 65 | compatible = "mmio-sram"; |
61 | reg = <0x10080000 0x8000>; | 66 | reg = <0x10080000 0x8000>; |
@@ -69,6 +74,38 @@ | |||
69 | }; | 74 | }; |
70 | }; | 75 | }; |
71 | 76 | ||
77 | vop0: vop@1010c000 { | ||
78 | compatible = "rockchip,rk3188-vop"; | ||
79 | reg = <0x1010c000 0x1000>; | ||
80 | interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; | ||
81 | clocks = <&cru ACLK_LCDC0>, <&cru DCLK_LCDC0>, <&cru HCLK_LCDC0>; | ||
82 | clock-names = "aclk_vop", "dclk_vop", "hclk_vop"; | ||
83 | resets = <&cru SRST_LCDC0_AXI>, <&cru SRST_LCDC0_AHB>, <&cru SRST_LCDC0_DCLK>; | ||
84 | reset-names = "axi", "ahb", "dclk"; | ||
85 | status = "disabled"; | ||
86 | |||
87 | vop0_out: port { | ||
88 | #address-cells = <1>; | ||
89 | #size-cells = <0>; | ||
90 | }; | ||
91 | }; | ||
92 | |||
93 | vop1: vop@1010e000 { | ||
94 | compatible = "rockchip,rk3188-vop"; | ||
95 | reg = <0x1010e000 0x1000>; | ||
96 | interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; | ||
97 | clocks = <&cru ACLK_LCDC1>, <&cru DCLK_LCDC1>, <&cru HCLK_LCDC1>; | ||
98 | clock-names = "aclk_vop", "dclk_vop", "hclk_vop"; | ||
99 | resets = <&cru SRST_LCDC1_AXI>, <&cru SRST_LCDC1_AHB>, <&cru SRST_LCDC1_DCLK>; | ||
100 | reset-names = "axi", "ahb", "dclk"; | ||
101 | status = "disabled"; | ||
102 | |||
103 | vop1_out: port { | ||
104 | #address-cells = <1>; | ||
105 | #size-cells = <0>; | ||
106 | }; | ||
107 | }; | ||
108 | |||
72 | timer3: timer@2000e000 { | 109 | timer3: timer@2000e000 { |
73 | compatible = "rockchip,rk3188-timer", "rockchip,rk3288-timer"; | 110 | compatible = "rockchip,rk3188-timer", "rockchip,rk3288-timer"; |
74 | reg = <0x2000e000 0x20>; | 111 | reg = <0x2000e000 0x20>; |
@@ -309,6 +346,51 @@ | |||
309 | }; | 346 | }; |
310 | }; | 347 | }; |
311 | 348 | ||
349 | lcdc1 { | ||
350 | lcdc1_dclk: lcdc1-dclk { | ||
351 | rockchip,pins = <2 RK_PD0 RK_FUNC_1 &pcfg_pull_none>; | ||
352 | }; | ||
353 | |||
354 | lcdc1_den: lcdc1-den { | ||
355 | rockchip,pins = <2 RK_PD1 RK_FUNC_1 &pcfg_pull_none>; | ||
356 | }; | ||
357 | |||
358 | lcdc1_hsync: lcdc1-hsync { | ||
359 | rockchip,pins = <2 RK_PD2 RK_FUNC_1 &pcfg_pull_none>; | ||
360 | }; | ||
361 | |||
362 | lcdc1_vsync: lcdc1-vsync { | ||
363 | rockchip,pins = <2 RK_PD3 RK_FUNC_1 &pcfg_pull_none>; | ||
364 | }; | ||
365 | |||
366 | lcdc1_rgb24: ldcd1-rgb24 { | ||
367 | rockchip,pins = <2 RK_PA0 RK_FUNC_1 &pcfg_pull_none>, | ||
368 | <2 RK_PA1 RK_FUNC_1 &pcfg_pull_none>, | ||
369 | <2 RK_PA2 RK_FUNC_1 &pcfg_pull_none>, | ||
370 | <2 RK_PA3 RK_FUNC_1 &pcfg_pull_none>, | ||
371 | <2 RK_PA4 RK_FUNC_1 &pcfg_pull_none>, | ||
372 | <2 RK_PA5 RK_FUNC_1 &pcfg_pull_none>, | ||
373 | <2 RK_PA6 RK_FUNC_1 &pcfg_pull_none>, | ||
374 | <2 RK_PA7 RK_FUNC_1 &pcfg_pull_none>, | ||
375 | <2 RK_PB0 RK_FUNC_1 &pcfg_pull_none>, | ||
376 | <2 RK_PB1 RK_FUNC_1 &pcfg_pull_none>, | ||
377 | <2 RK_PB2 RK_FUNC_1 &pcfg_pull_none>, | ||
378 | <2 RK_PB3 RK_FUNC_1 &pcfg_pull_none>, | ||
379 | <2 RK_PB4 RK_FUNC_1 &pcfg_pull_none>, | ||
380 | <2 RK_PB5 RK_FUNC_1 &pcfg_pull_none>, | ||
381 | <2 RK_PB6 RK_FUNC_1 &pcfg_pull_none>, | ||
382 | <2 RK_PB7 RK_FUNC_1 &pcfg_pull_none>, | ||
383 | <2 RK_PC0 RK_FUNC_1 &pcfg_pull_none>, | ||
384 | <2 RK_PC1 RK_FUNC_1 &pcfg_pull_none>, | ||
385 | <2 RK_PC2 RK_FUNC_1 &pcfg_pull_none>, | ||
386 | <2 RK_PC3 RK_FUNC_1 &pcfg_pull_none>, | ||
387 | <2 RK_PC4 RK_FUNC_1 &pcfg_pull_none>, | ||
388 | <2 RK_PC5 RK_FUNC_1 &pcfg_pull_none>, | ||
389 | <2 RK_PC6 RK_FUNC_1 &pcfg_pull_none>, | ||
390 | <2 RK_PC7 RK_FUNC_1 &pcfg_pull_none>; | ||
391 | }; | ||
392 | }; | ||
393 | |||
312 | pwm0 { | 394 | pwm0 { |
313 | pwm0_out: pwm0-out { | 395 | pwm0_out: pwm0-out { |
314 | rockchip,pins = <RK_GPIO3 27 RK_FUNC_1 &pcfg_pull_none>; | 396 | rockchip,pins = <RK_GPIO3 27 RK_FUNC_1 &pcfg_pull_none>; |
diff --git a/arch/arm/boot/dts/rk3288-tinker-s.dts b/arch/arm/boot/dts/rk3288-tinker-s.dts new file mode 100644 index 000000000000..37093922b482 --- /dev/null +++ b/arch/arm/boot/dts/rk3288-tinker-s.dts | |||
@@ -0,0 +1,26 @@ | |||
1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) | ||
2 | /* | ||
3 | * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. | ||
4 | */ | ||
5 | |||
6 | /dts-v1/; | ||
7 | |||
8 | #include "rk3288-tinker.dtsi" | ||
9 | |||
10 | / { | ||
11 | model = "Rockchip RK3288 Asus Tinker Board S"; | ||
12 | compatible = "asus,rk3288-tinker-s", "rockchip,rk3288"; | ||
13 | }; | ||
14 | |||
15 | &emmc { | ||
16 | bus-width = <8>; | ||
17 | cap-mmc-highspeed; | ||
18 | disable-wp; | ||
19 | non-removable; | ||
20 | pinctrl-names = "default"; | ||
21 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>; | ||
22 | max-frequency = <150000000>; | ||
23 | mmc-hs200-1_8v; | ||
24 | mmc-ddr-1_8v; | ||
25 | status = "okay"; | ||
26 | }; | ||
diff --git a/arch/arm/boot/dts/rk3288-tinker.dts b/arch/arm/boot/dts/rk3288-tinker.dts index ceade5962899..1e43527aa196 100644 --- a/arch/arm/boot/dts/rk3288-tinker.dts +++ b/arch/arm/boot/dts/rk3288-tinker.dts | |||
@@ -5,503 +5,9 @@ | |||
5 | 5 | ||
6 | /dts-v1/; | 6 | /dts-v1/; |
7 | 7 | ||
8 | #include "rk3288.dtsi" | 8 | #include "rk3288-tinker.dtsi" |
9 | #include <dt-bindings/input/input.h> | ||
10 | 9 | ||
11 | / { | 10 | / { |
12 | model = "Rockchip RK3288 Tinker Board"; | 11 | model = "Rockchip RK3288 Asus Tinker Board"; |
13 | compatible = "asus,rk3288-tinker", "rockchip,rk3288"; | 12 | compatible = "asus,rk3288-tinker", "rockchip,rk3288"; |
14 | |||
15 | chosen { | ||
16 | stdout-path = "serial2:115200n8"; | ||
17 | }; | ||
18 | |||
19 | memory { | ||
20 | reg = <0x0 0x0 0x0 0x80000000>; | ||
21 | device_type = "memory"; | ||
22 | }; | ||
23 | |||
24 | ext_gmac: external-gmac-clock { | ||
25 | compatible = "fixed-clock"; | ||
26 | #clock-cells = <0>; | ||
27 | clock-frequency = <125000000>; | ||
28 | clock-output-names = "ext_gmac"; | ||
29 | }; | ||
30 | |||
31 | gpio-keys { | ||
32 | compatible = "gpio-keys"; | ||
33 | #address-cells = <1>; | ||
34 | #size-cells = <0>; | ||
35 | autorepeat; | ||
36 | |||
37 | pinctrl-names = "default"; | ||
38 | pinctrl-0 = <&pwrbtn>; | ||
39 | |||
40 | button@0 { | ||
41 | gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; | ||
42 | linux,code = <KEY_POWER>; | ||
43 | label = "GPIO Key Power"; | ||
44 | linux,input-type = <1>; | ||
45 | wakeup-source; | ||
46 | debounce-interval = <100>; | ||
47 | }; | ||
48 | }; | ||
49 | |||
50 | gpio-leds { | ||
51 | compatible = "gpio-leds"; | ||
52 | |||
53 | act-led { | ||
54 | gpios=<&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; | ||
55 | linux,default-trigger="mmc0"; | ||
56 | }; | ||
57 | |||
58 | heartbeat-led { | ||
59 | gpios=<&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>; | ||
60 | linux,default-trigger="heartbeat"; | ||
61 | }; | ||
62 | |||
63 | pwr-led { | ||
64 | gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; | ||
65 | linux,default-trigger = "default-on"; | ||
66 | }; | ||
67 | }; | ||
68 | |||
69 | sound { | ||
70 | compatible = "simple-audio-card"; | ||
71 | simple-audio-card,format = "i2s"; | ||
72 | simple-audio-card,name = "rockchip,tinker-codec"; | ||
73 | simple-audio-card,mclk-fs = <512>; | ||
74 | |||
75 | simple-audio-card,codec { | ||
76 | sound-dai = <&hdmi>; | ||
77 | }; | ||
78 | |||
79 | simple-audio-card,cpu { | ||
80 | sound-dai = <&i2s>; | ||
81 | }; | ||
82 | }; | ||
83 | |||
84 | vcc_sys: vsys-regulator { | ||
85 | compatible = "regulator-fixed"; | ||
86 | regulator-name = "vcc_sys"; | ||
87 | regulator-min-microvolt = <5000000>; | ||
88 | regulator-max-microvolt = <5000000>; | ||
89 | regulator-always-on; | ||
90 | regulator-boot-on; | ||
91 | }; | ||
92 | |||
93 | vcc_sd: sdmmc-regulator { | ||
94 | compatible = "regulator-fixed"; | ||
95 | gpio = <&gpio7 11 GPIO_ACTIVE_LOW>; | ||
96 | pinctrl-names = "default"; | ||
97 | pinctrl-0 = <&sdmmc_pwr>; | ||
98 | regulator-name = "vcc_sd"; | ||
99 | regulator-min-microvolt = <3300000>; | ||
100 | regulator-max-microvolt = <3300000>; | ||
101 | startup-delay-us = <100000>; | ||
102 | vin-supply = <&vcc_io>; | ||
103 | }; | ||
104 | }; | ||
105 | |||
106 | &cpu0 { | ||
107 | cpu0-supply = <&vdd_cpu>; | ||
108 | }; | ||
109 | |||
110 | &gmac { | ||
111 | assigned-clocks = <&cru SCLK_MAC>; | ||
112 | assigned-clock-parents = <&ext_gmac>; | ||
113 | clock_in_out = "input"; | ||
114 | phy-mode = "rgmii"; | ||
115 | phy-supply = <&vcc33_lan>; | ||
116 | pinctrl-names = "default"; | ||
117 | pinctrl-0 = <&rgmii_pins>; | ||
118 | snps,reset-gpio = <&gpio4 7 0>; | ||
119 | snps,reset-active-low; | ||
120 | snps,reset-delays-us = <0 10000 1000000>; | ||
121 | tx_delay = <0x30>; | ||
122 | rx_delay = <0x10>; | ||
123 | status = "ok"; | ||
124 | }; | ||
125 | |||
126 | &gpu { | ||
127 | mali-supply = <&vdd_gpu>; | ||
128 | status = "okay"; | ||
129 | }; | ||
130 | |||
131 | &hdmi { | ||
132 | ddc-i2c-bus = <&i2c5>; | ||
133 | status = "okay"; | ||
134 | }; | ||
135 | |||
136 | &i2c0 { | ||
137 | clock-frequency = <400000>; | ||
138 | status = "okay"; | ||
139 | |||
140 | rk808: pmic@1b { | ||
141 | compatible = "rockchip,rk808"; | ||
142 | reg = <0x1b>; | ||
143 | interrupt-parent = <&gpio0>; | ||
144 | interrupts = <4 IRQ_TYPE_LEVEL_LOW>; | ||
145 | #clock-cells = <1>; | ||
146 | clock-output-names = "xin32k", "rk808-clkout2"; | ||
147 | dvs-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>, | ||
148 | <&gpio0 12 GPIO_ACTIVE_HIGH>; | ||
149 | pinctrl-names = "default"; | ||
150 | pinctrl-0 = <&pmic_int &global_pwroff &dvs_1 &dvs_2>; | ||
151 | rockchip,system-power-controller; | ||
152 | wakeup-source; | ||
153 | |||
154 | vcc1-supply = <&vcc_sys>; | ||
155 | vcc2-supply = <&vcc_sys>; | ||
156 | vcc3-supply = <&vcc_sys>; | ||
157 | vcc4-supply = <&vcc_sys>; | ||
158 | vcc6-supply = <&vcc_sys>; | ||
159 | vcc7-supply = <&vcc_sys>; | ||
160 | vcc8-supply = <&vcc_io>; | ||
161 | vcc9-supply = <&vcc_io>; | ||
162 | vcc10-supply = <&vcc_io>; | ||
163 | vcc11-supply = <&vcc_sys>; | ||
164 | vcc12-supply = <&vcc_io>; | ||
165 | vddio-supply = <&vcc_io>; | ||
166 | |||
167 | regulators { | ||
168 | vdd_cpu: DCDC_REG1 { | ||
169 | regulator-always-on; | ||
170 | regulator-boot-on; | ||
171 | regulator-min-microvolt = <750000>; | ||
172 | regulator-max-microvolt = <1350000>; | ||
173 | regulator-name = "vdd_arm"; | ||
174 | regulator-ramp-delay = <6000>; | ||
175 | regulator-state-mem { | ||
176 | regulator-off-in-suspend; | ||
177 | }; | ||
178 | }; | ||
179 | |||
180 | vdd_gpu: DCDC_REG2 { | ||
181 | regulator-always-on; | ||
182 | regulator-boot-on; | ||
183 | regulator-min-microvolt = <850000>; | ||
184 | regulator-max-microvolt = <1250000>; | ||
185 | regulator-name = "vdd_gpu"; | ||
186 | regulator-ramp-delay = <6000>; | ||
187 | regulator-state-mem { | ||
188 | regulator-on-in-suspend; | ||
189 | regulator-suspend-microvolt = <1000000>; | ||
190 | }; | ||
191 | }; | ||
192 | |||
193 | vcc_ddr: DCDC_REG3 { | ||
194 | regulator-always-on; | ||
195 | regulator-boot-on; | ||
196 | regulator-name = "vcc_ddr"; | ||
197 | regulator-state-mem { | ||
198 | regulator-on-in-suspend; | ||
199 | }; | ||
200 | }; | ||
201 | |||
202 | vcc_io: DCDC_REG4 { | ||
203 | regulator-always-on; | ||
204 | regulator-boot-on; | ||
205 | regulator-min-microvolt = <3300000>; | ||
206 | regulator-max-microvolt = <3300000>; | ||
207 | regulator-name = "vcc_io"; | ||
208 | regulator-state-mem { | ||
209 | regulator-on-in-suspend; | ||
210 | regulator-suspend-microvolt = <3300000>; | ||
211 | }; | ||
212 | }; | ||
213 | |||
214 | vcc18_ldo1: LDO_REG1 { | ||
215 | regulator-always-on; | ||
216 | regulator-boot-on; | ||
217 | regulator-min-microvolt = <1800000>; | ||
218 | regulator-max-microvolt = <1800000>; | ||
219 | regulator-name = "vcc18_ldo1"; | ||
220 | regulator-state-mem { | ||
221 | regulator-on-in-suspend; | ||
222 | regulator-suspend-microvolt = <1800000>; | ||
223 | }; | ||
224 | }; | ||
225 | |||
226 | vcc33_mipi: LDO_REG2 { | ||
227 | regulator-always-on; | ||
228 | regulator-boot-on; | ||
229 | regulator-min-microvolt = <3300000>; | ||
230 | regulator-max-microvolt = <3300000>; | ||
231 | regulator-name = "vcc33_mipi"; | ||
232 | regulator-state-mem { | ||
233 | regulator-off-in-suspend; | ||
234 | }; | ||
235 | }; | ||
236 | |||
237 | vdd_10: LDO_REG3 { | ||
238 | regulator-always-on; | ||
239 | regulator-boot-on; | ||
240 | regulator-min-microvolt = <1000000>; | ||
241 | regulator-max-microvolt = <1000000>; | ||
242 | regulator-name = "vdd_10"; | ||
243 | regulator-state-mem { | ||
244 | regulator-on-in-suspend; | ||
245 | regulator-suspend-microvolt = <1000000>; | ||
246 | }; | ||
247 | }; | ||
248 | |||
249 | vcc18_codec: LDO_REG4 { | ||
250 | regulator-always-on; | ||
251 | regulator-boot-on; | ||
252 | regulator-min-microvolt = <1800000>; | ||
253 | regulator-max-microvolt = <1800000>; | ||
254 | regulator-name = "vcc18_codec"; | ||
255 | regulator-state-mem { | ||
256 | regulator-on-in-suspend; | ||
257 | regulator-suspend-microvolt = <1800000>; | ||
258 | }; | ||
259 | }; | ||
260 | |||
261 | vccio_sd: LDO_REG5 { | ||
262 | regulator-min-microvolt = <1800000>; | ||
263 | regulator-max-microvolt = <3300000>; | ||
264 | regulator-name = "vccio_sd"; | ||
265 | regulator-state-mem { | ||
266 | regulator-on-in-suspend; | ||
267 | regulator-suspend-microvolt = <3300000>; | ||
268 | }; | ||
269 | }; | ||
270 | |||
271 | vdd10_lcd: LDO_REG6 { | ||
272 | regulator-always-on; | ||
273 | regulator-boot-on; | ||
274 | regulator-min-microvolt = <1000000>; | ||
275 | regulator-max-microvolt = <1000000>; | ||
276 | regulator-name = "vdd10_lcd"; | ||
277 | regulator-state-mem { | ||
278 | regulator-on-in-suspend; | ||
279 | regulator-suspend-microvolt = <1000000>; | ||
280 | }; | ||
281 | }; | ||
282 | |||
283 | vcc_18: LDO_REG7 { | ||
284 | regulator-always-on; | ||
285 | regulator-boot-on; | ||
286 | regulator-min-microvolt = <1800000>; | ||
287 | regulator-max-microvolt = <1800000>; | ||
288 | regulator-name = "vcc_18"; | ||
289 | regulator-state-mem { | ||
290 | regulator-on-in-suspend; | ||
291 | regulator-suspend-microvolt = <1800000>; | ||
292 | }; | ||
293 | }; | ||
294 | |||
295 | vcc18_lcd: LDO_REG8 { | ||
296 | regulator-always-on; | ||
297 | regulator-boot-on; | ||
298 | regulator-min-microvolt = <1800000>; | ||
299 | regulator-max-microvolt = <1800000>; | ||
300 | regulator-name = "vcc18_lcd"; | ||
301 | regulator-state-mem { | ||
302 | regulator-on-in-suspend; | ||
303 | regulator-suspend-microvolt = <1800000>; | ||
304 | }; | ||
305 | }; | ||
306 | |||
307 | vcc33_sd: SWITCH_REG1 { | ||
308 | regulator-always-on; | ||
309 | regulator-boot-on; | ||
310 | regulator-name = "vcc33_sd"; | ||
311 | regulator-state-mem { | ||
312 | regulator-on-in-suspend; | ||
313 | }; | ||
314 | }; | ||
315 | |||
316 | vcc33_lan: SWITCH_REG2 { | ||
317 | regulator-always-on; | ||
318 | regulator-boot-on; | ||
319 | regulator-name = "vcc33_lan"; | ||
320 | regulator-state-mem { | ||
321 | regulator-on-in-suspend; | ||
322 | }; | ||
323 | }; | ||
324 | }; | ||
325 | }; | ||
326 | }; | ||
327 | |||
328 | &i2c2 { | ||
329 | status = "okay"; | ||
330 | }; | ||
331 | |||
332 | &i2c5 { | ||
333 | status = "okay"; | ||
334 | }; | ||
335 | |||
336 | &i2s { | ||
337 | #sound-dai-cells = <0>; | ||
338 | status = "okay"; | ||
339 | }; | ||
340 | |||
341 | &io_domains { | ||
342 | status = "okay"; | ||
343 | |||
344 | sdcard-supply = <&vccio_sd>; | ||
345 | }; | ||
346 | |||
347 | &pinctrl { | ||
348 | pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma { | ||
349 | drive-strength = <8>; | ||
350 | }; | ||
351 | |||
352 | pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma { | ||
353 | bias-pull-up; | ||
354 | drive-strength = <8>; | ||
355 | }; | ||
356 | |||
357 | backlight { | ||
358 | bl_en: bl-en { | ||
359 | rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_pull_none>; | ||
360 | }; | ||
361 | }; | ||
362 | |||
363 | buttons { | ||
364 | pwrbtn: pwrbtn { | ||
365 | rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; | ||
366 | }; | ||
367 | }; | ||
368 | |||
369 | eth_phy { | ||
370 | eth_phy_pwr: eth-phy-pwr { | ||
371 | rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_none>; | ||
372 | }; | ||
373 | }; | ||
374 | |||
375 | pmic { | ||
376 | pmic_int: pmic-int { | ||
377 | rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO \ | ||
378 | &pcfg_pull_up>; | ||
379 | }; | ||
380 | |||
381 | dvs_1: dvs-1 { | ||
382 | rockchip,pins = <RK_GPIO0 11 RK_FUNC_GPIO \ | ||
383 | &pcfg_pull_down>; | ||
384 | }; | ||
385 | |||
386 | dvs_2: dvs-2 { | ||
387 | rockchip,pins = <RK_GPIO0 12 RK_FUNC_GPIO \ | ||
388 | &pcfg_pull_down>; | ||
389 | }; | ||
390 | }; | ||
391 | |||
392 | sdmmc { | ||
393 | sdmmc_bus4: sdmmc-bus4 { | ||
394 | rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
395 | <6 17 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
396 | <6 18 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
397 | <6 19 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
398 | }; | ||
399 | |||
400 | sdmmc_clk: sdmmc-clk { | ||
401 | rockchip,pins = <6 20 RK_FUNC_1 \ | ||
402 | &pcfg_pull_none_drv_8ma>; | ||
403 | }; | ||
404 | |||
405 | sdmmc_cmd: sdmmc-cmd { | ||
406 | rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
407 | }; | ||
408 | |||
409 | sdmmc_pwr: sdmmc-pwr { | ||
410 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; | ||
411 | }; | ||
412 | }; | ||
413 | |||
414 | usb { | ||
415 | host_vbus_drv: host-vbus-drv { | ||
416 | rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; | ||
417 | }; | ||
418 | |||
419 | pwr_3g: pwr-3g { | ||
420 | rockchip,pins = <7 8 RK_FUNC_GPIO &pcfg_pull_none>; | ||
421 | }; | ||
422 | }; | ||
423 | }; | ||
424 | |||
425 | &pwm0 { | ||
426 | status = "okay"; | ||
427 | }; | ||
428 | |||
429 | &saradc { | ||
430 | vref-supply = <&vcc18_ldo1>; | ||
431 | status ="okay"; | ||
432 | }; | ||
433 | |||
434 | &sdmmc { | ||
435 | bus-width = <4>; | ||
436 | cap-mmc-highspeed; | ||
437 | cap-sd-highspeed; | ||
438 | card-detect-delay = <200>; | ||
439 | disable-wp; /* wp not hooked up */ | ||
440 | pinctrl-names = "default"; | ||
441 | pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; | ||
442 | status = "okay"; | ||
443 | vmmc-supply = <&vcc33_sd>; | ||
444 | vqmmc-supply = <&vccio_sd>; | ||
445 | }; | ||
446 | |||
447 | &tsadc { | ||
448 | rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */ | ||
449 | rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */ | ||
450 | status = "okay"; | ||
451 | }; | ||
452 | |||
453 | &uart0 { | ||
454 | status = "okay"; | ||
455 | }; | ||
456 | |||
457 | &uart1 { | ||
458 | status = "okay"; | ||
459 | }; | ||
460 | |||
461 | &uart2 { | ||
462 | status = "okay"; | ||
463 | }; | ||
464 | |||
465 | &uart3 { | ||
466 | status = "okay"; | ||
467 | }; | ||
468 | |||
469 | &uart4 { | ||
470 | status = "okay"; | ||
471 | }; | ||
472 | |||
473 | &usbphy { | ||
474 | status = "okay"; | ||
475 | }; | ||
476 | |||
477 | &usb_host0_ehci { | ||
478 | status = "okay"; | ||
479 | }; | ||
480 | |||
481 | &usb_host1 { | ||
482 | status = "okay"; | ||
483 | }; | ||
484 | |||
485 | &usb_otg { | ||
486 | status= "okay"; | ||
487 | }; | ||
488 | |||
489 | &vopb { | ||
490 | status = "okay"; | ||
491 | }; | ||
492 | |||
493 | &vopb_mmu { | ||
494 | status = "okay"; | ||
495 | }; | ||
496 | |||
497 | &vopl { | ||
498 | status = "okay"; | ||
499 | }; | ||
500 | |||
501 | &vopl_mmu { | ||
502 | status = "okay"; | ||
503 | }; | ||
504 | |||
505 | &wdt { | ||
506 | status = "okay"; | ||
507 | }; | 13 | }; |
diff --git a/arch/arm/boot/dts/rk3288-tinker.dtsi b/arch/arm/boot/dts/rk3288-tinker.dtsi new file mode 100644 index 000000000000..aa107ee41b8b --- /dev/null +++ b/arch/arm/boot/dts/rk3288-tinker.dtsi | |||
@@ -0,0 +1,502 @@ | |||
1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) | ||
2 | /* | ||
3 | * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. | ||
4 | */ | ||
5 | |||
6 | #include "rk3288.dtsi" | ||
7 | #include <dt-bindings/input/input.h> | ||
8 | |||
9 | / { | ||
10 | chosen { | ||
11 | stdout-path = "serial2:115200n8"; | ||
12 | }; | ||
13 | |||
14 | memory { | ||
15 | reg = <0x0 0x0 0x0 0x80000000>; | ||
16 | device_type = "memory"; | ||
17 | }; | ||
18 | |||
19 | ext_gmac: external-gmac-clock { | ||
20 | compatible = "fixed-clock"; | ||
21 | #clock-cells = <0>; | ||
22 | clock-frequency = <125000000>; | ||
23 | clock-output-names = "ext_gmac"; | ||
24 | }; | ||
25 | |||
26 | gpio-keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | autorepeat; | ||
31 | |||
32 | pinctrl-names = "default"; | ||
33 | pinctrl-0 = <&pwrbtn>; | ||
34 | |||
35 | button@0 { | ||
36 | gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; | ||
37 | linux,code = <KEY_POWER>; | ||
38 | label = "GPIO Key Power"; | ||
39 | linux,input-type = <1>; | ||
40 | wakeup-source; | ||
41 | debounce-interval = <100>; | ||
42 | }; | ||
43 | }; | ||
44 | |||
45 | gpio-leds { | ||
46 | compatible = "gpio-leds"; | ||
47 | |||
48 | act-led { | ||
49 | gpios=<&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; | ||
50 | linux,default-trigger="mmc0"; | ||
51 | }; | ||
52 | |||
53 | heartbeat-led { | ||
54 | gpios=<&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>; | ||
55 | linux,default-trigger="heartbeat"; | ||
56 | }; | ||
57 | |||
58 | pwr-led { | ||
59 | gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; | ||
60 | linux,default-trigger = "default-on"; | ||
61 | }; | ||
62 | }; | ||
63 | |||
64 | sound { | ||
65 | compatible = "simple-audio-card"; | ||
66 | simple-audio-card,format = "i2s"; | ||
67 | simple-audio-card,name = "rockchip,tinker-codec"; | ||
68 | simple-audio-card,mclk-fs = <512>; | ||
69 | |||
70 | simple-audio-card,codec { | ||
71 | sound-dai = <&hdmi>; | ||
72 | }; | ||
73 | |||
74 | simple-audio-card,cpu { | ||
75 | sound-dai = <&i2s>; | ||
76 | }; | ||
77 | }; | ||
78 | |||
79 | vcc_sys: vsys-regulator { | ||
80 | compatible = "regulator-fixed"; | ||
81 | regulator-name = "vcc_sys"; | ||
82 | regulator-min-microvolt = <5000000>; | ||
83 | regulator-max-microvolt = <5000000>; | ||
84 | regulator-always-on; | ||
85 | regulator-boot-on; | ||
86 | }; | ||
87 | |||
88 | vcc_sd: sdmmc-regulator { | ||
89 | compatible = "regulator-fixed"; | ||
90 | gpio = <&gpio7 11 GPIO_ACTIVE_LOW>; | ||
91 | pinctrl-names = "default"; | ||
92 | pinctrl-0 = <&sdmmc_pwr>; | ||
93 | regulator-name = "vcc_sd"; | ||
94 | regulator-min-microvolt = <3300000>; | ||
95 | regulator-max-microvolt = <3300000>; | ||
96 | startup-delay-us = <100000>; | ||
97 | vin-supply = <&vcc_io>; | ||
98 | }; | ||
99 | }; | ||
100 | |||
101 | &cpu0 { | ||
102 | cpu0-supply = <&vdd_cpu>; | ||
103 | }; | ||
104 | |||
105 | &gmac { | ||
106 | assigned-clocks = <&cru SCLK_MAC>; | ||
107 | assigned-clock-parents = <&ext_gmac>; | ||
108 | clock_in_out = "input"; | ||
109 | phy-mode = "rgmii"; | ||
110 | phy-supply = <&vcc33_lan>; | ||
111 | pinctrl-names = "default"; | ||
112 | pinctrl-0 = <&rgmii_pins>; | ||
113 | snps,reset-gpio = <&gpio4 7 0>; | ||
114 | snps,reset-active-low; | ||
115 | snps,reset-delays-us = <0 10000 1000000>; | ||
116 | tx_delay = <0x30>; | ||
117 | rx_delay = <0x10>; | ||
118 | status = "ok"; | ||
119 | }; | ||
120 | |||
121 | &gpu { | ||
122 | mali-supply = <&vdd_gpu>; | ||
123 | status = "okay"; | ||
124 | }; | ||
125 | |||
126 | &hdmi { | ||
127 | ddc-i2c-bus = <&i2c5>; | ||
128 | status = "okay"; | ||
129 | }; | ||
130 | |||
131 | &i2c0 { | ||
132 | clock-frequency = <400000>; | ||
133 | status = "okay"; | ||
134 | |||
135 | rk808: pmic@1b { | ||
136 | compatible = "rockchip,rk808"; | ||
137 | reg = <0x1b>; | ||
138 | interrupt-parent = <&gpio0>; | ||
139 | interrupts = <4 IRQ_TYPE_LEVEL_LOW>; | ||
140 | #clock-cells = <1>; | ||
141 | clock-output-names = "xin32k", "rk808-clkout2"; | ||
142 | dvs-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>, | ||
143 | <&gpio0 12 GPIO_ACTIVE_HIGH>; | ||
144 | pinctrl-names = "default"; | ||
145 | pinctrl-0 = <&pmic_int &global_pwroff &dvs_1 &dvs_2>; | ||
146 | rockchip,system-power-controller; | ||
147 | wakeup-source; | ||
148 | |||
149 | vcc1-supply = <&vcc_sys>; | ||
150 | vcc2-supply = <&vcc_sys>; | ||
151 | vcc3-supply = <&vcc_sys>; | ||
152 | vcc4-supply = <&vcc_sys>; | ||
153 | vcc6-supply = <&vcc_sys>; | ||
154 | vcc7-supply = <&vcc_sys>; | ||
155 | vcc8-supply = <&vcc_io>; | ||
156 | vcc9-supply = <&vcc_io>; | ||
157 | vcc10-supply = <&vcc_io>; | ||
158 | vcc11-supply = <&vcc_sys>; | ||
159 | vcc12-supply = <&vcc_io>; | ||
160 | vddio-supply = <&vcc_io>; | ||
161 | |||
162 | regulators { | ||
163 | vdd_cpu: DCDC_REG1 { | ||
164 | regulator-always-on; | ||
165 | regulator-boot-on; | ||
166 | regulator-min-microvolt = <750000>; | ||
167 | regulator-max-microvolt = <1350000>; | ||
168 | regulator-name = "vdd_arm"; | ||
169 | regulator-ramp-delay = <6000>; | ||
170 | regulator-state-mem { | ||
171 | regulator-off-in-suspend; | ||
172 | }; | ||
173 | }; | ||
174 | |||
175 | vdd_gpu: DCDC_REG2 { | ||
176 | regulator-always-on; | ||
177 | regulator-boot-on; | ||
178 | regulator-min-microvolt = <850000>; | ||
179 | regulator-max-microvolt = <1250000>; | ||
180 | regulator-name = "vdd_gpu"; | ||
181 | regulator-ramp-delay = <6000>; | ||
182 | regulator-state-mem { | ||
183 | regulator-on-in-suspend; | ||
184 | regulator-suspend-microvolt = <1000000>; | ||
185 | }; | ||
186 | }; | ||
187 | |||
188 | vcc_ddr: DCDC_REG3 { | ||
189 | regulator-always-on; | ||
190 | regulator-boot-on; | ||
191 | regulator-name = "vcc_ddr"; | ||
192 | regulator-state-mem { | ||
193 | regulator-on-in-suspend; | ||
194 | }; | ||
195 | }; | ||
196 | |||
197 | vcc_io: DCDC_REG4 { | ||
198 | regulator-always-on; | ||
199 | regulator-boot-on; | ||
200 | regulator-min-microvolt = <3300000>; | ||
201 | regulator-max-microvolt = <3300000>; | ||
202 | regulator-name = "vcc_io"; | ||
203 | regulator-state-mem { | ||
204 | regulator-on-in-suspend; | ||
205 | regulator-suspend-microvolt = <3300000>; | ||
206 | }; | ||
207 | }; | ||
208 | |||
209 | vcc18_ldo1: LDO_REG1 { | ||
210 | regulator-always-on; | ||
211 | regulator-boot-on; | ||
212 | regulator-min-microvolt = <1800000>; | ||
213 | regulator-max-microvolt = <1800000>; | ||
214 | regulator-name = "vcc18_ldo1"; | ||
215 | regulator-state-mem { | ||
216 | regulator-on-in-suspend; | ||
217 | regulator-suspend-microvolt = <1800000>; | ||
218 | }; | ||
219 | }; | ||
220 | |||
221 | vcc33_mipi: LDO_REG2 { | ||
222 | regulator-always-on; | ||
223 | regulator-boot-on; | ||
224 | regulator-min-microvolt = <3300000>; | ||
225 | regulator-max-microvolt = <3300000>; | ||
226 | regulator-name = "vcc33_mipi"; | ||
227 | regulator-state-mem { | ||
228 | regulator-off-in-suspend; | ||
229 | }; | ||
230 | }; | ||
231 | |||
232 | vdd_10: LDO_REG3 { | ||
233 | regulator-always-on; | ||
234 | regulator-boot-on; | ||
235 | regulator-min-microvolt = <1000000>; | ||
236 | regulator-max-microvolt = <1000000>; | ||
237 | regulator-name = "vdd_10"; | ||
238 | regulator-state-mem { | ||
239 | regulator-on-in-suspend; | ||
240 | regulator-suspend-microvolt = <1000000>; | ||
241 | }; | ||
242 | }; | ||
243 | |||
244 | vcc18_codec: LDO_REG4 { | ||
245 | regulator-always-on; | ||
246 | regulator-boot-on; | ||
247 | regulator-min-microvolt = <1800000>; | ||
248 | regulator-max-microvolt = <1800000>; | ||
249 | regulator-name = "vcc18_codec"; | ||
250 | regulator-state-mem { | ||
251 | regulator-on-in-suspend; | ||
252 | regulator-suspend-microvolt = <1800000>; | ||
253 | }; | ||
254 | }; | ||
255 | |||
256 | vccio_sd: LDO_REG5 { | ||
257 | regulator-min-microvolt = <1800000>; | ||
258 | regulator-max-microvolt = <3300000>; | ||
259 | regulator-name = "vccio_sd"; | ||
260 | regulator-state-mem { | ||
261 | regulator-on-in-suspend; | ||
262 | regulator-suspend-microvolt = <3300000>; | ||
263 | }; | ||
264 | }; | ||
265 | |||
266 | vdd10_lcd: LDO_REG6 { | ||
267 | regulator-always-on; | ||
268 | regulator-boot-on; | ||
269 | regulator-min-microvolt = <1000000>; | ||
270 | regulator-max-microvolt = <1000000>; | ||
271 | regulator-name = "vdd10_lcd"; | ||
272 | regulator-state-mem { | ||
273 | regulator-on-in-suspend; | ||
274 | regulator-suspend-microvolt = <1000000>; | ||
275 | }; | ||
276 | }; | ||
277 | |||
278 | vcc_18: LDO_REG7 { | ||
279 | regulator-always-on; | ||
280 | regulator-boot-on; | ||
281 | regulator-min-microvolt = <1800000>; | ||
282 | regulator-max-microvolt = <1800000>; | ||
283 | regulator-name = "vcc_18"; | ||
284 | regulator-state-mem { | ||
285 | regulator-on-in-suspend; | ||
286 | regulator-suspend-microvolt = <1800000>; | ||
287 | }; | ||
288 | }; | ||
289 | |||
290 | vcc18_lcd: LDO_REG8 { | ||
291 | regulator-always-on; | ||
292 | regulator-boot-on; | ||
293 | regulator-min-microvolt = <1800000>; | ||
294 | regulator-max-microvolt = <1800000>; | ||
295 | regulator-name = "vcc18_lcd"; | ||
296 | regulator-state-mem { | ||
297 | regulator-on-in-suspend; | ||
298 | regulator-suspend-microvolt = <1800000>; | ||
299 | }; | ||
300 | }; | ||
301 | |||
302 | vcc33_sd: SWITCH_REG1 { | ||
303 | regulator-always-on; | ||
304 | regulator-boot-on; | ||
305 | regulator-name = "vcc33_sd"; | ||
306 | regulator-state-mem { | ||
307 | regulator-on-in-suspend; | ||
308 | }; | ||
309 | }; | ||
310 | |||
311 | vcc33_lan: SWITCH_REG2 { | ||
312 | regulator-always-on; | ||
313 | regulator-boot-on; | ||
314 | regulator-name = "vcc33_lan"; | ||
315 | regulator-state-mem { | ||
316 | regulator-on-in-suspend; | ||
317 | }; | ||
318 | }; | ||
319 | }; | ||
320 | }; | ||
321 | }; | ||
322 | |||
323 | &i2c2 { | ||
324 | status = "okay"; | ||
325 | }; | ||
326 | |||
327 | &i2c5 { | ||
328 | status = "okay"; | ||
329 | }; | ||
330 | |||
331 | &i2s { | ||
332 | #sound-dai-cells = <0>; | ||
333 | status = "okay"; | ||
334 | }; | ||
335 | |||
336 | &io_domains { | ||
337 | status = "okay"; | ||
338 | |||
339 | sdcard-supply = <&vccio_sd>; | ||
340 | }; | ||
341 | |||
342 | &pinctrl { | ||
343 | pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma { | ||
344 | drive-strength = <8>; | ||
345 | }; | ||
346 | |||
347 | pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma { | ||
348 | bias-pull-up; | ||
349 | drive-strength = <8>; | ||
350 | }; | ||
351 | |||
352 | backlight { | ||
353 | bl_en: bl-en { | ||
354 | rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_pull_none>; | ||
355 | }; | ||
356 | }; | ||
357 | |||
358 | buttons { | ||
359 | pwrbtn: pwrbtn { | ||
360 | rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; | ||
361 | }; | ||
362 | }; | ||
363 | |||
364 | eth_phy { | ||
365 | eth_phy_pwr: eth-phy-pwr { | ||
366 | rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_none>; | ||
367 | }; | ||
368 | }; | ||
369 | |||
370 | pmic { | ||
371 | pmic_int: pmic-int { | ||
372 | rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO \ | ||
373 | &pcfg_pull_up>; | ||
374 | }; | ||
375 | |||
376 | dvs_1: dvs-1 { | ||
377 | rockchip,pins = <RK_GPIO0 11 RK_FUNC_GPIO \ | ||
378 | &pcfg_pull_down>; | ||
379 | }; | ||
380 | |||
381 | dvs_2: dvs-2 { | ||
382 | rockchip,pins = <RK_GPIO0 12 RK_FUNC_GPIO \ | ||
383 | &pcfg_pull_down>; | ||
384 | }; | ||
385 | }; | ||
386 | |||
387 | sdmmc { | ||
388 | sdmmc_bus4: sdmmc-bus4 { | ||
389 | rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
390 | <6 17 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
391 | <6 18 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
392 | <6 19 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
393 | }; | ||
394 | |||
395 | sdmmc_clk: sdmmc-clk { | ||
396 | rockchip,pins = <6 20 RK_FUNC_1 \ | ||
397 | &pcfg_pull_none_drv_8ma>; | ||
398 | }; | ||
399 | |||
400 | sdmmc_cmd: sdmmc-cmd { | ||
401 | rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
402 | }; | ||
403 | |||
404 | sdmmc_pwr: sdmmc-pwr { | ||
405 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; | ||
406 | }; | ||
407 | }; | ||
408 | |||
409 | usb { | ||
410 | host_vbus_drv: host-vbus-drv { | ||
411 | rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; | ||
412 | }; | ||
413 | |||
414 | pwr_3g: pwr-3g { | ||
415 | rockchip,pins = <7 8 RK_FUNC_GPIO &pcfg_pull_none>; | ||
416 | }; | ||
417 | }; | ||
418 | }; | ||
419 | |||
420 | &pwm0 { | ||
421 | status = "okay"; | ||
422 | }; | ||
423 | |||
424 | &saradc { | ||
425 | vref-supply = <&vcc18_ldo1>; | ||
426 | status ="okay"; | ||
427 | }; | ||
428 | |||
429 | &sdmmc { | ||
430 | bus-width = <4>; | ||
431 | cap-mmc-highspeed; | ||
432 | cap-sd-highspeed; | ||
433 | card-detect-delay = <200>; | ||
434 | disable-wp; /* wp not hooked up */ | ||
435 | pinctrl-names = "default"; | ||
436 | pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; | ||
437 | status = "okay"; | ||
438 | vmmc-supply = <&vcc33_sd>; | ||
439 | vqmmc-supply = <&vccio_sd>; | ||
440 | }; | ||
441 | |||
442 | &tsadc { | ||
443 | rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */ | ||
444 | rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */ | ||
445 | status = "okay"; | ||
446 | }; | ||
447 | |||
448 | &uart0 { | ||
449 | status = "okay"; | ||
450 | }; | ||
451 | |||
452 | &uart1 { | ||
453 | status = "okay"; | ||
454 | }; | ||
455 | |||
456 | &uart2 { | ||
457 | status = "okay"; | ||
458 | }; | ||
459 | |||
460 | &uart3 { | ||
461 | status = "okay"; | ||
462 | }; | ||
463 | |||
464 | &uart4 { | ||
465 | status = "okay"; | ||
466 | }; | ||
467 | |||
468 | &usbphy { | ||
469 | status = "okay"; | ||
470 | }; | ||
471 | |||
472 | &usb_host0_ehci { | ||
473 | status = "okay"; | ||
474 | }; | ||
475 | |||
476 | &usb_host1 { | ||
477 | status = "okay"; | ||
478 | }; | ||
479 | |||
480 | &usb_otg { | ||
481 | status= "okay"; | ||
482 | }; | ||
483 | |||
484 | &vopb { | ||
485 | status = "okay"; | ||
486 | }; | ||
487 | |||
488 | &vopb_mmu { | ||
489 | status = "okay"; | ||
490 | }; | ||
491 | |||
492 | &vopl { | ||
493 | status = "okay"; | ||
494 | }; | ||
495 | |||
496 | &vopl_mmu { | ||
497 | status = "okay"; | ||
498 | }; | ||
499 | |||
500 | &wdt { | ||
501 | status = "okay"; | ||
502 | }; | ||