162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci/dts-v1/; 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#include "am33xx.dtsi" 862306a36Sopenharmony_ci#include "am335x-bone-common.dtsi" 962306a36Sopenharmony_ci#include "am335x-boneblack-common.dtsi" 1062306a36Sopenharmony_ci#include "am335x-boneblack-hdmi.dtsi" 1162306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci model = "TI AM335x BeagleBone Black Wireless"; 1562306a36Sopenharmony_ci compatible = "ti,am335x-bone-black-wireless", "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx"; 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci wlan_en_reg: fixedregulator@2 { 1862306a36Sopenharmony_ci compatible = "regulator-fixed"; 1962306a36Sopenharmony_ci regulator-name = "wlan-en-regulator"; 2062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 2162306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 2262306a36Sopenharmony_ci startup-delay-us = <70000>; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci /* WL_EN */ 2562306a36Sopenharmony_ci gpio = <&gpio3 9 0>; 2662306a36Sopenharmony_ci enable-active-high; 2762306a36Sopenharmony_ci }; 2862306a36Sopenharmony_ci}; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci&am33xx_pinmux { 3162306a36Sopenharmony_ci bt_pins: bt-pins { 3262306a36Sopenharmony_ci pinctrl-single,pins = < 3362306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gmii1_txd0.gpio0_28 - BT_EN */ 3462306a36Sopenharmony_ci >; 3562306a36Sopenharmony_ci }; 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci mmc3_pins: mmc3-pins { 3862306a36Sopenharmony_ci pinctrl-single,pins = < 3962306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLUP, MUX_MODE6 ) /* (L15) gmii1_rxd1.mmc2_clk */ 4062306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLUP, MUX_MODE6 ) /* (J16) gmii1_txen.mmc2_cmd */ 4162306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (J17) gmii1_rxdv.mmc2_dat0 */ 4262306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (J18) gmii1_txd3.mmc2_dat1 */ 4362306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (K15) gmii1_txd2.mmc2_dat2 */ 4462306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (H16) gmii1_col.mmc2_dat3 */ 4562306a36Sopenharmony_ci >; 4662306a36Sopenharmony_ci }; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci uart3_pins: uart3-pins { 4962306a36Sopenharmony_ci pinctrl-single,pins = < 5062306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLUP, MUX_MODE1) /* gmii1_rxd3.uart3_rxd */ 5162306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE1) /* gmii1_rxd2.uart3_txd */ 5262306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT, MUX_MODE3) /* mdio_data.uart3_ctsn */ 5362306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLDOWN, MUX_MODE3) /* mdio_clk.uart3_rtsn */ 5462306a36Sopenharmony_ci >; 5562306a36Sopenharmony_ci }; 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci wl18xx_pins: wl18xx-pins { 5862306a36Sopenharmony_ci pinctrl-single,pins = < 5962306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_OUTPUT_PULLDOWN, MUX_MODE7) /* gmii1_txclk.gpio3_9 WL_EN */ 6062306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7) /* rmii1_refclk.gpio0_29 WL_IRQ */ 6162306a36Sopenharmony_ci AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gmii1_rxclk.gpio3_10 LS_BUF_EN */ 6262306a36Sopenharmony_ci >; 6362306a36Sopenharmony_ci }; 6462306a36Sopenharmony_ci}; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci&mac_sw { 6762306a36Sopenharmony_ci status = "disabled"; 6862306a36Sopenharmony_ci}; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci&mmc3 { 7162306a36Sopenharmony_ci dmas = <&edma_xbar 12 0 1 7262306a36Sopenharmony_ci &edma_xbar 13 0 2>; 7362306a36Sopenharmony_ci dma-names = "tx", "rx"; 7462306a36Sopenharmony_ci status = "okay"; 7562306a36Sopenharmony_ci vmmc-supply = <&wlan_en_reg>; 7662306a36Sopenharmony_ci bus-width = <4>; 7762306a36Sopenharmony_ci non-removable; 7862306a36Sopenharmony_ci cap-power-off-card; 7962306a36Sopenharmony_ci keep-power-in-suspend; 8062306a36Sopenharmony_ci pinctrl-names = "default"; 8162306a36Sopenharmony_ci pinctrl-0 = <&mmc3_pins &wl18xx_pins>; 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci #address-cells = <1>; 8462306a36Sopenharmony_ci #size-cells = <0>; 8562306a36Sopenharmony_ci wlcore: wlcore@2 { 8662306a36Sopenharmony_ci compatible = "ti,wl1835"; 8762306a36Sopenharmony_ci reg = <2>; 8862306a36Sopenharmony_ci interrupt-parent = <&gpio0>; 8962306a36Sopenharmony_ci interrupts = <29 IRQ_TYPE_EDGE_RISING>; 9062306a36Sopenharmony_ci }; 9162306a36Sopenharmony_ci}; 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci&uart3 { 9462306a36Sopenharmony_ci pinctrl-names = "default"; 9562306a36Sopenharmony_ci pinctrl-0 = <&uart3_pins &bt_pins>; 9662306a36Sopenharmony_ci status = "okay"; 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci bluetooth { 9962306a36Sopenharmony_ci compatible = "ti,wl1835-st"; 10062306a36Sopenharmony_ci enable-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; 10162306a36Sopenharmony_ci }; 10262306a36Sopenharmony_ci}; 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ci&gpio3 { 10562306a36Sopenharmony_ci ls-buf-en-hog { 10662306a36Sopenharmony_ci gpio-hog; 10762306a36Sopenharmony_ci gpios = <10 GPIO_ACTIVE_HIGH>; 10862306a36Sopenharmony_ci output-high; 10962306a36Sopenharmony_ci line-name = "LS_BUF_EN"; 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci}; 112