1114abfe1SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 29bc7ffb0SAndreas Färber/* 39bc7ffb0SAndreas Färber * Copyright (c) 2017 Andreas Färber 49bc7ffb0SAndreas Färber */ 59bc7ffb0SAndreas Färber 69bc7ffb0SAndreas Färber/dts-v1/; 79bc7ffb0SAndreas Färber 89bc7ffb0SAndreas Färber#include "meson-gxbb.dtsi" 99bc7ffb0SAndreas Färber#include <dt-bindings/gpio/gpio.h> 106a74f78cSChristian Hewitt#include <dt-bindings/sound/meson-aiu.h> 119bc7ffb0SAndreas Färber 129bc7ffb0SAndreas Färber/ { 139bc7ffb0SAndreas Färber compatible = "friendlyarm,nanopi-k2", "amlogic,meson-gxbb"; 14591185c1SNeil Armstrong model = "FriendlyARM NanoPi K2"; 159bc7ffb0SAndreas Färber 169bc7ffb0SAndreas Färber aliases { 179bc7ffb0SAndreas Färber serial0 = &uart_AO; 18059a58fcSJorge Ramirez-Ortiz ethernet0 = ðmac; 199bc7ffb0SAndreas Färber }; 209bc7ffb0SAndreas Färber 219bc7ffb0SAndreas Färber chosen { 229bc7ffb0SAndreas Färber stdout-path = "serial0:115200n8"; 239bc7ffb0SAndreas Färber }; 249bc7ffb0SAndreas Färber 259bc7ffb0SAndreas Färber memory@0 { 269bc7ffb0SAndreas Färber device_type = "memory"; 279bc7ffb0SAndreas Färber reg = <0x0 0x0 0x0 0x80000000>; 289bc7ffb0SAndreas Färber }; 299bc7ffb0SAndreas Färber 309bc7ffb0SAndreas Färber leds { 319bc7ffb0SAndreas Färber compatible = "gpio-leds"; 329bc7ffb0SAndreas Färber 3308dc0e5dSNeil Armstrong led-stat { 349bc7ffb0SAndreas Färber label = "nanopi-k2:blue:stat"; 359bc7ffb0SAndreas Färber gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_HIGH>; 369bc7ffb0SAndreas Färber default-state = "on"; 379bc7ffb0SAndreas Färber panic-indicator; 389bc7ffb0SAndreas Färber }; 399bc7ffb0SAndreas Färber }; 409bc7ffb0SAndreas Färber 419bc7ffb0SAndreas Färber vdd_5v: regulator-vdd-5v { 429bc7ffb0SAndreas Färber compatible = "regulator-fixed"; 439bc7ffb0SAndreas Färber regulator-name = "VDD_5V"; 449bc7ffb0SAndreas Färber regulator-min-microvolt = <5000000>; 459bc7ffb0SAndreas Färber regulator-max-microvolt = <5000000>; 469bc7ffb0SAndreas Färber }; 479bc7ffb0SAndreas Färber 489bc7ffb0SAndreas Färber vddio_ao18: regulator-vddio-ao18 { 499bc7ffb0SAndreas Färber compatible = "regulator-fixed"; 509bc7ffb0SAndreas Färber regulator-name = "VDDIO_AO18"; 519bc7ffb0SAndreas Färber regulator-min-microvolt = <1800000>; 529bc7ffb0SAndreas Färber regulator-max-microvolt = <1800000>; 539bc7ffb0SAndreas Färber }; 549bc7ffb0SAndreas Färber 559bc7ffb0SAndreas Färber vddio_ao3v3: regulator-vddio-ao3v3 { 569bc7ffb0SAndreas Färber compatible = "regulator-fixed"; 579bc7ffb0SAndreas Färber regulator-name = "VDDIO_AO3.3V"; 589bc7ffb0SAndreas Färber regulator-min-microvolt = <3300000>; 599bc7ffb0SAndreas Färber regulator-max-microvolt = <3300000>; 609bc7ffb0SAndreas Färber }; 619bc7ffb0SAndreas Färber 629bc7ffb0SAndreas Färber vddio_tf: regulator-vddio-tf { 639bc7ffb0SAndreas Färber compatible = "regulator-gpio"; 649bc7ffb0SAndreas Färber 659bc7ffb0SAndreas Färber regulator-name = "VDDIO_TF"; 669bc7ffb0SAndreas Färber regulator-min-microvolt = <1800000>; 679bc7ffb0SAndreas Färber regulator-max-microvolt = <3300000>; 689bc7ffb0SAndreas Färber 699bc7ffb0SAndreas Färber gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>; 709bc7ffb0SAndreas Färber gpios-states = <0>; 719bc7ffb0SAndreas Färber 729bc7ffb0SAndreas Färber states = <3300000 0>, 739bc7ffb0SAndreas Färber <1800000 1>; 7442776561SJerome Brunet 7542776561SJerome Brunet regulator-settling-time-up-us = <100>; 7642776561SJerome Brunet regulator-settling-time-down-us = <5000>; 779bc7ffb0SAndreas Färber }; 789bc7ffb0SAndreas Färber 799bc7ffb0SAndreas Färber wifi_32k: wifi-32k { 809bc7ffb0SAndreas Färber compatible = "pwm-clock"; 819bc7ffb0SAndreas Färber #clock-cells = <0>; 829bc7ffb0SAndreas Färber clock-frequency = <32768>; 839bc7ffb0SAndreas Färber pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ 849bc7ffb0SAndreas Färber }; 859bc7ffb0SAndreas Färber 869bc7ffb0SAndreas Färber sdio_pwrseq: sdio-pwrseq { 879bc7ffb0SAndreas Färber compatible = "mmc-pwrseq-simple"; 889bc7ffb0SAndreas Färber reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>; 899bc7ffb0SAndreas Färber clocks = <&wifi_32k>; 909bc7ffb0SAndreas Färber clock-names = "ext_clock"; 919bc7ffb0SAndreas Färber }; 929bc7ffb0SAndreas Färber 939bc7ffb0SAndreas Färber vcc1v8: regulator-vcc1v8 { 949bc7ffb0SAndreas Färber compatible = "regulator-fixed"; 959bc7ffb0SAndreas Färber regulator-name = "VCC1.8V"; 969bc7ffb0SAndreas Färber regulator-min-microvolt = <1800000>; 979bc7ffb0SAndreas Färber regulator-max-microvolt = <1800000>; 989bc7ffb0SAndreas Färber }; 999bc7ffb0SAndreas Färber 1009bc7ffb0SAndreas Färber vcc3v3: regulator-vcc3v3 { 1019bc7ffb0SAndreas Färber compatible = "regulator-fixed"; 1029bc7ffb0SAndreas Färber regulator-name = "VCC3.3V"; 1039bc7ffb0SAndreas Färber regulator-min-microvolt = <3300000>; 1049bc7ffb0SAndreas Färber regulator-max-microvolt = <3300000>; 1059bc7ffb0SAndreas Färber }; 1069bc7ffb0SAndreas Färber 1079bc7ffb0SAndreas Färber emmc_pwrseq: emmc-pwrseq { 1089bc7ffb0SAndreas Färber compatible = "mmc-pwrseq-emmc"; 1099bc7ffb0SAndreas Färber reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>; 1109bc7ffb0SAndreas Färber }; 111d1b5a0a8SNeil Armstrong 112d1b5a0a8SNeil Armstrong /* CVBS is available on CON1 pin 36, disabled by default */ 113d1b5a0a8SNeil Armstrong cvbs-connector { 114d1b5a0a8SNeil Armstrong compatible = "composite-video-connector"; 115d1b5a0a8SNeil Armstrong status = "disabled"; 116d1b5a0a8SNeil Armstrong 117d1b5a0a8SNeil Armstrong port { 118d1b5a0a8SNeil Armstrong cvbs_connector_in: endpoint { 119d1b5a0a8SNeil Armstrong remote-endpoint = <&cvbs_vdac_out>; 120d1b5a0a8SNeil Armstrong }; 121d1b5a0a8SNeil Armstrong }; 122d1b5a0a8SNeil Armstrong }; 123d1b5a0a8SNeil Armstrong 124d1b5a0a8SNeil Armstrong hdmi-connector { 125d1b5a0a8SNeil Armstrong compatible = "hdmi-connector"; 126d1b5a0a8SNeil Armstrong type = "a"; 127d1b5a0a8SNeil Armstrong 128d1b5a0a8SNeil Armstrong port { 129d1b5a0a8SNeil Armstrong hdmi_connector_in: endpoint { 130d1b5a0a8SNeil Armstrong remote-endpoint = <&hdmi_tx_tmds_out>; 131d1b5a0a8SNeil Armstrong }; 132d1b5a0a8SNeil Armstrong }; 133d1b5a0a8SNeil Armstrong }; 1346a74f78cSChristian Hewitt 1356a74f78cSChristian Hewitt sound { 1366a74f78cSChristian Hewitt compatible = "amlogic,gx-sound-card"; 137933b80edSChristian Hewitt model = "NANOPI-K2"; 1386a74f78cSChristian Hewitt assigned-clocks = <&clkc CLKID_MPLL0>, 1396a74f78cSChristian Hewitt <&clkc CLKID_MPLL1>, 1406a74f78cSChristian Hewitt <&clkc CLKID_MPLL2>; 1416a74f78cSChristian Hewitt assigned-clock-parents = <0>, <0>, <0>; 1426a74f78cSChristian Hewitt assigned-clock-rates = <294912000>, 1436a74f78cSChristian Hewitt <270950400>, 1446a74f78cSChristian Hewitt <393216000>; 1456a74f78cSChristian Hewitt 1466a74f78cSChristian Hewitt dai-link-0 { 1476a74f78cSChristian Hewitt sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>; 1486a74f78cSChristian Hewitt }; 1496a74f78cSChristian Hewitt 1506a74f78cSChristian Hewitt dai-link-1 { 1516a74f78cSChristian Hewitt sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>; 1526a74f78cSChristian Hewitt dai-format = "i2s"; 1536a74f78cSChristian Hewitt mclk-fs = <256>; 1546a74f78cSChristian Hewitt 1556a74f78cSChristian Hewitt codec-0 { 1566a74f78cSChristian Hewitt sound-dai = <&aiu AIU_HDMI CTRL_I2S>; 1576a74f78cSChristian Hewitt }; 1586a74f78cSChristian Hewitt }; 1596a74f78cSChristian Hewitt 1606a74f78cSChristian Hewitt dai-link-2 { 1616a74f78cSChristian Hewitt sound-dai = <&aiu AIU_HDMI CTRL_OUT>; 1626a74f78cSChristian Hewitt 1636a74f78cSChristian Hewitt codec-0 { 1646a74f78cSChristian Hewitt sound-dai = <&hdmi_tx>; 1656a74f78cSChristian Hewitt }; 1666a74f78cSChristian Hewitt }; 1676a74f78cSChristian Hewitt }; 1686a74f78cSChristian Hewitt}; 1696a74f78cSChristian Hewitt 1706a74f78cSChristian Hewitt&aiu { 1716a74f78cSChristian Hewitt status = "okay"; 172d1b5a0a8SNeil Armstrong}; 173d1b5a0a8SNeil Armstrong 174d1b5a0a8SNeil Armstrong&cec_AO { 175d1b5a0a8SNeil Armstrong status = "okay"; 176d1b5a0a8SNeil Armstrong pinctrl-0 = <&ao_cec_pins>; 177d1b5a0a8SNeil Armstrong pinctrl-names = "default"; 178d1b5a0a8SNeil Armstrong hdmi-phandle = <&hdmi_tx>; 179d1b5a0a8SNeil Armstrong}; 180d1b5a0a8SNeil Armstrong 181d1b5a0a8SNeil Armstrong&cvbs_vdac_port { 182d1b5a0a8SNeil Armstrong cvbs_vdac_out: endpoint { 183d1b5a0a8SNeil Armstrong remote-endpoint = <&cvbs_connector_in>; 184d1b5a0a8SNeil Armstrong }; 1859bc7ffb0SAndreas Färber}; 1869bc7ffb0SAndreas Färber 1879bc7ffb0SAndreas Färberðmac { 1889bc7ffb0SAndreas Färber status = "okay"; 1899bc7ffb0SAndreas Färber pinctrl-0 = <ð_rgmii_pins>; 1909bc7ffb0SAndreas Färber pinctrl-names = "default"; 1919bc7ffb0SAndreas Färber 1929bc7ffb0SAndreas Färber phy-handle = <ð_phy0>; 1939bc7ffb0SAndreas Färber phy-mode = "rgmii"; 1949bc7ffb0SAndreas Färber 1959bc7ffb0SAndreas Färber amlogic,tx-delay-ns = <2>; 1969bc7ffb0SAndreas Färber 1979bc7ffb0SAndreas Färber mdio { 1989bc7ffb0SAndreas Färber compatible = "snps,dwmac-mdio"; 1999bc7ffb0SAndreas Färber #address-cells = <1>; 2009bc7ffb0SAndreas Färber #size-cells = <0>; 2019bc7ffb0SAndreas Färber 2029bc7ffb0SAndreas Färber eth_phy0: ethernet-phy@0 { 2039bc7ffb0SAndreas Färber /* Realtek RTL8211F (0x001cc916) */ 2049bc7ffb0SAndreas Färber reg = <0>; 205f29cabf2SMartin Blumenstingl 206f29cabf2SMartin Blumenstingl reset-assert-us = <10000>; 207c183c406SStefan Agner reset-deassert-us = <80000>; 208f29cabf2SMartin Blumenstingl reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 209f29cabf2SMartin Blumenstingl 210b94d22d9SJerome Brunet interrupt-parent = <&gpio_intc>; 21150290cfeSMartin Blumenstingl /* MAC_INTR on GPIOZ_15 */ 212b94d22d9SJerome Brunet interrupts = <29 IRQ_TYPE_LEVEL_LOW>; 2139bc7ffb0SAndreas Färber }; 2149bc7ffb0SAndreas Färber }; 2159bc7ffb0SAndreas Färber}; 2169bc7ffb0SAndreas Färber 217d1b5a0a8SNeil Armstrong&hdmi_tx { 218d1b5a0a8SNeil Armstrong status = "okay"; 219d1b5a0a8SNeil Armstrong pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>; 220d1b5a0a8SNeil Armstrong pinctrl-names = "default"; 221d1b5a0a8SNeil Armstrong}; 222d1b5a0a8SNeil Armstrong 223d1b5a0a8SNeil Armstrong&hdmi_tx_tmds_port { 224d1b5a0a8SNeil Armstrong hdmi_tx_tmds_out: endpoint { 225d1b5a0a8SNeil Armstrong remote-endpoint = <&hdmi_connector_in>; 226d1b5a0a8SNeil Armstrong }; 227d1b5a0a8SNeil Armstrong}; 228d1b5a0a8SNeil Armstrong 2299bc7ffb0SAndreas Färber&ir { 2309bc7ffb0SAndreas Färber status = "okay"; 2319bc7ffb0SAndreas Färber pinctrl-0 = <&remote_input_ao_pins>; 2329bc7ffb0SAndreas Färber pinctrl-names = "default"; 2339bc7ffb0SAndreas Färber}; 2349bc7ffb0SAndreas Färber 235f0783f5eSNeil Armstrong&gpio_ao { 23612ada051SNeil Armstrong gpio-line-names = "UART TX", "UART RX", "Power Control", "Power Key In", 23712ada051SNeil Armstrong "VCCK En", "CON1 Header Pin31", 23812ada051SNeil Armstrong "I2S Header Pin6", "IR In", "I2S Header Pin7", 23912ada051SNeil Armstrong "I2S Header Pin3", "I2S Header Pin4", 2401ce2c008SJerome Brunet "I2S Header Pin5", "HDMI CEC", "SYS LED", 2411ce2c008SJerome Brunet /* GPIO_TEST_N */ 2421ce2c008SJerome Brunet ""; 24312ada051SNeil Armstrong}; 24412ada051SNeil Armstrong 245f0783f5eSNeil Armstrong&gpio { 24612ada051SNeil Armstrong gpio-line-names = /* Bank GPIOZ */ 24712ada051SNeil Armstrong "Eth MDIO", "Eth MDC", "Eth RGMII RX Clk", 24812ada051SNeil Armstrong "Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2", 24912ada051SNeil Armstrong "Eth RX D3", "Eth RGMII TX Clk", "Eth TX En", 25012ada051SNeil Armstrong "Eth TX D0", "Eth TX D1", "Eth TX D2", "Eth TX D3", 25112ada051SNeil Armstrong "Eth PHY nRESET", "Eth PHY Intc", 25212ada051SNeil Armstrong /* Bank GPIOH */ 25312ada051SNeil Armstrong "HDMI HPD", "HDMI DDC SDA", "HDMI DDC SCL", 25412ada051SNeil Armstrong "CON1 Header Pin33", 25512ada051SNeil Armstrong /* Bank BOOT */ 25612ada051SNeil Armstrong "eMMC D0", "eMMC D1", "eMMC D2", "eMMC D3", "eMMC D4", 25712ada051SNeil Armstrong "eMMC D5", "eMMC D6", "eMMC D7", "eMMC Clk", 25812ada051SNeil Armstrong "eMMC Reset", "eMMC CMD", 25912ada051SNeil Armstrong "", "", "", "", "eMMC DS", 26012ada051SNeil Armstrong "", "", 26112ada051SNeil Armstrong /* Bank CARD */ 26212ada051SNeil Armstrong "SDCard D1", "SDCard D0", "SDCard CLK", "SDCard CMD", 26312ada051SNeil Armstrong "SDCard D3", "SDCard D2", "SDCard Det", 26412ada051SNeil Armstrong /* Bank GPIODV */ 26512ada051SNeil Armstrong "", "", "", "", "", "", "", "", "", "", "", "", "", 26612ada051SNeil Armstrong "", "", "", "", "", "", "", "", "", "", "", 26712ada051SNeil Armstrong "I2C A SDA", "I2C A SCK", "I2C B SDA", "I2C B SCK", 26812ada051SNeil Armstrong "VDDEE Regulator", "VCCK Regulator", 26912ada051SNeil Armstrong /* Bank GPIOY */ 27012ada051SNeil Armstrong "CON1 Header Pin7", "CON1 Header Pin11", 27112ada051SNeil Armstrong "CON1 Header Pin13", "CON1 Header Pin15", 27212ada051SNeil Armstrong "CON1 Header Pin18", "CON1 Header Pin19", 27312ada051SNeil Armstrong "CON1 Header Pin22", "CON1 Header Pin21", 27412ada051SNeil Armstrong "CON1 Header Pin24", "CON1 Header Pin23", 27512ada051SNeil Armstrong "CON1 Header Pin26", "CON1 Header Pin29", 27612ada051SNeil Armstrong "CON1 Header Pin32", "CON1 Header Pin8", 27712ada051SNeil Armstrong "CON1 Header Pin10", "CON1 Header Pin16", 27812ada051SNeil Armstrong "CON1 Header Pin12", 27912ada051SNeil Armstrong /* Bank GPIOX */ 28012ada051SNeil Armstrong "WIFI SDIO D0", "WIFI SDIO D1", "WIFI SDIO D2", 28112ada051SNeil Armstrong "WIFI SDIO D3", "WIFI SDIO CLK", "WIFI SDIO CMD", 28212ada051SNeil Armstrong "WIFI Power Enable", "WIFI WAKE HOST", 28312ada051SNeil Armstrong "Bluetooth PCM DOUT", "Bluetooth PCM DIN", 28412ada051SNeil Armstrong "Bluetooth PCM SYNC", "Bluetooth PCM CLK", 28512ada051SNeil Armstrong "Bluetooth UART TX", "Bluetooth UART RX", 28612ada051SNeil Armstrong "Bluetooth UART CTS", "Bluetooth UART RTS", 28712ada051SNeil Armstrong "", "", "", "WIFI 32K", "Bluetooth Enable", 2881ce2c008SJerome Brunet "Bluetooth WAKE HOST", "", 28912ada051SNeil Armstrong /* Bank GPIOCLK */ 2901ce2c008SJerome Brunet "", "CON1 Header Pin35", "", ""; 29112ada051SNeil Armstrong}; 29212ada051SNeil Armstrong 2939bc7ffb0SAndreas Färber&pwm_ef { 2949bc7ffb0SAndreas Färber status = "okay"; 2959bc7ffb0SAndreas Färber pinctrl-0 = <&pwm_e_pins>; 2969bc7ffb0SAndreas Färber pinctrl-names = "default"; 2979bc7ffb0SAndreas Färber clocks = <&clkc CLKID_FCLK_DIV4>; 2989bc7ffb0SAndreas Färber clock-names = "clkin0"; 2999bc7ffb0SAndreas Färber}; 3009bc7ffb0SAndreas Färber 3019bc7ffb0SAndreas Färber&saradc { 3029bc7ffb0SAndreas Färber status = "okay"; 3039bc7ffb0SAndreas Färber vref-supply = <&vddio_ao18>; 3049bc7ffb0SAndreas Färber}; 3059bc7ffb0SAndreas Färber 3069bc7ffb0SAndreas Färber/* SDIO */ 3079bc7ffb0SAndreas Färber&sd_emmc_a { 3089bc7ffb0SAndreas Färber status = "okay"; 3099bc7ffb0SAndreas Färber pinctrl-0 = <&sdio_pins>, <&sdio_irq_pins>; 31067e7607fSJerome Brunet pinctrl-1 = <&sdio_clk_gate_pins>; 31167e7607fSJerome Brunet pinctrl-names = "default", "clk-gate"; 3129bc7ffb0SAndreas Färber #address-cells = <1>; 3139bc7ffb0SAndreas Färber #size-cells = <0>; 3149bc7ffb0SAndreas Färber 3159bc7ffb0SAndreas Färber bus-width = <4>; 3169bc7ffb0SAndreas Färber cap-sd-highspeed; 317adc52bf7SJerome Brunet max-frequency = <50000000>; 3189bc7ffb0SAndreas Färber 3199bc7ffb0SAndreas Färber non-removable; 3209bc7ffb0SAndreas Färber disable-wp; 3219bc7ffb0SAndreas Färber 322f7caa8b5SNeil Armstrong /* WiFi firmware requires power to be kept while in suspend */ 323f7caa8b5SNeil Armstrong keep-power-in-suspend; 324f7caa8b5SNeil Armstrong 3259bc7ffb0SAndreas Färber mmc-pwrseq = <&sdio_pwrseq>; 3269bc7ffb0SAndreas Färber 3279bc7ffb0SAndreas Färber vmmc-supply = <&vddio_ao3v3>; 3289bc7ffb0SAndreas Färber vqmmc-supply = <&vddio_ao18>; 3299bc7ffb0SAndreas Färber 3309bc7ffb0SAndreas Färber brcmf: wifi@1 { 3319bc7ffb0SAndreas Färber compatible = "brcm,bcm4329-fmac"; 3329bc7ffb0SAndreas Färber reg = <1>; 3339bc7ffb0SAndreas Färber }; 3349bc7ffb0SAndreas Färber}; 3359bc7ffb0SAndreas Färber 3369bc7ffb0SAndreas Färber/* SD */ 3379bc7ffb0SAndreas Färber&sd_emmc_b { 3389bc7ffb0SAndreas Färber status = "okay"; 3399bc7ffb0SAndreas Färber pinctrl-0 = <&sdcard_pins>; 34067e7607fSJerome Brunet pinctrl-1 = <&sdcard_clk_gate_pins>; 34167e7607fSJerome Brunet pinctrl-names = "default", "clk-gate"; 3429bc7ffb0SAndreas Färber 3439bc7ffb0SAndreas Färber bus-width = <4>; 3449bc7ffb0SAndreas Färber cap-sd-highspeed; 345c1429e20SJerome Brunet sd-uhs-sdr12; 346c1429e20SJerome Brunet sd-uhs-sdr25; 347c1429e20SJerome Brunet sd-uhs-sdr50; 348f52bc6ddSJerome Brunet sd-uhs-ddr50; 349adc52bf7SJerome Brunet max-frequency = <100000000>; 3509bc7ffb0SAndreas Färber disable-wp; 3519bc7ffb0SAndreas Färber 352f29200c8SLoys Ollivier cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>; 3539bc7ffb0SAndreas Färber 3549bc7ffb0SAndreas Färber vmmc-supply = <&vddio_ao3v3>; 3559bc7ffb0SAndreas Färber vqmmc-supply = <&vddio_tf>; 3569bc7ffb0SAndreas Färber}; 3579bc7ffb0SAndreas Färber 3589bc7ffb0SAndreas Färber/* eMMC */ 3599bc7ffb0SAndreas Färber&sd_emmc_c { 3609bc7ffb0SAndreas Färber status = "disabled"; 361ab36be66SNeil Armstrong pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>; 36267e7607fSJerome Brunet pinctrl-1 = <&emmc_clk_gate_pins>; 36367e7607fSJerome Brunet pinctrl-names = "default", "clk-gate"; 3649bc7ffb0SAndreas Färber 3659bc7ffb0SAndreas Färber bus-width = <8>; 3669bc7ffb0SAndreas Färber max-frequency = <200000000>; 3679bc7ffb0SAndreas Färber non-removable; 3689bc7ffb0SAndreas Färber disable-wp; 3699bc7ffb0SAndreas Färber cap-mmc-highspeed; 3709bc7ffb0SAndreas Färber mmc-ddr-1_8v; 3719bc7ffb0SAndreas Färber mmc-hs200-1_8v; 3729bc7ffb0SAndreas Färber 3739bc7ffb0SAndreas Färber mmc-pwrseq = <&emmc_pwrseq>; 3749bc7ffb0SAndreas Färber vmmc-supply = <&vcc3v3>; 3759bc7ffb0SAndreas Färber vqmmc-supply = <&vcc1v8>; 3769bc7ffb0SAndreas Färber}; 3779bc7ffb0SAndreas Färber 3789bc7ffb0SAndreas Färber/* DBG_UART */ 3799bc7ffb0SAndreas Färber&uart_AO { 3809bc7ffb0SAndreas Färber status = "okay"; 3819bc7ffb0SAndreas Färber pinctrl-0 = <&uart_ao_a_pins>; 3829bc7ffb0SAndreas Färber pinctrl-names = "default"; 3839bc7ffb0SAndreas Färber}; 3849bc7ffb0SAndreas Färber 3859bc7ffb0SAndreas Färber/* Bluetooth on AP6212 */ 3869bc7ffb0SAndreas Färber&uart_A { 387*46f2735cSChen-Yu Tsai status = "okay"; 3889bc7ffb0SAndreas Färber pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; 3899bc7ffb0SAndreas Färber pinctrl-names = "default"; 390*46f2735cSChen-Yu Tsai uart-has-rtscts; 391*46f2735cSChen-Yu Tsai 392*46f2735cSChen-Yu Tsai bluetooth { 393*46f2735cSChen-Yu Tsai compatible = "brcm,bcm43438-bt"; 394*46f2735cSChen-Yu Tsai clocks = <&wifi_32k>; 395*46f2735cSChen-Yu Tsai clock-names = "lpo"; 396*46f2735cSChen-Yu Tsai vbat-supply = <&vddio_ao3v3>; 397*46f2735cSChen-Yu Tsai vddio-supply = <&vddio_ao18>; 398*46f2735cSChen-Yu Tsai host-wakeup-gpios = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>; 399*46f2735cSChen-Yu Tsai shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; 400*46f2735cSChen-Yu Tsai }; 4019bc7ffb0SAndreas Färber}; 4029bc7ffb0SAndreas Färber 4039bc7ffb0SAndreas Färber/* 40-pin CON1 */ 4049bc7ffb0SAndreas Färber&uart_C { 4059bc7ffb0SAndreas Färber status = "disabled"; 4069bc7ffb0SAndreas Färber pinctrl-0 = <&uart_c_pins>; 4079bc7ffb0SAndreas Färber pinctrl-names = "default"; 4089bc7ffb0SAndreas Färber}; 4099bc7ffb0SAndreas Färber 4109bc7ffb0SAndreas Färber&usb0_phy { 4119bc7ffb0SAndreas Färber status = "okay"; 4129bc7ffb0SAndreas Färber phy-supply = <&vdd_5v>; 4139bc7ffb0SAndreas Färber}; 4149bc7ffb0SAndreas Färber 4159bc7ffb0SAndreas Färber&usb1_phy { 4169bc7ffb0SAndreas Färber status = "okay"; 4179bc7ffb0SAndreas Färber}; 4189bc7ffb0SAndreas Färber 4199bc7ffb0SAndreas Färber&usb0 { 4209bc7ffb0SAndreas Färber status = "okay"; 4219bc7ffb0SAndreas Färber}; 4229bc7ffb0SAndreas Färber 4239bc7ffb0SAndreas Färber&usb1 { 4249bc7ffb0SAndreas Färber status = "okay"; 4259bc7ffb0SAndreas Färber}; 426