1b8dbec5fSAdam Ford/* 2b8dbec5fSAdam Ford * Copyright (C) 2016 Derald D. Woods <woods.technical@gmail.com> 3b8dbec5fSAdam Ford * 4b8dbec5fSAdam Ford * Based on am3517-evm.dts 5b8dbec5fSAdam Ford * 6b8dbec5fSAdam Ford * This program is free software; you can redistribute it and/or modify 7b8dbec5fSAdam Ford * it under the terms of the GNU General Public License version 2 as 8b8dbec5fSAdam Ford * published by the Free Software Foundation. 9b8dbec5fSAdam Ford */ 10b8dbec5fSAdam Ford 11b8dbec5fSAdam Ford/ { 12b8dbec5fSAdam Ford cpus { 13b8dbec5fSAdam Ford cpu@0 { 14b8dbec5fSAdam Ford cpu0-supply = <&vdd_core_reg>; 15b8dbec5fSAdam Ford }; 16b8dbec5fSAdam Ford }; 17*c3b89468SAdam Ford 18*c3b89468SAdam Ford wl12xx_buffer: wl12xx_buf { 19*c3b89468SAdam Ford compatible = "regulator-fixed"; 20*c3b89468SAdam Ford regulator-name = "wl1271_buf"; 21*c3b89468SAdam Ford regulator-min-microvolt = <1800000>; 22*c3b89468SAdam Ford regulator-max-microvolt = <1800000>; 23*c3b89468SAdam Ford pinctrl-names = "default"; 24*c3b89468SAdam Ford pinctrl-0 = <&wl12xx_buffer_pins>; 25*c3b89468SAdam Ford gpio = <&gpio5 1 GPIO_ACTIVE_LOW>; /* gpio 129 */ 26*c3b89468SAdam Ford regulator-always-on; 27*c3b89468SAdam Ford vin-supply = <&vdd_1v8_reg>; 28*c3b89468SAdam Ford }; 29*c3b89468SAdam Ford 30*c3b89468SAdam Ford wl12xx_vmmc2: wl12xx_vmmc2 { 31*c3b89468SAdam Ford compatible = "regulator-fixed"; 32*c3b89468SAdam Ford regulator-name = "vwl1271"; 33*c3b89468SAdam Ford regulator-min-microvolt = <1800000>; 34*c3b89468SAdam Ford regulator-max-microvolt = <1800000>; 35*c3b89468SAdam Ford pinctrl-names = "default"; 36*c3b89468SAdam Ford pinctrl-0 = <&wl12xx_wkup_pins>; 37*c3b89468SAdam Ford gpio = <&gpio1 3 GPIO_ACTIVE_HIGH >; /* gpio 3 */ 38*c3b89468SAdam Ford startup-delay-us = <70000>; 39*c3b89468SAdam Ford enable-active-high; 40*c3b89468SAdam Ford regulator-always-on; 41*c3b89468SAdam Ford vin-supply = <&wl12xx_buffer>; 42*c3b89468SAdam Ford }; 43b8dbec5fSAdam Ford}; 44b8dbec5fSAdam Ford 45b8dbec5fSAdam Ford&gpmc { 46b8dbec5fSAdam Ford ranges = <0 0 0x30000000 0x1000000>; /* CS0: 16MB for NAND */ 47b8dbec5fSAdam Ford 48b8dbec5fSAdam Ford nand@0,0 { 49b8dbec5fSAdam Ford compatible = "ti,omap2-nand"; 50b8dbec5fSAdam Ford linux,mtd-name = "micron,mt29f4g16abchch"; 51b8dbec5fSAdam Ford reg = <0 0 4>; /* CS0, offset 0, IO size 4 */ 52b8dbec5fSAdam Ford nand-bus-width = <16>; 53b8dbec5fSAdam Ford ti,nand-ecc-opt = "bch8"; 54b8dbec5fSAdam Ford gpmc,sync-clk-ps = <0>; 55b8dbec5fSAdam Ford gpmc,cs-on-ns = <0>; 56b8dbec5fSAdam Ford gpmc,cs-rd-off-ns = <44>; 57b8dbec5fSAdam Ford gpmc,cs-wr-off-ns = <44>; 58b8dbec5fSAdam Ford gpmc,adv-on-ns = <6>; 59b8dbec5fSAdam Ford gpmc,adv-rd-off-ns = <34>; 60b8dbec5fSAdam Ford gpmc,adv-wr-off-ns = <44>; 61b8dbec5fSAdam Ford gpmc,we-off-ns = <40>; 62b8dbec5fSAdam Ford gpmc,oe-off-ns = <54>; 63b8dbec5fSAdam Ford gpmc,access-ns = <64>; 64b8dbec5fSAdam Ford gpmc,rd-cycle-ns = <82>; 65b8dbec5fSAdam Ford gpmc,wr-cycle-ns = <82>; 66b8dbec5fSAdam Ford gpmc,wr-access-ns = <40>; 67b8dbec5fSAdam Ford gpmc,wr-data-mux-bus-ns = <0>; 68b8dbec5fSAdam Ford gpmc,device-width = <2>; 69b8dbec5fSAdam Ford #address-cells = <1>; 70b8dbec5fSAdam Ford #size-cells = <1>; 71b8dbec5fSAdam Ford }; 72b8dbec5fSAdam Ford}; 73b8dbec5fSAdam Ford 74b8dbec5fSAdam Ford&i2c1 { 75b8dbec5fSAdam Ford clock-frequency = <400000>; 76b8dbec5fSAdam Ford 77b8dbec5fSAdam Ford s35390a: s35390a@30 { 78b8dbec5fSAdam Ford compatible = "sii,s35390a"; 79b8dbec5fSAdam Ford reg = <0x30>; 80b8dbec5fSAdam Ford 81b8dbec5fSAdam Ford pinctrl-names = "default"; 82b8dbec5fSAdam Ford pinctrl-0 = <&rtc_pins>; 83b8dbec5fSAdam Ford interrupts-extended = <&gpio2 23 IRQ_TYPE_EDGE_FALLING>; /* gpio_55 */ 84b8dbec5fSAdam Ford }; 85b8dbec5fSAdam Ford 86b8dbec5fSAdam Ford tps: tps65023@48 { 87b8dbec5fSAdam Ford compatible = "ti,tps65023"; 88b8dbec5fSAdam Ford reg = <0x48>; 89b8dbec5fSAdam Ford 90b8dbec5fSAdam Ford regulators { 91b8dbec5fSAdam Ford vdd_core_reg: VDCDC1 { 92b8dbec5fSAdam Ford regulator-name = "vdd_core"; 93b8dbec5fSAdam Ford regulator-always-on; 94b8dbec5fSAdam Ford regulator-min-microvolt = <1200000>; 95b8dbec5fSAdam Ford regulator-max-microvolt = <1200000>; 96b8dbec5fSAdam Ford }; 97b8dbec5fSAdam Ford 98b8dbec5fSAdam Ford vdd_io_reg: VDCDC2 { 99b8dbec5fSAdam Ford regulator-name = "vdd_io"; 100b8dbec5fSAdam Ford regulator-always-on; 101b8dbec5fSAdam Ford regulator-min-microvolt = <3300000>; 102b8dbec5fSAdam Ford regulator-max-microvolt = <3300000>; 103b8dbec5fSAdam Ford }; 104b8dbec5fSAdam Ford 105b8dbec5fSAdam Ford vdd_1v8_reg: VDCDC3 { 106b8dbec5fSAdam Ford regulator-name = "vdd_1v8"; 107b8dbec5fSAdam Ford regulator-always-on; 108b8dbec5fSAdam Ford regulator-min-microvolt = <1800000>; 109b8dbec5fSAdam Ford regulator-max-microvolt = <1800000>; 110b8dbec5fSAdam Ford }; 111b8dbec5fSAdam Ford 112b8dbec5fSAdam Ford vdd_usb18_reg: LDO1 { 113b8dbec5fSAdam Ford regulator-name = "vdd_usb18"; 114b8dbec5fSAdam Ford regulator-always-on; 115b8dbec5fSAdam Ford regulator-min-microvolt = <1800000>; 116b8dbec5fSAdam Ford regulator-max-microvolt = <1800000>; 117b8dbec5fSAdam Ford }; 118b8dbec5fSAdam Ford 119b8dbec5fSAdam Ford vdd_usb33_reg: LDO2 { 120b8dbec5fSAdam Ford regulator-name = "vdd_usb33"; 121b8dbec5fSAdam Ford regulator-always-on; 122b8dbec5fSAdam Ford regulator-min-microvolt = <3300000>; 123b8dbec5fSAdam Ford regulator-max-microvolt = <3300000>; 124b8dbec5fSAdam Ford }; 125b8dbec5fSAdam Ford }; 126b8dbec5fSAdam Ford }; 127b8dbec5fSAdam Ford 128b8dbec5fSAdam Ford touchscreen: tsc2004@4b { 129b8dbec5fSAdam Ford compatible = "ti,tsc2004"; 130b8dbec5fSAdam Ford reg = <0x4b>; 131b8dbec5fSAdam Ford 132b8dbec5fSAdam Ford vio-supply = <&vdd_io_reg>; 133b8dbec5fSAdam Ford 134b8dbec5fSAdam Ford pinctrl-names = "default"; 135b8dbec5fSAdam Ford pinctrl-0 = <&tsc2004_pins>; 136b8dbec5fSAdam Ford interrupts-extended = <&gpio3 1 IRQ_TYPE_EDGE_RISING>; /* gpio_65 */ 137b8dbec5fSAdam Ford 138b8dbec5fSAdam Ford touchscreen-fuzz-x = <4>; 139b8dbec5fSAdam Ford touchscreen-fuzz-y = <7>; 140b8dbec5fSAdam Ford touchscreen-fuzz-pressure = <2>; 141b8dbec5fSAdam Ford touchscreen-size-x = <480>; 142b8dbec5fSAdam Ford touchscreen-size-y = <272>; 143b8dbec5fSAdam Ford touchscreen-max-pressure = <2048>; 144b8dbec5fSAdam Ford 145b8dbec5fSAdam Ford ti,x-plate-ohms = <280>; 146b8dbec5fSAdam Ford ti,esd-recovery-timeout-ms = <8000>; 147b8dbec5fSAdam Ford }; 148b8dbec5fSAdam Ford}; 149b8dbec5fSAdam Ford 150*c3b89468SAdam Ford&mmc2 { 151*c3b89468SAdam Ford interrupts-extended = <&intc 86 /* &omap3_pmx_core 0x12c */>; 152*c3b89468SAdam Ford 153*c3b89468SAdam Ford status = "okay"; 154*c3b89468SAdam Ford pinctrl-names = "default"; 155*c3b89468SAdam Ford pinctrl-0 = <&mmc2_pins>; 156*c3b89468SAdam Ford vmmc-supply = <&wl12xx_vmmc2>; 157*c3b89468SAdam Ford non-removable; 158*c3b89468SAdam Ford bus-width = <4>; 159*c3b89468SAdam Ford cap-power-off-card; 160*c3b89468SAdam Ford #address-cells = <1>; 161*c3b89468SAdam Ford #size-cells = <0>; 162*c3b89468SAdam Ford wlcore: wlcore@2 { 163*c3b89468SAdam Ford compatible = "ti,wl1271"; 164*c3b89468SAdam Ford reg = <2>; 165*c3b89468SAdam Ford interrupt-parent = <&gpio6>; 166*c3b89468SAdam Ford interrupts = <10 IRQ_TYPE_LEVEL_HIGH>; /* gpio_170 */ 167*c3b89468SAdam Ford ref-clock-frequency = <26000000>; 168*c3b89468SAdam Ford tcxo-clock-frequency = <26000000>; 169*c3b89468SAdam Ford }; 170*c3b89468SAdam Ford}; 171*c3b89468SAdam Ford 172*c3b89468SAdam Ford&uart2 { 173*c3b89468SAdam Ford pinctrl-names = "default"; 174*c3b89468SAdam Ford pinctrl-0 = <&uart2_pins>; 175*c3b89468SAdam Ford 176*c3b89468SAdam Ford bluetooth { 177*c3b89468SAdam Ford compatible = "ti,wl1271-st"; 178*c3b89468SAdam Ford enable-gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>; /* gpio 56 */ 179*c3b89468SAdam Ford max-speed = <3000000>; 180*c3b89468SAdam Ford }; 181*c3b89468SAdam Ford}; 182*c3b89468SAdam Ford 183b8dbec5fSAdam Ford&omap3_pmx_core { 184b8dbec5fSAdam Ford 185*c3b89468SAdam Ford wl12xx_buffer_pins: pinmux_wl12xx_buffer_pins { 186*c3b89468SAdam Ford pinctrl-single,pins = < 187*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2156, PIN_OUTPUT | MUX_MODE4) /* mmc1_dat7.gpio_129 */ 188*c3b89468SAdam Ford >; 189*c3b89468SAdam Ford }; 190*c3b89468SAdam Ford 191*c3b89468SAdam Ford mmc2_pins: pinmux_mmc2_pins { 192*c3b89468SAdam Ford pinctrl-single,pins = < 193*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_clk.mmc2_clk */ 194*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_cmd.mmc2_cmd */ 195*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_dat0.mmc2_dat0 */ 196*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_dat1.mmc2_dat1 */ 197*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_dat2.mmc2_dat2 */ 198*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc2_dat3.mmc2_dat3 */ 199*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2164, PIN_OUTPUT | MUX_MODE1) /* mmc2_dat4.mmc2_dir_dat0 */ 200*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2166, PIN_OUTPUT | MUX_MODE1) /* mmc2_dat5.mmc2_dir_dat1 */ 201*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2168, PIN_OUTPUT | MUX_MODE1) /* mmc2_dat6.mmc2_dir_cmd */ 202*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x216a, PIN_INPUT | MUX_MODE1) /* mmc2_dat7.mmc2_clkin */ 203*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x21c6, PIN_INPUT_PULLUP | MUX_MODE4) /* hdq_sio.gpio_170 */ 204*c3b89468SAdam Ford >; 205*c3b89468SAdam Ford }; 206*c3b89468SAdam Ford 207b8dbec5fSAdam Ford rtc_pins: pinmux_rtc_pins { 208b8dbec5fSAdam Ford pinctrl-single,pins = < 209b8dbec5fSAdam Ford OMAP3_CORE1_IOPAD(0x20b6, PIN_INPUT_PULLUP | MUX_MODE4) /* gpmc_ncs4.gpio_55 */ 210b8dbec5fSAdam Ford >; 211b8dbec5fSAdam Ford }; 212b8dbec5fSAdam Ford 213b8dbec5fSAdam Ford tsc2004_pins: pinmux_tsc2004_pins { 214b8dbec5fSAdam Ford pinctrl-single,pins = < 215b8dbec5fSAdam Ford OMAP3_CORE1_IOPAD(0x20d2, PIN_INPUT | MUX_MODE4) /* gpmc_wait3.gpio_65 */ 216b8dbec5fSAdam Ford >; 217b8dbec5fSAdam Ford }; 218*c3b89468SAdam Ford 219*c3b89468SAdam Ford uart2_pins: pinmux_uart2_pins { 220*c3b89468SAdam Ford pinctrl-single,pins = < 221*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts */ 222*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT_PULLUP | MUX_MODE0) /* uart2_rts */ 223*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx */ 224*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx */ 225*c3b89468SAdam Ford OMAP3_CORE1_IOPAD(0x20b8, PIN_INPUT | MUX_MODE0) /* gpio_56 */ 226*c3b89468SAdam Ford >; 227*c3b89468SAdam Ford }; 228*c3b89468SAdam Ford}; 229*c3b89468SAdam Ford 230*c3b89468SAdam Ford&omap3_pmx_wkup { 231*c3b89468SAdam Ford 232*c3b89468SAdam Ford wl12xx_wkup_pins: pinmux_wl12xx_wkup_pins { 233*c3b89468SAdam Ford pinctrl-single,pins = < 234*c3b89468SAdam Ford OMAP3_WKUP_IOPAD(0x2a0c, PIN_OUTPUT | MUX_MODE4) /* sys_boot1.gpio_3 */ 235*c3b89468SAdam Ford >; 236*c3b89468SAdam Ford }; 237b8dbec5fSAdam Ford}; 238