aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Armstrong <narmstrong@baylibre.com>2018-03-06 11:19:33 -0500
committerKevin Hilman <khilman@baylibre.com>2018-03-07 20:25:56 -0500
commitfb72c03e0e32068a0a2ff66c2787814142d9a211 (patch)
tree346699c981cb34972b74880eaa29212e53c83765
parentc04ffa71ff491220cac28f55237c9aad379a8656 (diff)
ARM64: dts: meson-gxbb-wetek: add a wetek specific dtsi to cleanup hub and play2
This patch adds a specific wetek dtsi to handle the specific Hub and Play2 boards by no more depending on the p20x dtsi. This simplifies the hub and play2 dts and will avoid breaking these boards when adding p200 and p201 specific changes. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts43
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts83
-rw-r--r--arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi256
3 files changed, 262 insertions, 120 deletions
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts
index ce80d5d0982c..2bfe69902552 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-hub.dts
@@ -6,50 +6,9 @@
6 6
7/dts-v1/; 7/dts-v1/;
8 8
9#include "meson-gxbb-p20x.dtsi" 9#include "meson-gxbb-wetek.dtsi"
10 10
11/ { 11/ {
12 compatible = "wetek,hub", "amlogic,meson-gxbb"; 12 compatible = "wetek,hub", "amlogic,meson-gxbb";
13 model = "WeTek Hub"; 13 model = "WeTek Hub";
14
15 leds {
16 compatible = "gpio-leds";
17
18 system {
19 label = "wetek-play:system-status";
20 gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>;
21 default-state = "on";
22 panic-indicator;
23 };
24 };
25};
26
27&cvbs_connector {
28 status = "disabled";
29};
30
31&ethmac {
32 status = "okay";
33 pinctrl-0 = <&eth_rgmii_pins>;
34 pinctrl-names = "default";
35
36 phy-handle = <&eth_phy0>;
37 phy-mode = "rgmii";
38
39 amlogic,tx-delay-ns = <2>;
40
41 snps,reset-gpio = <&gpio GPIOZ_14 0>;
42 snps,reset-delays-us = <0 10000 1000000>;
43 snps,reset-active-low;
44
45 mdio {
46 compatible = "snps,dwmac-mdio";
47 #address-cells = <1>;
48 #size-cells = <0>;
49
50 eth_phy0: ethernet-phy@0 {
51 /* Realtek RTL8211F (0x001cc916) */
52 reg = <0>;
53 };
54 };
55}; 14};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts
index 0d1f080cbb3e..0038522315de 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek-play2.dts
@@ -6,7 +6,7 @@
6 6
7/dts-v1/; 7/dts-v1/;
8 8
9#include "meson-gxbb-p20x.dtsi" 9#include "meson-gxbb-wetek.dtsi"
10#include <dt-bindings/input/input.h> 10#include <dt-bindings/input/input.h>
11 11
12/ { 12/ {
@@ -14,15 +14,6 @@
14 model = "WeTek Play 2"; 14 model = "WeTek Play 2";
15 15
16 leds { 16 leds {
17 compatible = "gpio-leds";
18
19 system {
20 label = "wetek-play:system-status";
21 gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>;
22 default-state = "on";
23 panic-indicator;
24 };
25
26 wifi { 17 wifi {
27 label = "wetek-play:wifi-status"; 18 label = "wetek-play:wifi-status";
28 gpios = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>; 19 gpios = <&gpio GPIODV_26 GPIO_ACTIVE_HIGH>;
@@ -48,82 +39,18 @@
48 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>; 39 gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;
49 }; 40 };
50 }; 41 };
51
52 cvbs-connector {
53 compatible = "composite-video-connector";
54
55 port {
56 cvbs_connector_in: endpoint {
57 remote-endpoint = <&cvbs_vdac_out>;
58 };
59 };
60 };
61
62 hdmi-connector {
63 compatible = "hdmi-connector";
64 type = "a";
65
66 port {
67 hdmi_connector_in: endpoint {
68 remote-endpoint = <&hdmi_tx_tmds_out>;
69 };
70 };
71 };
72};
73
74&cec_AO {
75 status = "okay";
76 pinctrl-0 = <&ao_cec_pins>;
77 pinctrl-names = "default";
78 hdmi-phandle = <&hdmi_tx>;
79};
80
81&cvbs_vdac_port {
82 cvbs_vdac_out: endpoint {
83 remote-endpoint = <&cvbs_connector_in>;
84 };
85}; 42};
86 43
87&ethmac { 44&i2c_A {
88 status = "okay"; 45 status = "okay";
89 pinctrl-0 = <&eth_rgmii_pins>; 46 pinctrl-0 = <&i2c_a_pins>;
90 pinctrl-names = "default"; 47 pinctrl-names = "default";
91
92 phy-handle = <&eth_phy0>;
93 phy-mode = "rgmii";
94
95 amlogic,tx-delay-ns = <2>;
96
97 snps,reset-gpio = <&gpio GPIOZ_14 0>;
98 snps,reset-delays-us = <0 10000 1000000>;
99 snps,reset-active-low;
100
101 mdio {
102 compatible = "snps,dwmac-mdio";
103 #address-cells = <1>;
104 #size-cells = <0>;
105
106 eth_phy0: ethernet-phy@0 {
107 /* Realtek RTL8211F (0x001cc916) */
108 reg = <0>;
109 };
110 };
111}; 48};
112 49
113&hdmi_tx { 50&usb1_phy {
114 status = "okay"; 51 status = "okay";
115 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
116 pinctrl-names = "default";
117}; 52};
118 53
119&hdmi_tx_tmds_port { 54&usb1 {
120 hdmi_tx_tmds_out: endpoint {
121 remote-endpoint = <&hdmi_connector_in>;
122 };
123};
124
125&i2c_A {
126 status = "okay"; 55 status = "okay";
127 pinctrl-0 = <&i2c_a_pins>;
128 pinctrl-names = "default";
129}; 56};
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
new file mode 100644
index 000000000000..70325b273bd2
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
@@ -0,0 +1,256 @@
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2016 Andreas Färber
4 * Copyright (c) 2016 BayLibre, Inc.
5 * Author: Kevin Hilman <khilman@kernel.org>
6 */
7
8#include "meson-gxbb.dtsi"
9
10/ {
11 aliases {
12 serial0 = &uart_AO;
13 ethernet0 = &ethmac;
14 };
15
16 chosen {
17 stdout-path = "serial0:115200n8";
18 };
19
20 memory@0 {
21 device_type = "memory";
22 reg = <0x0 0x0 0x0 0x40000000>;
23 };
24
25 leds {
26 compatible = "gpio-leds";
27
28 system {
29 label = "wetek-play:system-status";
30 gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>;
31 default-state = "on";
32 panic-indicator;
33 };
34 };
35
36 usb_pwr: regulator-usb-pwrs {
37 compatible = "regulator-fixed";
38
39 regulator-name = "USB_PWR";
40
41 regulator-min-microvolt = <5000000>;
42 regulator-max-microvolt = <5000000>;
43
44 gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
45 enable-active-high;
46 };
47
48 vddio_boot: regulator-vddio_boot {
49 compatible = "regulator-fixed";
50 regulator-name = "VDDIO_BOOT";
51 regulator-min-microvolt = <1800000>;
52 regulator-max-microvolt = <1800000>;
53 };
54
55 vddao_3v3: regulator-vddao_3v3 {
56 compatible = "regulator-fixed";
57 regulator-name = "VDDAO_3V3";
58 regulator-min-microvolt = <3300000>;
59 regulator-max-microvolt = <3300000>;
60 };
61
62 vcc_3v3: regulator-vcc_3v3 {
63 compatible = "regulator-fixed";
64 regulator-name = "VCC_3V3";
65 regulator-min-microvolt = <3300000>;
66 regulator-max-microvolt = <3300000>;
67 };
68
69 emmc_pwrseq: emmc-pwrseq {
70 compatible = "mmc-pwrseq-emmc";
71 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
72 };
73
74 wifi32k: wifi32k {
75 compatible = "pwm-clock";
76 #clock-cells = <0>;
77 clock-frequency = <32768>;
78 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
79 };
80
81 sdio_pwrseq: sdio-pwrseq {
82 compatible = "mmc-pwrseq-simple";
83 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
84 clocks = <&wifi32k>;
85 clock-names = "ext_clock";
86 };
87
88 cvbs-connector {
89 compatible = "composite-video-connector";
90
91 port {
92 cvbs_connector_in: endpoint {
93 remote-endpoint = <&cvbs_vdac_out>;
94 };
95 };
96 };
97
98 hdmi-connector {
99 compatible = "hdmi-connector";
100 type = "a";
101
102 port {
103 hdmi_connector_in: endpoint {
104 remote-endpoint = <&hdmi_tx_tmds_out>;
105 };
106 };
107 };
108};
109
110&cec_AO {
111 status = "okay";
112 pinctrl-0 = <&ao_cec_pins>;
113 pinctrl-names = "default";
114 hdmi-phandle = <&hdmi_tx>;
115};
116
117&cvbs_vdac_port {
118 cvbs_vdac_out: endpoint {
119 remote-endpoint = <&cvbs_connector_in>;
120 };
121};
122
123&ethmac {
124 status = "okay";
125 pinctrl-0 = <&eth_rgmii_pins>;
126 pinctrl-names = "default";
127
128 phy-handle = <&eth_phy0>;
129 phy-mode = "rgmii";
130
131 amlogic,tx-delay-ns = <2>;
132
133 snps,reset-gpio = <&gpio GPIOZ_14 0>;
134 snps,reset-delays-us = <0 10000 1000000>;
135 snps,reset-active-low;
136
137 mdio {
138 compatible = "snps,dwmac-mdio";
139 #address-cells = <1>;
140 #size-cells = <0>;
141
142 eth_phy0: ethernet-phy@0 {
143 /* Realtek RTL8211F (0x001cc916) */
144 reg = <0>;
145 eee-broken-1000t;
146 };
147 };
148};
149
150&hdmi_tx {
151 status = "okay";
152 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
153 pinctrl-names = "default";
154};
155
156&hdmi_tx_tmds_port {
157 hdmi_tx_tmds_out: endpoint {
158 remote-endpoint = <&hdmi_connector_in>;
159 };
160};
161
162&ir {
163 status = "okay";
164 pinctrl-0 = <&remote_input_ao_pins>;
165 pinctrl-names = "default";
166};
167
168&pwm_ef {
169 status = "okay";
170 pinctrl-0 = <&pwm_e_pins>;
171 pinctrl-names = "default";
172 clocks = <&clkc CLKID_FCLK_DIV4>;
173 clock-names = "clkin0";
174};
175
176/* Wireless SDIO Module */
177&sd_emmc_a {
178 status = "okay";
179 pinctrl-0 = <&sdio_pins>;
180 pinctrl-1 = <&sdio_clk_gate_pins>;
181 pinctrl-names = "default", "clk-gate";
182 #address-cells = <1>;
183 #size-cells = <0>;
184
185 bus-width = <4>;
186 cap-sd-highspeed;
187 max-frequency = <100000000>;
188
189 non-removable;
190 disable-wp;
191
192 mmc-pwrseq = <&sdio_pwrseq>;
193
194 vmmc-supply = <&vddao_3v3>;
195 vqmmc-supply = <&vddio_boot>;
196
197 brcmf: wifi@1 {
198 reg = <1>;
199 compatible = "brcm,bcm4329-fmac";
200 };
201};
202
203/* SD card */
204&sd_emmc_b {
205 status = "okay";
206 pinctrl-0 = <&sdcard_pins>;
207 pinctrl-1 = <&sdcard_clk_gate_pins>;
208 pinctrl-names = "default", "clk-gate";
209
210 bus-width = <4>;
211 cap-sd-highspeed;
212 max-frequency = <100000000>;
213 disable-wp;
214
215 cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
216 cd-inverted;
217
218 vmmc-supply = <&vddao_3v3>;
219 vqmmc-supply = <&vcc_3v3>;
220};
221
222/* eMMC */
223&sd_emmc_c {
224 status = "okay";
225 pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
226 pinctrl-1 = <&emmc_clk_gate_pins>;
227 pinctrl-names = "default", "clk-gate";
228
229 bus-width = <8>;
230 cap-mmc-highspeed;
231 max-frequency = <200000000>;
232 non-removable;
233 disable-wp;
234 mmc-ddr-1_8v;
235 mmc-hs200-1_8v;
236
237 mmc-pwrseq = <&emmc_pwrseq>;
238 vmmc-supply = <&vcc_3v3>;
239 vqmmc-supply = <&vddio_boot>;
240};
241
242/* This UART is brought out to the DB9 connector */
243&uart_AO {
244 status = "okay";
245 pinctrl-0 = <&uart_ao_a_pins>;
246 pinctrl-names = "default";
247};
248
249&usb0_phy {
250 status = "okay";
251 phy-supply = <&usb_pwr>;
252};
253
254&usb0 {
255 status = "okay";
256};