1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (c) 2016 Andreas Färber
4 * Copyright (c) 2016 BayLibre, Inc.
5 * Author: Kevin Hilman <khilman@kernel.org>
8 #include "meson-gxbb.dtsi"
17 stdout-path = "serial0:115200n8";
21 device_type = "memory";
22 reg = <0x0 0x0 0x0 0x40000000>;
25 usb_pwr: regulator-usb-pwrs {
26 compatible = "regulator-fixed";
28 regulator-name = "USB_PWR";
30 regulator-min-microvolt = <5000000>;
31 regulator-max-microvolt = <5000000>;
33 /* signal name in schematic: USB_PWR_EN */
34 gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
38 vddio_card: gpio-regulator {
39 compatible = "regulator-gpio";
41 regulator-name = "VDDIO_CARD";
42 regulator-min-microvolt = <1800000>;
43 regulator-max-microvolt = <3300000>;
45 gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
48 /* Based on P200 schematics, signal CARD_1.8V/3.3V_CTR */
52 regulator-settling-time-up-us = <10000>;
53 regulator-settling-time-down-us = <150000>;
56 vddio_boot: regulator-vddio_boot {
57 compatible = "regulator-fixed";
58 regulator-name = "VDDIO_BOOT";
59 regulator-min-microvolt = <1800000>;
60 regulator-max-microvolt = <1800000>;
63 vddao_3v3: regulator-vddao_3v3 {
64 compatible = "regulator-fixed";
65 regulator-name = "VDDAO_3V3";
66 regulator-min-microvolt = <3300000>;
67 regulator-max-microvolt = <3300000>;
70 vcc_3v3: regulator-vcc_3v3 {
71 compatible = "regulator-fixed";
72 regulator-name = "VCC_3V3";
73 regulator-min-microvolt = <3300000>;
74 regulator-max-microvolt = <3300000>;
77 emmc_pwrseq: emmc-pwrseq {
78 compatible = "mmc-pwrseq-emmc";
79 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
83 compatible = "pwm-clock";
85 clock-frequency = <32768>;
86 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
89 sdio_pwrseq: sdio-pwrseq {
90 compatible = "mmc-pwrseq-simple";
91 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
93 clock-names = "ext_clock";
96 cvbs_connector: cvbs-connector {
97 compatible = "composite-video-connector";
100 cvbs_connector_in: endpoint {
101 remote-endpoint = <&cvbs_vdac_out>;
107 compatible = "hdmi-connector";
111 hdmi_connector_in: endpoint {
112 remote-endpoint = <&hdmi_tx_tmds_out>;
120 pinctrl-0 = <&ao_cec_pins>;
121 pinctrl-names = "default";
122 hdmi-phandle = <&hdmi_tx>;
126 cvbs_vdac_out: endpoint {
127 remote-endpoint = <&cvbs_connector_in>;
133 pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
134 pinctrl-names = "default";
138 hdmi_tx_tmds_out: endpoint {
139 remote-endpoint = <&hdmi_connector_in>;
145 pinctrl-0 = <&remote_input_ao_pins>;
146 pinctrl-names = "default";
151 pinctrl-0 = <&pwm_e_pins>;
152 pinctrl-names = "default";
153 clocks = <&clkc CLKID_FCLK_DIV4>;
154 clock-names = "clkin0";
157 /* Wireless SDIO Module */
160 pinctrl-0 = <&sdio_pins>;
161 pinctrl-1 = <&sdio_clk_gate_pins>;
162 pinctrl-names = "default", "clk-gate";
163 #address-cells = <1>;
168 max-frequency = <50000000>;
173 /* WiFi firmware requires power to be kept while in suspend */
174 keep-power-in-suspend;
176 mmc-pwrseq = <&sdio_pwrseq>;
178 vmmc-supply = <&vddao_3v3>;
179 vqmmc-supply = <&vddio_boot>;
183 compatible = "brcm,bcm4329-fmac";
190 pinctrl-0 = <&sdcard_pins>;
191 pinctrl-1 = <&sdcard_clk_gate_pins>;
192 pinctrl-names = "default", "clk-gate";
199 max-frequency = <100000000>;
202 cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
204 vmmc-supply = <&vddao_3v3>;
205 vqmmc-supply = <&vddio_card>;
211 pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
212 pinctrl-1 = <&emmc_clk_gate_pins>;
213 pinctrl-names = "default", "clk-gate";
217 max-frequency = <200000000>;
223 mmc-pwrseq = <&emmc_pwrseq>;
224 vmmc-supply = <&vcc_3v3>;
225 vqmmc-supply = <&vddio_boot>;
228 /* This UART is brought out to the DB9 connector */
231 pinctrl-0 = <&uart_ao_a_pins>;
232 pinctrl-names = "default";
237 phy-supply = <&usb_pwr>;