1fb72c03eSNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2fb72c03eSNeil Armstrong/* 3fb72c03eSNeil Armstrong * Copyright (c) 2016 Andreas Färber 4fb72c03eSNeil Armstrong * Copyright (c) 2016 BayLibre, Inc. 5fb72c03eSNeil Armstrong * Author: Kevin Hilman <khilman@kernel.org> 6fb72c03eSNeil Armstrong */ 7fb72c03eSNeil Armstrong 8fb72c03eSNeil Armstrong#include "meson-gxbb.dtsi" 9fb72c03eSNeil Armstrong 10fb72c03eSNeil Armstrong/ { 11fb72c03eSNeil Armstrong aliases { 12fb72c03eSNeil Armstrong serial0 = &uart_AO; 13fb72c03eSNeil Armstrong ethernet0 = ðmac; 14fb72c03eSNeil Armstrong }; 15fb72c03eSNeil Armstrong 16fb72c03eSNeil Armstrong chosen { 17fb72c03eSNeil Armstrong stdout-path = "serial0:115200n8"; 18fb72c03eSNeil Armstrong }; 19fb72c03eSNeil Armstrong 20fb72c03eSNeil Armstrong memory@0 { 21fb72c03eSNeil Armstrong device_type = "memory"; 22fb72c03eSNeil Armstrong reg = <0x0 0x0 0x0 0x40000000>; 23fb72c03eSNeil Armstrong }; 24fb72c03eSNeil Armstrong 25fb72c03eSNeil Armstrong leds { 26fb72c03eSNeil Armstrong compatible = "gpio-leds"; 27fb72c03eSNeil Armstrong 28fb72c03eSNeil Armstrong system { 29fb72c03eSNeil Armstrong label = "wetek-play:system-status"; 30fb72c03eSNeil Armstrong gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; 31fb72c03eSNeil Armstrong default-state = "on"; 32fb72c03eSNeil Armstrong panic-indicator; 33fb72c03eSNeil Armstrong }; 34fb72c03eSNeil Armstrong }; 35fb72c03eSNeil Armstrong 36fb72c03eSNeil Armstrong usb_pwr: regulator-usb-pwrs { 37fb72c03eSNeil Armstrong compatible = "regulator-fixed"; 38fb72c03eSNeil Armstrong 39fb72c03eSNeil Armstrong regulator-name = "USB_PWR"; 40fb72c03eSNeil Armstrong 41fb72c03eSNeil Armstrong regulator-min-microvolt = <5000000>; 42fb72c03eSNeil Armstrong regulator-max-microvolt = <5000000>; 43fb72c03eSNeil Armstrong 44fb72c03eSNeil Armstrong gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; 45fb72c03eSNeil Armstrong enable-active-high; 46fb72c03eSNeil Armstrong }; 47fb72c03eSNeil Armstrong 48fb72c03eSNeil Armstrong vddio_boot: regulator-vddio_boot { 49fb72c03eSNeil Armstrong compatible = "regulator-fixed"; 50fb72c03eSNeil Armstrong regulator-name = "VDDIO_BOOT"; 51fb72c03eSNeil Armstrong regulator-min-microvolt = <1800000>; 52fb72c03eSNeil Armstrong regulator-max-microvolt = <1800000>; 53fb72c03eSNeil Armstrong }; 54fb72c03eSNeil Armstrong 55fb72c03eSNeil Armstrong vddao_3v3: regulator-vddao_3v3 { 56fb72c03eSNeil Armstrong compatible = "regulator-fixed"; 57fb72c03eSNeil Armstrong regulator-name = "VDDAO_3V3"; 58fb72c03eSNeil Armstrong regulator-min-microvolt = <3300000>; 59fb72c03eSNeil Armstrong regulator-max-microvolt = <3300000>; 60fb72c03eSNeil Armstrong }; 61fb72c03eSNeil Armstrong 62dfa8b3cdSChristian Hewitt vddio_ao18: regulator-vddio_ao18 { 63dfa8b3cdSChristian Hewitt compatible = "regulator-fixed"; 64dfa8b3cdSChristian Hewitt regulator-name = "VDDIO_AO18"; 65dfa8b3cdSChristian Hewitt regulator-min-microvolt = <1800000>; 66dfa8b3cdSChristian Hewitt regulator-max-microvolt = <1800000>; 67dfa8b3cdSChristian Hewitt }; 68dfa8b3cdSChristian Hewitt 69fb72c03eSNeil Armstrong vcc_3v3: regulator-vcc_3v3 { 70fb72c03eSNeil Armstrong compatible = "regulator-fixed"; 71fb72c03eSNeil Armstrong regulator-name = "VCC_3V3"; 72fb72c03eSNeil Armstrong regulator-min-microvolt = <3300000>; 73fb72c03eSNeil Armstrong regulator-max-microvolt = <3300000>; 74fb72c03eSNeil Armstrong }; 75fb72c03eSNeil Armstrong 76fb72c03eSNeil Armstrong emmc_pwrseq: emmc-pwrseq { 77fb72c03eSNeil Armstrong compatible = "mmc-pwrseq-emmc"; 78fb72c03eSNeil Armstrong reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>; 79fb72c03eSNeil Armstrong }; 80fb72c03eSNeil Armstrong 81fb72c03eSNeil Armstrong wifi32k: wifi32k { 82fb72c03eSNeil Armstrong compatible = "pwm-clock"; 83fb72c03eSNeil Armstrong #clock-cells = <0>; 84fb72c03eSNeil Armstrong clock-frequency = <32768>; 85fb72c03eSNeil Armstrong pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ 86fb72c03eSNeil Armstrong }; 87fb72c03eSNeil Armstrong 88fb72c03eSNeil Armstrong sdio_pwrseq: sdio-pwrseq { 89fb72c03eSNeil Armstrong compatible = "mmc-pwrseq-simple"; 90fb72c03eSNeil Armstrong reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>; 91fb72c03eSNeil Armstrong clocks = <&wifi32k>; 92fb72c03eSNeil Armstrong clock-names = "ext_clock"; 93fb72c03eSNeil Armstrong }; 94fb72c03eSNeil Armstrong 95fb72c03eSNeil Armstrong cvbs-connector { 96fb72c03eSNeil Armstrong compatible = "composite-video-connector"; 97fb72c03eSNeil Armstrong 98fb72c03eSNeil Armstrong port { 99fb72c03eSNeil Armstrong cvbs_connector_in: endpoint { 100fb72c03eSNeil Armstrong remote-endpoint = <&cvbs_vdac_out>; 101fb72c03eSNeil Armstrong }; 102fb72c03eSNeil Armstrong }; 103fb72c03eSNeil Armstrong }; 104fb72c03eSNeil Armstrong 105fb72c03eSNeil Armstrong hdmi-connector { 106fb72c03eSNeil Armstrong compatible = "hdmi-connector"; 107fb72c03eSNeil Armstrong type = "a"; 108fb72c03eSNeil Armstrong 109fb72c03eSNeil Armstrong port { 110fb72c03eSNeil Armstrong hdmi_connector_in: endpoint { 111fb72c03eSNeil Armstrong remote-endpoint = <&hdmi_tx_tmds_out>; 112fb72c03eSNeil Armstrong }; 113fb72c03eSNeil Armstrong }; 114fb72c03eSNeil Armstrong }; 115fb72c03eSNeil Armstrong}; 116fb72c03eSNeil Armstrong 117fb72c03eSNeil Armstrong&cec_AO { 118fb72c03eSNeil Armstrong status = "okay"; 119fb72c03eSNeil Armstrong pinctrl-0 = <&ao_cec_pins>; 120fb72c03eSNeil Armstrong pinctrl-names = "default"; 121fb72c03eSNeil Armstrong hdmi-phandle = <&hdmi_tx>; 122fb72c03eSNeil Armstrong}; 123fb72c03eSNeil Armstrong 124fb72c03eSNeil Armstrong&cvbs_vdac_port { 125fb72c03eSNeil Armstrong cvbs_vdac_out: endpoint { 126fb72c03eSNeil Armstrong remote-endpoint = <&cvbs_connector_in>; 127fb72c03eSNeil Armstrong }; 128fb72c03eSNeil Armstrong}; 129fb72c03eSNeil Armstrong 130fb72c03eSNeil Armstrongðmac { 131fb72c03eSNeil Armstrong status = "okay"; 132fb72c03eSNeil Armstrong pinctrl-0 = <ð_rgmii_pins>; 133fb72c03eSNeil Armstrong pinctrl-names = "default"; 134fb72c03eSNeil Armstrong 135fb72c03eSNeil Armstrong phy-handle = <ð_phy0>; 136fb72c03eSNeil Armstrong phy-mode = "rgmii"; 137fb72c03eSNeil Armstrong 138fb72c03eSNeil Armstrong amlogic,tx-delay-ns = <2>; 139fb72c03eSNeil Armstrong 140fb72c03eSNeil Armstrong snps,reset-gpio = <&gpio GPIOZ_14 0>; 141fb72c03eSNeil Armstrong snps,reset-delays-us = <0 10000 1000000>; 142fb72c03eSNeil Armstrong snps,reset-active-low; 143fb72c03eSNeil Armstrong 144fb72c03eSNeil Armstrong mdio { 145fb72c03eSNeil Armstrong compatible = "snps,dwmac-mdio"; 146fb72c03eSNeil Armstrong #address-cells = <1>; 147fb72c03eSNeil Armstrong #size-cells = <0>; 148fb72c03eSNeil Armstrong 149fb72c03eSNeil Armstrong eth_phy0: ethernet-phy@0 { 150fb72c03eSNeil Armstrong /* Realtek RTL8211F (0x001cc916) */ 151fb72c03eSNeil Armstrong reg = <0>; 152fb72c03eSNeil Armstrong }; 153fb72c03eSNeil Armstrong }; 154fb72c03eSNeil Armstrong}; 155fb72c03eSNeil Armstrong 156fb72c03eSNeil Armstrong&hdmi_tx { 157fb72c03eSNeil Armstrong status = "okay"; 158fb72c03eSNeil Armstrong pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>; 159fb72c03eSNeil Armstrong pinctrl-names = "default"; 160fb72c03eSNeil Armstrong}; 161fb72c03eSNeil Armstrong 162fb72c03eSNeil Armstrong&hdmi_tx_tmds_port { 163fb72c03eSNeil Armstrong hdmi_tx_tmds_out: endpoint { 164fb72c03eSNeil Armstrong remote-endpoint = <&hdmi_connector_in>; 165fb72c03eSNeil Armstrong }; 166fb72c03eSNeil Armstrong}; 167fb72c03eSNeil Armstrong 168fb72c03eSNeil Armstrong&ir { 169fb72c03eSNeil Armstrong status = "okay"; 170fb72c03eSNeil Armstrong pinctrl-0 = <&remote_input_ao_pins>; 171fb72c03eSNeil Armstrong pinctrl-names = "default"; 172fb72c03eSNeil Armstrong}; 173fb72c03eSNeil Armstrong 174fb72c03eSNeil Armstrong&pwm_ef { 175fb72c03eSNeil Armstrong status = "okay"; 176fb72c03eSNeil Armstrong pinctrl-0 = <&pwm_e_pins>; 177fb72c03eSNeil Armstrong pinctrl-names = "default"; 178fb72c03eSNeil Armstrong clocks = <&clkc CLKID_FCLK_DIV4>; 179fb72c03eSNeil Armstrong clock-names = "clkin0"; 180fb72c03eSNeil Armstrong}; 181fb72c03eSNeil Armstrong 182dfa8b3cdSChristian Hewitt&saradc { 183dfa8b3cdSChristian Hewitt status = "okay"; 184dfa8b3cdSChristian Hewitt vref-supply = <&vddio_ao18>; 185dfa8b3cdSChristian Hewitt}; 186dfa8b3cdSChristian Hewitt 187fb72c03eSNeil Armstrong/* Wireless SDIO Module */ 188fb72c03eSNeil Armstrong&sd_emmc_a { 189fb72c03eSNeil Armstrong status = "okay"; 190fb72c03eSNeil Armstrong pinctrl-0 = <&sdio_pins>; 191fb72c03eSNeil Armstrong pinctrl-1 = <&sdio_clk_gate_pins>; 192fb72c03eSNeil Armstrong pinctrl-names = "default", "clk-gate"; 193fb72c03eSNeil Armstrong #address-cells = <1>; 194fb72c03eSNeil Armstrong #size-cells = <0>; 195fb72c03eSNeil Armstrong 196fb72c03eSNeil Armstrong bus-width = <4>; 197fb72c03eSNeil Armstrong cap-sd-highspeed; 198adc52bf7SJerome Brunet max-frequency = <50000000>; 199fb72c03eSNeil Armstrong 200fb72c03eSNeil Armstrong non-removable; 201fb72c03eSNeil Armstrong disable-wp; 202fb72c03eSNeil Armstrong 203fb72c03eSNeil Armstrong mmc-pwrseq = <&sdio_pwrseq>; 204fb72c03eSNeil Armstrong 205fb72c03eSNeil Armstrong vmmc-supply = <&vddao_3v3>; 206fb72c03eSNeil Armstrong vqmmc-supply = <&vddio_boot>; 207fb72c03eSNeil Armstrong 208fb72c03eSNeil Armstrong brcmf: wifi@1 { 209fb72c03eSNeil Armstrong reg = <1>; 210fb72c03eSNeil Armstrong compatible = "brcm,bcm4329-fmac"; 211fb72c03eSNeil Armstrong }; 212fb72c03eSNeil Armstrong}; 213fb72c03eSNeil Armstrong 214fb72c03eSNeil Armstrong/* SD card */ 215fb72c03eSNeil Armstrong&sd_emmc_b { 216fb72c03eSNeil Armstrong status = "okay"; 217fb72c03eSNeil Armstrong pinctrl-0 = <&sdcard_pins>; 218fb72c03eSNeil Armstrong pinctrl-1 = <&sdcard_clk_gate_pins>; 219fb72c03eSNeil Armstrong pinctrl-names = "default", "clk-gate"; 220fb72c03eSNeil Armstrong 221fb72c03eSNeil Armstrong bus-width = <4>; 222fb72c03eSNeil Armstrong cap-sd-highspeed; 223adc52bf7SJerome Brunet max-frequency = <50000000>; 224fb72c03eSNeil Armstrong disable-wp; 225fb72c03eSNeil Armstrong 226f29200c8SLoys Ollivier cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>; 227fb72c03eSNeil Armstrong 228fb72c03eSNeil Armstrong vmmc-supply = <&vddao_3v3>; 229fb72c03eSNeil Armstrong vqmmc-supply = <&vcc_3v3>; 230fb72c03eSNeil Armstrong}; 231fb72c03eSNeil Armstrong 232fb72c03eSNeil Armstrong/* eMMC */ 233fb72c03eSNeil Armstrong&sd_emmc_c { 234fb72c03eSNeil Armstrong status = "okay"; 235fb72c03eSNeil Armstrong pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>; 236fb72c03eSNeil Armstrong pinctrl-1 = <&emmc_clk_gate_pins>; 237fb72c03eSNeil Armstrong pinctrl-names = "default", "clk-gate"; 238fb72c03eSNeil Armstrong 239fb72c03eSNeil Armstrong bus-width = <8>; 240fb72c03eSNeil Armstrong cap-mmc-highspeed; 241fb72c03eSNeil Armstrong max-frequency = <200000000>; 242fb72c03eSNeil Armstrong non-removable; 243fb72c03eSNeil Armstrong disable-wp; 244fb72c03eSNeil Armstrong mmc-ddr-1_8v; 245fb72c03eSNeil Armstrong mmc-hs200-1_8v; 246fb72c03eSNeil Armstrong 247fb72c03eSNeil Armstrong mmc-pwrseq = <&emmc_pwrseq>; 248fb72c03eSNeil Armstrong vmmc-supply = <&vcc_3v3>; 249fb72c03eSNeil Armstrong vqmmc-supply = <&vddio_boot>; 250fb72c03eSNeil Armstrong}; 251fb72c03eSNeil Armstrong 25255c2440dSChristian Hewitt/* This is connected to the Bluetooth module: */ 25355c2440dSChristian Hewitt&uart_A { 25455c2440dSChristian Hewitt status = "okay"; 25555c2440dSChristian Hewitt pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; 25655c2440dSChristian Hewitt pinctrl-names = "default"; 25755c2440dSChristian Hewitt uart-has-rtscts; 25855c2440dSChristian Hewitt 25955c2440dSChristian Hewitt bluetooth { 26055c2440dSChristian Hewitt compatible = "brcm,bcm43438-bt"; 26155c2440dSChristian Hewitt shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; 26255c2440dSChristian Hewitt }; 26355c2440dSChristian Hewitt}; 26455c2440dSChristian Hewitt 265fb72c03eSNeil Armstrong/* This UART is brought out to the DB9 connector */ 266fb72c03eSNeil Armstrong&uart_AO { 267fb72c03eSNeil Armstrong status = "okay"; 268fb72c03eSNeil Armstrong pinctrl-0 = <&uart_ao_a_pins>; 269fb72c03eSNeil Armstrong pinctrl-names = "default"; 270fb72c03eSNeil Armstrong}; 271fb72c03eSNeil Armstrong 272fb72c03eSNeil Armstrong&usb0_phy { 273fb72c03eSNeil Armstrong status = "okay"; 274fb72c03eSNeil Armstrong phy-supply = <&usb_pwr>; 275fb72c03eSNeil Armstrong}; 276fb72c03eSNeil Armstrong 277fb72c03eSNeil Armstrong&usb0 { 278fb72c03eSNeil Armstrong status = "okay"; 279fb72c03eSNeil Armstrong}; 280