]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - src/arm64/amlogic/meson-gxl-s805x-p241.dts
Import DTS from Linux 5.8
[FreeBSD/FreeBSD.git] / src / arm64 / amlogic / meson-gxl-s805x-p241.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2018 BayLibre, SAS.
4  * Author: Neil Armstrong <narmstrong@baylibre.com>
5  * Author: Jerome Brunet <jbrunet@baylibre.com>
6  */
7
8 /dts-v1/;
9
10 #include <dt-bindings/input/input.h>
11
12 #include "meson-gxl-s805x.dtsi"
13
14 / {
15         compatible = "amlogic,p241", "amlogic,s805x", "amlogic,meson-gxl";
16         model = "Amlogic Meson GXL (S805X) P241 Development Board";
17
18         aliases {
19                 serial0 = &uart_AO;
20                 serial1 = &uart_A;
21                 ethernet0 = &ethmac;
22         };
23
24         chosen {
25                 stdout-path = "serial0:115200n8";
26         };
27
28         cvbs-connector {
29                 compatible = "composite-video-connector";
30
31                 port {
32                         cvbs_connector_in: endpoint {
33                                 remote-endpoint = <&cvbs_vdac_out>;
34                         };
35                 };
36         };
37
38         emmc_pwrseq: emmc-pwrseq {
39                 compatible = "mmc-pwrseq-emmc";
40                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
41         };
42
43         hdmi-connector {
44                 compatible = "hdmi-connector";
45                 type = "a";
46
47                 port {
48                         hdmi_connector_in: endpoint {
49                                 remote-endpoint = <&hdmi_tx_tmds_out>;
50                         };
51                 };
52         };
53
54         memory@0 {
55                 device_type = "memory";
56                 reg = <0x0 0x0 0x0 0x20000000>;
57         };
58
59         vddio_boot: regulator-vddio_boot {
60                 compatible = "regulator-fixed";
61                 regulator-name = "VDDIO_BOOT";
62                 regulator-min-microvolt = <1800000>;
63                 regulator-max-microvolt = <1800000>;
64         };
65
66         vddao_3v3: regulator-vddao_3v3 {
67                 compatible = "regulator-fixed";
68                 regulator-name = "VDDAO_3V3";
69                 regulator-min-microvolt = <3300000>;
70                 regulator-max-microvolt = <3300000>;
71         };
72
73         vddio_ao18: regulator-vddio_ao18 {
74                 compatible = "regulator-fixed";
75                 regulator-name = "VDDIO_AO18";
76                 regulator-min-microvolt = <1800000>;
77                 regulator-max-microvolt = <1800000>;
78         };
79
80         vcc_3v3: regulator-vcc_3v3 {
81                 compatible = "regulator-fixed";
82                 regulator-name = "VCC_3V3";
83                 regulator-min-microvolt = <3300000>;
84                 regulator-max-microvolt = <3300000>;
85         };
86
87         emmc_pwrseq: emmc-pwrseq {
88                 compatible = "mmc-pwrseq-emmc";
89                 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
90         };
91
92         wifi32k: wifi32k {
93                 compatible = "pwm-clock";
94                 #clock-cells = <0>;
95                 clock-frequency = <32768>;
96                 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
97         };
98
99         sdio_pwrseq: sdio-pwrseq {
100                 compatible = "mmc-pwrseq-simple";
101                 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
102                 clocks = <&wifi32k>;
103                 clock-names = "ext_clock";
104         };
105 };
106
107 &cec_AO {
108         status = "okay";
109         pinctrl-0 = <&ao_cec_pins>;
110         pinctrl-names = "default";
111         hdmi-phandle = <&hdmi_tx>;
112 };
113
114 &cvbs_vdac_port {
115         cvbs_vdac_out: endpoint {
116                 remote-endpoint = <&cvbs_connector_in>;
117         };
118 };
119
120 &ethmac {
121         status = "okay";
122 };
123
124 &internal_phy {
125         pinctrl-0 = <&eth_link_led_pins>, <&eth_act_led_pins>;
126         pinctrl-names = "default";
127 };
128
129 &ir {
130         status = "okay";
131         pinctrl-0 = <&remote_input_ao_pins>;
132         pinctrl-names = "default";
133 };
134
135 &hdmi_tx {
136         status = "okay";
137         pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
138         pinctrl-names = "default";
139 };
140
141 &hdmi_tx_tmds_port {
142         hdmi_tx_tmds_out: endpoint {
143                 remote-endpoint = <&hdmi_connector_in>;
144         };
145 };
146
147 &saradc {
148         status = "okay";
149         vref-supply = <&vddio_ao18>;
150 };
151
152 /* Wireless SDIO Module */
153 &sd_emmc_a {
154         status = "okay";
155         pinctrl-0 = <&sdio_pins>;
156         pinctrl-1 = <&sdio_clk_gate_pins>;
157         pinctrl-names = "default", "clk-gate";
158         #address-cells = <1>;
159         #size-cells = <0>;
160
161         bus-width = <4>;
162         cap-sd-highspeed;
163         max-frequency = <50000000>;
164
165         non-removable;
166         disable-wp;
167
168         /* WiFi firmware requires power to be kept while in suspend */
169         keep-power-in-suspend;
170
171         mmc-pwrseq = <&sdio_pwrseq>;
172
173         vmmc-supply = <&vddao_3v3>;
174         vqmmc-supply = <&vddio_boot>;
175 };
176
177 /* eMMC */
178 &sd_emmc_c {
179         status = "okay";
180         pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
181         pinctrl-1 = <&emmc_clk_gate_pins>;
182         pinctrl-names = "default", "clk-gate";
183
184         bus-width = <8>;
185         cap-mmc-highspeed;
186         max-frequency = <200000000>;
187         non-removable;
188         disable-wp;
189         mmc-ddr-1_8v;
190         mmc-hs200-1_8v;
191
192         mmc-pwrseq = <&emmc_pwrseq>;
193         vmmc-supply = <&vcc_3v3>;
194         vqmmc-supply = <&vddio_boot>;
195 };
196
197 &pwm_ef {
198         status = "okay";
199         pinctrl-0 = <&pwm_e_pins>;
200         pinctrl-names = "default";
201         clocks = <&clkc CLKID_FCLK_DIV4>;
202         clock-names = "clkin0";
203 };
204
205 /* This is connected to the Bluetooth module: */
206 &uart_A {
207         status = "okay";
208         pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
209         pinctrl-names = "default";
210         uart-has-rtscts;
211 };
212
213 &uart_AO {
214         status = "okay";
215         pinctrl-0 = <&uart_ao_a_pins>;
216         pinctrl-names = "default";
217 };
218
219 &usb {
220         status = "okay";
221         dr_mode = "host";
222 };