1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/ 4 */ 5/dts-v1/; 6 7#include "am33xx.dtsi" 8#include "am335x-bone-common.dtsi" 9#include "am335x-boneblack-common.dtsi" 10#include "am335x-boneblack-hdmi.dtsi" 11#include <dt-bindings/interrupt-controller/irq.h> 12 13/ { 14 model = "TI AM335x BeagleBone Black Wireless"; 15 compatible = "ti,am335x-bone-black-wireless", "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx"; 16 17 wlan_en_reg: fixedregulator@2 { 18 compatible = "regulator-fixed"; 19 regulator-name = "wlan-en-regulator"; 20 regulator-min-microvolt = <1800000>; 21 regulator-max-microvolt = <1800000>; 22 startup-delay-us = <70000>; 23 24 /* WL_EN */ 25 gpio = <&gpio3 9 0>; 26 enable-active-high; 27 }; 28}; 29 30&am33xx_pinmux { 31 bt_pins: bt-pins { 32 pinctrl-single,pins = < 33 AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gmii1_txd0.gpio0_28 - BT_EN */ 34 >; 35 }; 36 37 mmc3_pins: mmc3-pins { 38 pinctrl-single,pins = < 39 AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLUP, MUX_MODE6 ) /* (L15) gmii1_rxd1.mmc2_clk */ 40 AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLUP, MUX_MODE6 ) /* (J16) gmii1_txen.mmc2_cmd */ 41 AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (J17) gmii1_rxdv.mmc2_dat0 */ 42 AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (J18) gmii1_txd3.mmc2_dat1 */ 43 AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (K15) gmii1_txd2.mmc2_dat2 */ 44 AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_INPUT_PULLUP, MUX_MODE5 ) /* (H16) gmii1_col.mmc2_dat3 */ 45 >; 46 }; 47 48 uart3_pins: uart3-pins { 49 pinctrl-single,pins = < 50 AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLUP, MUX_MODE1) /* gmii1_rxd3.uart3_rxd */ 51 AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE1) /* gmii1_rxd2.uart3_txd */ 52 AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT, MUX_MODE3) /* mdio_data.uart3_ctsn */ 53 AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLDOWN, MUX_MODE3) /* mdio_clk.uart3_rtsn */ 54 >; 55 }; 56 57 wl18xx_pins: wl18xx-pins { 58 pinctrl-single,pins = < 59 AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_OUTPUT_PULLDOWN, MUX_MODE7) /* gmii1_txclk.gpio3_9 WL_EN */ 60 AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7) /* rmii1_refclk.gpio0_29 WL_IRQ */ 61 AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gmii1_rxclk.gpio3_10 LS_BUF_EN */ 62 >; 63 }; 64}; 65 66&mac_sw { 67 status = "disabled"; 68}; 69 70&mmc3 { 71 dmas = <&edma_xbar 12 0 1 72 &edma_xbar 13 0 2>; 73 dma-names = "tx", "rx"; 74 status = "okay"; 75 vmmc-supply = <&wlan_en_reg>; 76 bus-width = <4>; 77 non-removable; 78 cap-power-off-card; 79 keep-power-in-suspend; 80 pinctrl-names = "default"; 81 pinctrl-0 = <&mmc3_pins &wl18xx_pins>; 82 83 #address-cells = <1>; 84 #size-cells = <0>; 85 wlcore: wlcore@2 { 86 compatible = "ti,wl1835"; 87 reg = <2>; 88 interrupt-parent = <&gpio0>; 89 interrupts = <29 IRQ_TYPE_EDGE_RISING>; 90 }; 91}; 92 93&uart3 { 94 pinctrl-names = "default"; 95 pinctrl-0 = <&uart3_pins &bt_pins>; 96 status = "okay"; 97 98 bluetooth { 99 compatible = "ti,wl1835-st"; 100 enable-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>; 101 }; 102}; 103 104&gpio3 { 105 ls-buf-en-hog { 106 gpio-hog; 107 gpios = <10 GPIO_ACTIVE_HIGH>; 108 output-high; 109 line-name = "LS_BUF_EN"; 110 }; 111}; 112