1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only 2724ba675SRob Herring/dts-v1/; 3724ba675SRob Herring 4724ba675SRob Herring#include <dt-bindings/input/input.h> 5724ba675SRob Herring#include "omap443x.dtsi" 6724ba675SRob Herring#include "motorola-cpcap-mapphone.dtsi" 7724ba675SRob Herring 8724ba675SRob Herring/ { 9724ba675SRob Herring /* 10724ba675SRob Herring * We seem to have only 1021 MB accessible, 1021 - 1022 is locked, 11724ba675SRob Herring * then 1023 - 1024 seems to contain mbm. 12724ba675SRob Herring */ 13724ba675SRob Herring memory { 14724ba675SRob Herring device_type = "memory"; 15724ba675SRob Herring reg = <0x80000000 0x3fd00000>; /* 1021 MB */ 16724ba675SRob Herring }; 17724ba675SRob Herring 18724ba675SRob Herring /* Poweroff GPIO probably connected to CPCAP */ 19724ba675SRob Herring gpio-poweroff { 20724ba675SRob Herring compatible = "gpio-poweroff"; 21724ba675SRob Herring pinctrl-0 = <&poweroff_gpio>; 22724ba675SRob Herring pinctrl-names = "default"; 23724ba675SRob Herring gpios = <&gpio2 18 GPIO_ACTIVE_LOW>; /* gpio50 */ 24724ba675SRob Herring }; 25724ba675SRob Herring 26724ba675SRob Herring hdmi0: connector { 27724ba675SRob Herring compatible = "hdmi-connector"; 28724ba675SRob Herring pinctrl-0 = <&hdmi_hpd_gpio>; 29724ba675SRob Herring pinctrl-names = "default"; 30724ba675SRob Herring label = "hdmi"; 31724ba675SRob Herring type = "d"; 32724ba675SRob Herring 33724ba675SRob Herring hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio63 */ 34724ba675SRob Herring 35724ba675SRob Herring port { 36724ba675SRob Herring hdmi_connector_in: endpoint { 37724ba675SRob Herring remote-endpoint = <&hdmi_out>; 38724ba675SRob Herring }; 39724ba675SRob Herring }; 40724ba675SRob Herring }; 41724ba675SRob Herring 42724ba675SRob Herring /* 43724ba675SRob Herring * HDMI 5V regulator probably sourced from battery. Let's keep 44724ba675SRob Herring * keep this as always enabled for HDMI to work until we've 45724ba675SRob Herring * figured what the encoder chip is. 46724ba675SRob Herring */ 47724ba675SRob Herring hdmi_regulator: regulator-hdmi { 48724ba675SRob Herring compatible = "regulator-fixed"; 49724ba675SRob Herring regulator-name = "hdmi"; 50724ba675SRob Herring regulator-min-microvolt = <5000000>; 51724ba675SRob Herring regulator-max-microvolt = <5000000>; 52724ba675SRob Herring gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio59 */ 53724ba675SRob Herring enable-active-high; 54724ba675SRob Herring regulator-always-on; 55724ba675SRob Herring }; 56724ba675SRob Herring 57724ba675SRob Herring /* This is probably coming straight from the battery.. */ 58724ba675SRob Herring wl12xx_vmmc: regulator-wl12xx { 59724ba675SRob Herring compatible = "regulator-fixed"; 60724ba675SRob Herring regulator-name = "vwl1271"; 61724ba675SRob Herring regulator-min-microvolt = <1650000>; 62724ba675SRob Herring regulator-max-microvolt = <1650000>; 63724ba675SRob Herring gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>; /* gpio94 */ 64724ba675SRob Herring startup-delay-us = <70000>; 65724ba675SRob Herring enable-active-high; 66724ba675SRob Herring }; 67724ba675SRob Herring 68724ba675SRob Herring soundcard { 69724ba675SRob Herring compatible = "audio-graph-card"; 70724ba675SRob Herring label = "Mapphone Audio"; 71724ba675SRob Herring 72724ba675SRob Herring widgets = 73724ba675SRob Herring "Speaker", "Earpiece", 74724ba675SRob Herring "Speaker", "Loudspeaker", 75724ba675SRob Herring "Headphone", "Headphone Jack", 76724ba675SRob Herring "Microphone", "Internal Mic"; 77724ba675SRob Herring 78724ba675SRob Herring routing = 79724ba675SRob Herring "Earpiece", "EP", 80724ba675SRob Herring "Loudspeaker", "SPKR", 81724ba675SRob Herring "Headphone Jack", "HSL", 82724ba675SRob Herring "Headphone Jack", "HSR", 83724ba675SRob Herring "MICR", "Internal Mic"; 84724ba675SRob Herring 85724ba675SRob Herring dais = <&mcbsp2_port>, <&mcbsp3_port>; 86724ba675SRob Herring }; 87724ba675SRob Herring}; 88724ba675SRob Herring 89724ba675SRob Herring&cpu_thermal { 90724ba675SRob Herring polling-delay = <10000>; /* milliseconds */ 91724ba675SRob Herring}; 92724ba675SRob Herring 93724ba675SRob Herring&cpu_alert0 { 94724ba675SRob Herring temperature = <80000>; /* millicelsius */ 95724ba675SRob Herring}; 96724ba675SRob Herring 97724ba675SRob Herring&cpu0 { 98724ba675SRob Herring /* 99724ba675SRob Herring * Note that the 1.2GiHz mode is enabled for all SoC variants for 100724ba675SRob Herring * the Motorola Android Linux v3.0.8 based kernel. 101724ba675SRob Herring */ 102724ba675SRob Herring operating-points = < 103724ba675SRob Herring /* kHz uV */ 104724ba675SRob Herring 300000 1025000 105724ba675SRob Herring 600000 1200000 106724ba675SRob Herring 800000 1313000 107724ba675SRob Herring 1008000 1375000 108724ba675SRob Herring 1200000 1375000 109724ba675SRob Herring >; 110724ba675SRob Herring}; 111724ba675SRob Herring 112724ba675SRob Herring&dss { 113724ba675SRob Herring status = "okay"; 114724ba675SRob Herring}; 115724ba675SRob Herring 116724ba675SRob Herring&hdmi { 117724ba675SRob Herring status = "okay"; 118724ba675SRob Herring pinctrl-0 = <&dss_hdmi_pins>; 119724ba675SRob Herring pinctrl-names = "default"; 120724ba675SRob Herring vdda-supply = <&vdac>; 121724ba675SRob Herring 122724ba675SRob Herring port { 123724ba675SRob Herring hdmi_out: endpoint { 124724ba675SRob Herring remote-endpoint = <&hdmi_connector_in>; 125724ba675SRob Herring lanes = <1 0 3 2 5 4 7 6>; 126724ba675SRob Herring }; 127724ba675SRob Herring }; 128724ba675SRob Herring}; 129724ba675SRob Herring 130724ba675SRob Herring&i2c1 { 131724ba675SRob Herring tmp105@48 { 132724ba675SRob Herring compatible = "ti,tmp105"; 133724ba675SRob Herring reg = <0x48>; 134724ba675SRob Herring pinctrl-0 = <&tmp105_irq>; 135724ba675SRob Herring pinctrl-names = "default"; 136724ba675SRob Herring /* kpd_row0.gpio_178 */ 137724ba675SRob Herring interrupts-extended = <&gpio6 18 IRQ_TYPE_EDGE_FALLING 138724ba675SRob Herring &omap4_pmx_core 0x14e>; 139724ba675SRob Herring interrupt-names = "irq", "wakeup"; 140724ba675SRob Herring wakeup-source; 141724ba675SRob Herring }; 142724ba675SRob Herring}; 143724ba675SRob Herring 144724ba675SRob Herring&mmc1 { 145724ba675SRob Herring vmmc-supply = <&vwlan2>; 146724ba675SRob Herring bus-width = <4>; 147724ba675SRob Herring cd-gpios = <&gpio6 16 GPIO_ACTIVE_LOW>; /* gpio176 */ 148724ba675SRob Herring}; 149724ba675SRob Herring 150724ba675SRob Herring&mmc2 { 151724ba675SRob Herring vmmc-supply = <&vsdio>; 152724ba675SRob Herring bus-width = <8>; 153724ba675SRob Herring ti,non-removable; 154724ba675SRob Herring}; 155724ba675SRob Herring 156724ba675SRob Herring&mmc3 { 157724ba675SRob Herring pinctrl-names = "default"; 158724ba675SRob Herring pinctrl-0 = <&mmc3_pins>; 159724ba675SRob Herring vmmc-supply = <&wl12xx_vmmc>; 160724ba675SRob Herring /* uart2_tx.sdmmc3_dat1 pad as wakeirq */ 161724ba675SRob Herring interrupts-extended = <&wakeupgen GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH 162724ba675SRob Herring &omap4_pmx_core 0xde>; 163724ba675SRob Herring interrupt-names = "irq", "wakeup"; 164724ba675SRob Herring non-removable; 165724ba675SRob Herring bus-width = <4>; 166724ba675SRob Herring cap-power-off-card; 167724ba675SRob Herring keep-power-in-suspend; 168724ba675SRob Herring 169724ba675SRob Herring #address-cells = <1>; 170724ba675SRob Herring #size-cells = <0>; 171724ba675SRob Herring wlcore: wlcore@2 { 172724ba675SRob Herring compatible = "ti,wl1285"; 173724ba675SRob Herring reg = <2>; 174724ba675SRob Herring /* gpio_100 with gpmc_wait2 pad as wakeirq */ 175724ba675SRob Herring interrupts-extended = <&gpio4 4 IRQ_TYPE_LEVEL_HIGH>, 176724ba675SRob Herring <&omap4_pmx_core 0x4e>; 177724ba675SRob Herring interrupt-names = "irq", "wakeup"; 178724ba675SRob Herring ref-clock-frequency = <26000000>; 179724ba675SRob Herring tcxo-clock-frequency = <26000000>; 180724ba675SRob Herring }; 181724ba675SRob Herring}; 182724ba675SRob Herring 183724ba675SRob Herring&omap4_pmx_core { 184724ba675SRob Herring 185724ba675SRob Herring /* hdmi_hpd.gpio_63 */ 186724ba675SRob Herring hdmi_hpd_gpio: hdmi-hpd-pins { 187724ba675SRob Herring pinctrl-single,pins = < 188724ba675SRob Herring OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) 189724ba675SRob Herring >; 190724ba675SRob Herring }; 191724ba675SRob Herring 192724ba675SRob Herring /* hdmi_cec.hdmi_cec, hdmi_scl.hdmi_scl, hdmi_sda.hdmi_sda */ 193724ba675SRob Herring dss_hdmi_pins: dss-hdmi-pins { 194724ba675SRob Herring pinctrl-single,pins = < 195724ba675SRob Herring OMAP4_IOPAD(0x09a, PIN_INPUT | MUX_MODE0) 196724ba675SRob Herring OMAP4_IOPAD(0x09c, PIN_INPUT | MUX_MODE0) 197724ba675SRob Herring OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0) 198724ba675SRob Herring >; 199724ba675SRob Herring }; 200724ba675SRob Herring 201724ba675SRob Herring /* 202724ba675SRob Herring * Android uses PIN_OFF_INPUT_PULLDOWN | PIN_INPUT_PULLUP | MUX_MODE3 203724ba675SRob Herring * for gpio_100, but the internal pull makes wlan flakey on some 204724ba675SRob Herring * devices. Off mode value should be tested if we have off mode working 205724ba675SRob Herring * later on. 206724ba675SRob Herring */ 207724ba675SRob Herring mmc3_pins: mmc3-pins { 208724ba675SRob Herring pinctrl-single,pins = < 209724ba675SRob Herring /* 0x4a10008e gpmc_wait2.gpio_100 d23 */ 210724ba675SRob Herring OMAP4_IOPAD(0x08e, PIN_INPUT | MUX_MODE3) 211724ba675SRob Herring 212724ba675SRob Herring /* 0x4a100102 abe_mcbsp1_dx.sdmmc3_dat2 ab25 */ 213724ba675SRob Herring OMAP4_IOPAD(0x102, PIN_INPUT_PULLUP | MUX_MODE1) 214724ba675SRob Herring 215724ba675SRob Herring /* 0x4a100104 abe_mcbsp1_fsx.sdmmc3_dat3 ac27 */ 216724ba675SRob Herring OMAP4_IOPAD(0x104, PIN_INPUT_PULLUP | MUX_MODE1) 217724ba675SRob Herring 218724ba675SRob Herring /* 0x4a100118 uart2_cts.sdmmc3_clk ab26 */ 219724ba675SRob Herring OMAP4_IOPAD(0x118, PIN_INPUT | MUX_MODE1) 220724ba675SRob Herring 221724ba675SRob Herring /* 0x4a10011a uart2_rts.sdmmc3_cmd ab27 */ 222724ba675SRob Herring OMAP4_IOPAD(0x11a, PIN_INPUT_PULLUP | MUX_MODE1) 223724ba675SRob Herring 224724ba675SRob Herring /* 0x4a10011c uart2_rx.sdmmc3_dat0 aa25 */ 225724ba675SRob Herring OMAP4_IOPAD(0x11c, PIN_INPUT_PULLUP | MUX_MODE1) 226724ba675SRob Herring 227724ba675SRob Herring /* 0x4a10011e uart2_tx.sdmmc3_dat1 aa26 */ 228724ba675SRob Herring OMAP4_IOPAD(0x11e, PIN_INPUT_PULLUP | MUX_MODE1) 229724ba675SRob Herring >; 230724ba675SRob Herring }; 231724ba675SRob Herring 232724ba675SRob Herring /* gpmc_ncs0.gpio_50 */ 233724ba675SRob Herring poweroff_gpio: poweroff-pins { 234724ba675SRob Herring pinctrl-single,pins = < 235724ba675SRob Herring OMAP4_IOPAD(0x074, PIN_OUTPUT_PULLUP | MUX_MODE3) 236724ba675SRob Herring >; 237724ba675SRob Herring }; 238724ba675SRob Herring 239724ba675SRob Herring /* kpd_row0.gpio_178 */ 240724ba675SRob Herring tmp105_irq: tmp105-irq-pins { 241724ba675SRob Herring pinctrl-single,pins = < 242724ba675SRob Herring OMAP4_IOPAD(0x18e, PIN_INPUT_PULLUP | MUX_MODE3) 243724ba675SRob Herring >; 244724ba675SRob Herring }; 245724ba675SRob Herring 246724ba675SRob Herring usb_gpio_mux_sel1: usb-gpio-mux-sel1-pins { 247724ba675SRob Herring /* gpio_60 */ 248724ba675SRob Herring pinctrl-single,pins = < 249724ba675SRob Herring OMAP4_IOPAD(0x088, PIN_OUTPUT | MUX_MODE3) 250724ba675SRob Herring >; 251724ba675SRob Herring }; 252724ba675SRob Herring 253724ba675SRob Herring usb_ulpi_pins: usb-ulpi-pins { 254724ba675SRob Herring pinctrl-single,pins = < 255724ba675SRob Herring OMAP4_IOPAD(0x196, MUX_MODE7) 256724ba675SRob Herring OMAP4_IOPAD(0x198, MUX_MODE7) 257724ba675SRob Herring OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE0) 258724ba675SRob Herring OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE0) 259724ba675SRob Herring OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE0) 260724ba675SRob Herring OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE0) 261724ba675SRob Herring OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE0) 262724ba675SRob Herring OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE0) 263724ba675SRob Herring OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE0) 264724ba675SRob Herring OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE0) 265724ba675SRob Herring OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE0) 266724ba675SRob Herring OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE0) 267724ba675SRob Herring OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE0) 268724ba675SRob Herring OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE0) 269724ba675SRob Herring >; 270724ba675SRob Herring }; 271724ba675SRob Herring 272724ba675SRob Herring /* usb0_otg_dp and usb0_otg_dm */ 273724ba675SRob Herring usb_utmi_pins: usb-utmi-pins { 274724ba675SRob Herring pinctrl-single,pins = < 275724ba675SRob Herring OMAP4_IOPAD(0x196, PIN_INPUT | MUX_MODE0) 276724ba675SRob Herring OMAP4_IOPAD(0x198, PIN_INPUT | MUX_MODE0) 277724ba675SRob Herring OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7) 278724ba675SRob Herring OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7) 279724ba675SRob Herring OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7) 280724ba675SRob Herring OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7) 281724ba675SRob Herring OMAP4_IOPAD(0x1ba, PIN_INPUT_PULLUP | MUX_MODE7) 282724ba675SRob Herring OMAP4_IOPAD(0x1bc, PIN_INPUT_PULLUP | MUX_MODE7) 283724ba675SRob Herring OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7) 284724ba675SRob Herring OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7) 285724ba675SRob Herring OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7) 286724ba675SRob Herring OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7) 287724ba675SRob Herring OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7) 288724ba675SRob Herring OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7) 289724ba675SRob Herring >; 290724ba675SRob Herring }; 291724ba675SRob Herring 292724ba675SRob Herring /* 293724ba675SRob Herring * Note that the v3.0.8 stock userspace dynamically remuxes uart1 294724ba675SRob Herring * rts pin probably for PM purposes to PIN_INPUT_PULLUP | MUX_MODE7 295724ba675SRob Herring * when not used. If needed, we can add rts pin remux later based 296724ba675SRob Herring * on power measurements. 297724ba675SRob Herring */ 298724ba675SRob Herring uart1_pins: uart1-pins { 299724ba675SRob Herring pinctrl-single,pins = < 300724ba675SRob Herring /* 0x4a10013c mcspi1_cs2.uart1_cts ag23 */ 301724ba675SRob Herring OMAP4_IOPAD(0x13c, PIN_INPUT_PULLUP | MUX_MODE1) 302724ba675SRob Herring 303724ba675SRob Herring /* 0x4a10013e mcspi1_cs3.uart1_rts ah23 */ 304724ba675SRob Herring OMAP4_IOPAD(0x13e, MUX_MODE1) 305724ba675SRob Herring 306724ba675SRob Herring /* 0x4a100140 uart3_cts_rctx.uart1_tx f27 */ 307724ba675SRob Herring OMAP4_IOPAD(0x140, PIN_OUTPUT | MUX_MODE1) 308724ba675SRob Herring 309724ba675SRob Herring /* 0x4a1001ca dpm_emu14.uart1_rx aa3 */ 310724ba675SRob Herring OMAP4_IOPAD(0x1ca, PIN_INPUT_PULLUP | MUX_MODE2) 311724ba675SRob Herring >; 312724ba675SRob Herring }; 313724ba675SRob Herring 314724ba675SRob Herring /* uart3_tx_irtx and uart3_rx_irrx */ 315724ba675SRob Herring uart3_pins: uart3-pins { 316724ba675SRob Herring pinctrl-single,pins = < 317724ba675SRob Herring OMAP4_IOPAD(0x196, MUX_MODE7) 318724ba675SRob Herring OMAP4_IOPAD(0x198, MUX_MODE7) 319724ba675SRob Herring OMAP4_IOPAD(0x1b2, PIN_INPUT_PULLUP | MUX_MODE7) 320724ba675SRob Herring OMAP4_IOPAD(0x1b4, PIN_INPUT_PULLUP | MUX_MODE7) 321724ba675SRob Herring OMAP4_IOPAD(0x1b6, PIN_INPUT_PULLUP | MUX_MODE7) 322724ba675SRob Herring OMAP4_IOPAD(0x1b8, PIN_INPUT_PULLUP | MUX_MODE7) 323724ba675SRob Herring OMAP4_IOPAD(0x1ba, MUX_MODE2) 324724ba675SRob Herring OMAP4_IOPAD(0x1bc, PIN_INPUT | MUX_MODE2) 325724ba675SRob Herring OMAP4_IOPAD(0x1be, PIN_INPUT_PULLUP | MUX_MODE7) 326724ba675SRob Herring OMAP4_IOPAD(0x1c0, PIN_INPUT_PULLUP | MUX_MODE7) 327724ba675SRob Herring OMAP4_IOPAD(0x1c2, PIN_INPUT_PULLUP | MUX_MODE7) 328724ba675SRob Herring OMAP4_IOPAD(0x1c4, PIN_INPUT_PULLUP | MUX_MODE7) 329724ba675SRob Herring OMAP4_IOPAD(0x1c6, PIN_INPUT_PULLUP | MUX_MODE7) 330724ba675SRob Herring OMAP4_IOPAD(0x1c8, PIN_INPUT_PULLUP | MUX_MODE7) 331724ba675SRob Herring >; 332724ba675SRob Herring }; 333724ba675SRob Herring 334724ba675SRob Herring uart4_pins: uart4-pins { 335724ba675SRob Herring pinctrl-single,pins = < 336724ba675SRob Herring OMAP4_IOPAD(0x15c, PIN_INPUT | MUX_MODE0) /* uart4_rx */ 337724ba675SRob Herring OMAP4_IOPAD(0x15e, PIN_OUTPUT | MUX_MODE0) /* uart4_tx */ 338724ba675SRob Herring OMAP4_IOPAD(0x110, PIN_INPUT_PULLUP | MUX_MODE5) /* uart4_cts */ 339724ba675SRob Herring OMAP4_IOPAD(0x112, PIN_OUTPUT_PULLUP | MUX_MODE5) /* uart4_rts */ 340724ba675SRob Herring >; 341724ba675SRob Herring }; 342724ba675SRob Herring 343724ba675SRob Herring mcbsp2_pins: mcbsp2-pins { 344724ba675SRob Herring pinctrl-single,pins = < 345724ba675SRob Herring OMAP4_IOPAD(0x0f6, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_clkx */ 346724ba675SRob Herring OMAP4_IOPAD(0x0f8, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_dr */ 347724ba675SRob Herring OMAP4_IOPAD(0x0fa, PIN_OUTPUT | MUX_MODE0) /* abe_mcbsp2_dx */ 348724ba675SRob Herring OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0) /* abe_mcbsp2_fsx */ 349724ba675SRob Herring >; 350724ba675SRob Herring }; 351724ba675SRob Herring 352724ba675SRob Herring mcbsp3_pins: mcbsp3-pins { 353724ba675SRob Herring pinctrl-single,pins = < 354724ba675SRob Herring OMAP4_IOPAD(0x106, PIN_INPUT | MUX_MODE1) /* abe_mcbsp3_dr */ 355724ba675SRob Herring OMAP4_IOPAD(0x108, PIN_OUTPUT | MUX_MODE1) /* abe_mcbsp3_dx */ 356724ba675SRob Herring OMAP4_IOPAD(0x10a, PIN_INPUT | MUX_MODE1) /* abe_mcbsp3_clkx */ 357724ba675SRob Herring OMAP4_IOPAD(0x10c, PIN_INPUT | MUX_MODE1) /* abe_mcbsp3_fsx */ 358724ba675SRob Herring >; 359724ba675SRob Herring }; 360724ba675SRob Herring}; 361724ba675SRob Herring 362724ba675SRob Herring&omap4_pmx_wkup { 363724ba675SRob Herring usb_gpio_mux_sel2: usb-gpio-mux-sel2-pins { 364724ba675SRob Herring /* gpio_wk0 */ 365724ba675SRob Herring pinctrl-single,pins = < 366724ba675SRob Herring OMAP4_IOPAD(0x040, PIN_OUTPUT_PULLDOWN | MUX_MODE3) 367724ba675SRob Herring >; 368724ba675SRob Herring }; 369724ba675SRob Herring}; 370724ba675SRob Herring 371724ba675SRob Herring/* RNG is used by secure mode and not accessible */ 372724ba675SRob Herring&rng_target { 373724ba675SRob Herring status = "disabled"; 374724ba675SRob Herring}; 375724ba675SRob Herring 376724ba675SRob Herring/* 377724ba675SRob Herring * The uart1 port is wired to mdm6600 with rts and cts. The modem uses gpio_149 378724ba675SRob Herring * for wake-up events for both the USB PHY and the UART. We can use gpio_149 379724ba675SRob Herring * pad as the shared wakeirq for the UART rather than the RX or CTS pad as we 380724ba675SRob Herring * have gpio_149 trigger before the UART transfer starts. 381724ba675SRob Herring */ 382724ba675SRob Herring&uart1 { 383724ba675SRob Herring pinctrl-names = "default"; 384724ba675SRob Herring pinctrl-0 = <&uart1_pins>; 385724ba675SRob Herring interrupts-extended = <&wakeupgen GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH 386724ba675SRob Herring &omap4_pmx_core 0x110>; 387724ba675SRob Herring uart-has-rtscts; 388724ba675SRob Herring current-speed = <115200>; 389724ba675SRob Herring}; 390724ba675SRob Herring 391724ba675SRob Herring&uart3 { 392724ba675SRob Herring interrupts-extended = <&wakeupgen GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH 393724ba675SRob Herring &omap4_pmx_core 0x17c>; 394*5ad37b5eSTony Lindgren overrun-throttle-ms = <500>; 395724ba675SRob Herring}; 396724ba675SRob Herring 397724ba675SRob Herring&uart4 { 398724ba675SRob Herring pinctrl-names = "default"; 399724ba675SRob Herring pinctrl-0 = <&uart4_pins>; 400724ba675SRob Herring 401724ba675SRob Herring bluetooth { 402724ba675SRob Herring compatible = "ti,wl1285-st"; 403724ba675SRob Herring enable-gpios = <&gpio6 14 GPIO_ACTIVE_HIGH>; /* gpio 174 */ 404724ba675SRob Herring max-speed = <3686400>; 405724ba675SRob Herring }; 406724ba675SRob Herring}; 407724ba675SRob Herring 408724ba675SRob Herring/* Internal UTMI+ PHY used for OTG, CPCAP ULPI PHY for detection and charger */ 409724ba675SRob Herring&usb_otg_hs { 410724ba675SRob Herring interface-type = <1>; 411724ba675SRob Herring mode = <3>; 412724ba675SRob Herring 413724ba675SRob Herring /* 414724ba675SRob Herring * Max 300 mA steps based on similar PMIC MC13783UG.pdf "Table 10-4. 415724ba675SRob Herring * VBUS Regulator Main Characteristics". Binding uses 2 mA units. 416724ba675SRob Herring */ 417724ba675SRob Herring power = <150>; 418724ba675SRob Herring}; 419724ba675SRob Herring 420724ba675SRob Herring&mcbsp2 { 421724ba675SRob Herring #sound-dai-cells = <0>; 422724ba675SRob Herring pinctrl-names = "default"; 423724ba675SRob Herring pinctrl-0 = <&mcbsp2_pins>; 424724ba675SRob Herring status = "okay"; 425724ba675SRob Herring 426724ba675SRob Herring mcbsp2_port: port { 427724ba675SRob Herring cpu_dai2: endpoint { 428724ba675SRob Herring dai-format = "i2s"; 429724ba675SRob Herring remote-endpoint = <&cpcap_audio_codec0>; 430724ba675SRob Herring frame-master = <&cpcap_audio_codec0>; 431724ba675SRob Herring bitclock-master = <&cpcap_audio_codec0>; 432724ba675SRob Herring }; 433724ba675SRob Herring }; 434724ba675SRob Herring}; 435724ba675SRob Herring 436724ba675SRob Herring&mcbsp3 { 437724ba675SRob Herring #sound-dai-cells = <0>; 438724ba675SRob Herring pinctrl-names = "default"; 439724ba675SRob Herring pinctrl-0 = <&mcbsp3_pins>; 440724ba675SRob Herring status = "okay"; 441724ba675SRob Herring 442724ba675SRob Herring mcbsp3_port: port { 443724ba675SRob Herring cpu_dai3: endpoint { 444724ba675SRob Herring dai-format = "dsp_a"; 445724ba675SRob Herring frame-master = <&cpcap_audio_codec1>; 446724ba675SRob Herring bitclock-master = <&cpcap_audio_codec1>; 447724ba675SRob Herring remote-endpoint = <&cpcap_audio_codec1>; 448724ba675SRob Herring }; 449724ba675SRob Herring }; 450724ba675SRob Herring}; 451724ba675SRob Herring 452724ba675SRob Herring&cpcap_audio_codec0 { 453724ba675SRob Herring remote-endpoint = <&cpu_dai2>; 454724ba675SRob Herring}; 455724ba675SRob Herring 456724ba675SRob Herring&cpcap_audio_codec1 { 457724ba675SRob Herring remote-endpoint = <&cpu_dai3>; 458724ba675SRob Herring}; 459