1/* 2 * Copyright (c) 2015, The Linux Foundation. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 and 6 * only version 2 as published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 */ 13 14#include "msm8916.dtsi" 15#include "pm8916.dtsi" 16#include "apq8016-sbc-soc-pins.dtsi" 17#include "apq8016-sbc-pmic-pins.dtsi" 18 19/ { 20 aliases { 21 serial0 = &blsp1_uart2; 22 serial1 = &blsp1_uart1; 23 usid0 = &pm8916_0; 24 i2c0 = &blsp_i2c2; 25 i2c1 = &blsp_i2c6; 26 i2c3 = &blsp_i2c4; 27 spi0 = &blsp_spi5; 28 spi1 = &blsp_spi3; 29 }; 30 31 chosen { 32 stdout-path = "serial0"; 33 }; 34 35 soc { 36 dma@7884000 { 37 status = "okay"; 38 }; 39 40 serial@78af000 { 41 label = "LS-UART0"; 42 status = "okay"; 43 pinctrl-names = "default", "sleep"; 44 pinctrl-0 = <&blsp1_uart1_default>; 45 pinctrl-1 = <&blsp1_uart1_sleep>; 46 }; 47 48 serial@78b0000 { 49 label = "LS-UART1"; 50 status = "okay"; 51 pinctrl-names = "default", "sleep"; 52 pinctrl-0 = <&blsp1_uart2_default>; 53 pinctrl-1 = <&blsp1_uart2_sleep>; 54 }; 55 56 i2c@78b6000 { 57 /* On Low speed expansion */ 58 label = "LS-I2C0"; 59 status = "okay"; 60 }; 61 62 i2c@78b8000 { 63 /* On High speed expansion */ 64 label = "HS-I2C2"; 65 status = "okay"; 66 67 adv_bridge: bridge@39 { 68 status = "okay"; 69 70 compatible = "adi,adv7533"; 71 reg = <0x39>; 72 73 interrupt-parent = <&msmgpio>; 74 interrupts = <31 2>; 75 76 adi,dsi-lanes = <4>; 77 78 pd-gpios = <&msmgpio 32 0>; 79 80 avdd-supply = <&pm8916_l6>; 81 v1p2-supply = <&pm8916_l6>; 82 v3p3-supply = <&pm8916_l17>; 83 84 pinctrl-names = "default","sleep"; 85 pinctrl-0 = <&adv7533_int_active &adv7533_switch_active>; 86 pinctrl-1 = <&adv7533_int_suspend &adv7533_switch_suspend>; 87 88 ports { 89 #address-cells = <1>; 90 #size-cells = <0>; 91 92 port@0 { 93 reg = <0>; 94 adv7533_in: endpoint { 95 remote-endpoint = <&dsi0_out>; 96 }; 97 }; 98 99 port@1 { 100 reg = <1>; 101 adv7533_out: endpoint { 102 remote-endpoint = <&hdmi_con>; 103 }; 104 }; 105 }; 106 }; 107 }; 108 109 i2c@78ba000 { 110 /* On Low speed expansion */ 111 label = "LS-I2C1"; 112 status = "okay"; 113 }; 114 115 spi@78b7000 { 116 /* On High speed expansion */ 117 label = "HS-SPI1"; 118 status = "okay"; 119 }; 120 121 spi@78b9000 { 122 /* On Low speed expansion */ 123 label = "LS-SPI0"; 124 status = "okay"; 125 }; 126 127 leds { 128 pinctrl-names = "default"; 129 pinctrl-0 = <&msmgpio_leds>, 130 <&pm8916_gpios_leds>, 131 <&pm8916_mpps_leds>; 132 133 compatible = "gpio-leds"; 134 135 led@1 { 136 label = "apq8016-sbc:green:user1"; 137 gpios = <&msmgpio 21 GPIO_ACTIVE_HIGH>; 138 linux,default-trigger = "heartbeat"; 139 default-state = "off"; 140 }; 141 142 led@2 { 143 label = "apq8016-sbc:green:user2"; 144 gpios = <&msmgpio 120 GPIO_ACTIVE_HIGH>; 145 linux,default-trigger = "mmc0"; 146 default-state = "off"; 147 }; 148 149 led@3 { 150 label = "apq8016-sbc:green:user3"; 151 gpios = <&pm8916_gpios 1 GPIO_ACTIVE_HIGH>; 152 linux,default-trigger = "mmc1"; 153 default-state = "off"; 154 }; 155 156 led@4 { 157 label = "apq8016-sbc:green:user4"; 158 gpios = <&pm8916_gpios 2 GPIO_ACTIVE_HIGH>; 159 linux,default-trigger = "none"; 160 default-state = "off"; 161 }; 162 163 led@5 { 164 label = "apq8016-sbc:yellow:wlan"; 165 gpios = <&pm8916_mpps 2 GPIO_ACTIVE_HIGH>; 166 linux,default-trigger = "wlan"; 167 default-state = "off"; 168 }; 169 170 led@6 { 171 label = "apq8016-sbc:blue:bt"; 172 gpios = <&pm8916_mpps 3 GPIO_ACTIVE_HIGH>; 173 linux,default-trigger = "bt"; 174 default-state = "off"; 175 }; 176 }; 177 178 sdhci@07824000 { 179 vmmc-supply = <&pm8916_l8>; 180 vqmmc-supply = <&pm8916_l5>; 181 182 pinctrl-names = "default", "sleep"; 183 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; 184 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; 185 status = "okay"; 186 }; 187 188 sdhci@07864000 { 189 vmmc-supply = <&pm8916_l11>; 190 vqmmc-supply = <&pm8916_l12>; 191 192 pinctrl-names = "default", "sleep"; 193 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; 194 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; 195 196 cd-gpios = <&msmgpio 38 0x1>; 197 status = "okay"; 198 }; 199 200 usb@78d9000 { 201 extcon = <&usb_id>, <&usb_id>; 202 status = "okay"; 203 }; 204 205 ehci@78d9000 { 206 status = "okay"; 207 }; 208 209 phy@78d9000 { 210 v1p8-supply = <&pm8916_l7>; 211 v3p3-supply = <&pm8916_l13>; 212 vddcx-supply = <&pm8916_s1>; 213 extcon = <&usb_id>, <&usb_id>; 214 dr_mode = "otg"; 215 status = "okay"; 216 switch-gpio = <&pm8916_gpios 4 GPIO_ACTIVE_HIGH>; 217 pinctrl-names = "default"; 218 pinctrl-0 = <&usb_sw_sel_pm>; 219 }; 220 221 lpass@07708000 { 222 status = "okay"; 223 }; 224 225 mdss@1a00000 { 226 status = "okay"; 227 228 mdp@1a01000 { 229 status = "okay"; 230 }; 231 232 dsi@1a98000 { 233 status = "okay"; 234 235 vdda-supply = <&pm8916_l2>; 236 vddio-supply = <&pm8916_l6>; 237 238 ports { 239 port@1 { 240 endpoint { 241 remote-endpoint = <&adv7533_in>; 242 data-lanes = <0 1 2 3>; 243 }; 244 }; 245 }; 246 }; 247 248 dsi-phy@1a98300 { 249 status = "okay"; 250 251 vddio-supply = <&pm8916_l6>; 252 }; 253 }; 254 }; 255 256 usb2513 { 257 compatible = "smsc,usb3503"; 258 reset-gpios = <&pm8916_gpios 3 GPIO_ACTIVE_LOW>; 259 initial-mode = <1>; 260 }; 261 262 usb_id: usb-id { 263 compatible = "linux,extcon-usb-gpio"; 264 id-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>; 265 pinctrl-names = "default"; 266 pinctrl-0 = <&usb_id_default>; 267 }; 268 269 hdmi-out { 270 compatible = "hdmi-connector"; 271 type = "a"; 272 273 port { 274 hdmi_con: endpoint { 275 remote-endpoint = <&adv7533_out>; 276 }; 277 }; 278 }; 279}; 280 281&smd_rpm_regulators { 282 vdd_l1_l2_l3-supply = <&pm8916_s3>; 283 vdd_l5-supply = <&pm8916_s3>; 284 vdd_l4_l5_l6-supply = <&pm8916_s4>; 285 vdd_l7-supply = <&pm8916_s4>; 286 287 s1 { 288 regulator-min-microvolt = <375000>; 289 regulator-max-microvolt = <1562000>; 290 }; 291 292 s3 { 293 regulator-min-microvolt = <375000>; 294 regulator-max-microvolt = <1562000>; 295 }; 296 297 s4 { 298 regulator-min-microvolt = <1800000>; 299 regulator-max-microvolt = <1800000>; 300 301 regulator-always-on; 302 regulator-boot-on; 303 }; 304 305 l1 { 306 regulator-min-microvolt = <375000>; 307 regulator-max-microvolt = <1525000>; 308 }; 309 310 l2 { 311 regulator-min-microvolt = <375000>; 312 regulator-max-microvolt = <1525000>; 313 }; 314 315 l3 { 316 regulator-min-microvolt = <375000>; 317 regulator-max-microvolt = <1525000>; 318 }; 319 320 l4 { 321 regulator-min-microvolt = <1750000>; 322 regulator-max-microvolt = <3337000>; 323 }; 324 325 l5 { 326 regulator-min-microvolt = <1750000>; 327 regulator-max-microvolt = <3337000>; 328 }; 329 330 l6 { 331 regulator-min-microvolt = <1750000>; 332 regulator-max-microvolt = <3337000>; 333 }; 334 335 l7 { 336 regulator-min-microvolt = <1750000>; 337 regulator-max-microvolt = <3337000>; 338 }; 339 340 l8 { 341 regulator-min-microvolt = <1750000>; 342 regulator-max-microvolt = <3337000>; 343 }; 344 345 l9 { 346 regulator-min-microvolt = <1750000>; 347 regulator-max-microvolt = <3337000>; 348 }; 349 350 l10 { 351 regulator-min-microvolt = <1750000>; 352 regulator-max-microvolt = <3337000>; 353 }; 354 355 l11 { 356 regulator-min-microvolt = <1750000>; 357 regulator-max-microvolt = <3337000>; 358 }; 359 360 l12 { 361 regulator-min-microvolt = <1750000>; 362 regulator-max-microvolt = <3337000>; 363 }; 364 365 l13 { 366 regulator-min-microvolt = <1750000>; 367 regulator-max-microvolt = <3337000>; 368 }; 369 370 l14 { 371 regulator-min-microvolt = <1750000>; 372 regulator-max-microvolt = <3337000>; 373 }; 374 375 /** 376 * 1.8v required on LS expansion 377 * for mezzanine boards 378 */ 379 l15 { 380 regulator-min-microvolt = <1750000>; 381 regulator-max-microvolt = <3337000>; 382 regulator-always-on; 383 }; 384 385 l16 { 386 regulator-min-microvolt = <1750000>; 387 regulator-max-microvolt = <3337000>; 388 }; 389 390 l17 { 391 regulator-min-microvolt = <1750000>; 392 regulator-max-microvolt = <3337000>; 393 }; 394 395 l18 { 396 regulator-min-microvolt = <1750000>; 397 regulator-max-microvolt = <3337000>; 398 }; 399}; 400