1// SPDX-License-Identifier: GPL-2.0 2#include "qcom-apq8064-v2.0.dtsi" 3#include "qcom-apq8064-arrow-sd-600eval-pins.dtsi" 4#include <dt-bindings/gpio/gpio.h> 5#include <dt-bindings/mfd/qcom-rpm.h> 6 7/ { 8 model = "Arrow Electronics, APQ8064 SD_600eval"; 9 compatible = "arrow,sd_600eval", "qcom,apq8064"; 10 11 aliases { 12 serial0 = &gsbi7_serial; 13 serial1 = &gsbi1_serial; 14 i2c0 = &gsbi2_i2c; 15 i2c1 = &gsbi3_i2c; 16 i2c2 = &gsbi4_i2c; 17 i2c3 = &gsbi7_i2c; 18 spi0 = &gsbi5_spi; 19 }; 20 21 regulators { 22 compatible = "simple-bus"; 23 vph: regulator-fixed@1 { 24 compatible = "regulator-fixed"; 25 regulator-min-microvolt = <4500000>; 26 regulator-max-microvolt = <4500000>; 27 regulator-name = "VPH"; 28 regulator-type = "voltage"; 29 regulator-boot-on; 30 }; 31 32 /* on board fixed 3.3v supply */ 33 vcc3v3: vcc3v3 { 34 compatible = "regulator-fixed"; 35 regulator-name = "VCC3V3"; 36 regulator-min-microvolt = <3300000>; 37 regulator-max-microvolt = <3300000>; 38 regulator-always-on; 39 }; 40 41 }; 42 43 hdmi-out { 44 compatible = "hdmi-connector"; 45 type = "a"; 46 47 port { 48 hdmi_con: endpoint { 49 remote-endpoint = <&hdmi_out>; 50 }; 51 }; 52 }; 53 54 soc { 55 rpm@108000 { 56 regulators { 57 vdd_s1-supply = <&vph>; 58 vdd_s2-supply = <&vph>; 59 vdd_s3-supply = <&vph>; 60 vdd_s4-supply = <&vph>; 61 vdd_s5-supply = <&vph>; 62 vdd_s6-supply = <&vph>; 63 vdd_s7-supply = <&vph>; 64 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 65 vdd_l3_l15_l17-supply = <&vph>; 66 vdd_l4_l14-supply = <&vph>; 67 vdd_l5_l8_l16-supply = <&vph>; 68 vdd_l6_l7-supply = <&vph>; 69 vdd_l9_l11-supply = <&vph>; 70 vdd_l10_l22-supply = <&vph>; 71 vdd_l21_l23_l29-supply = <&vph>; 72 vdd_l24-supply = <&pm8921_s1>; 73 vdd_l25-supply = <&pm8921_s1>; 74 vdd_l26-supply = <&pm8921_s7>; 75 vdd_l27-supply = <&pm8921_s7>; 76 vdd_l28-supply = <&pm8921_s7>; 77 vin_lvs1_3_6-supply = <&pm8921_s4>; 78 vin_lvs2-supply = <&pm8921_s1>; 79 vin_lvs4_5_7-supply = <&pm8921_s4>; 80 81 s1 { 82 regulator-always-on; 83 regulator-min-microvolt = <1225000>; 84 regulator-max-microvolt = <1225000>; 85 qcom,switch-mode-frequency = <3200000>; 86 bias-pull-down; 87 }; 88 89 s2 { 90 regulator-min-microvolt = <1300000>; 91 regulator-max-microvolt = <1300000>; 92 qcom,switch-mode-frequency = <1600000>; 93 bias-pull-down; 94 regulator-always-on; 95 }; 96 97 s3 { 98 regulator-min-microvolt = <1000000>; 99 regulator-max-microvolt = <1400000>; 100 qcom,switch-mode-frequency = <4800000>; 101 }; 102 103 s4 { 104 regulator-min-microvolt = <1800000>; 105 regulator-max-microvolt = <1800000>; 106 qcom,switch-mode-frequency = <1600000>; 107 qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>; 108 bias-pull-down; 109 regulator-always-on; 110 }; 111 112 s7 { 113 regulator-min-microvolt = <1300000>; 114 regulator-max-microvolt = <1300000>; 115 qcom,switch-mode-frequency = <3200000>; 116 }; 117 118 l3 { 119 regulator-min-microvolt = <3050000>; 120 regulator-max-microvolt = <3300000>; 121 bias-pull-down; 122 }; 123 124 l4 { 125 regulator-min-microvolt = <1000000>; 126 regulator-max-microvolt = <1800000>; 127 bias-pull-down; 128 }; 129 130 l5 { 131 regulator-min-microvolt = <2750000>; 132 regulator-max-microvolt = <3000000>; 133 bias-pull-down; 134 regulator-boot-on; 135 regulator-always-on; 136 }; 137 138 l6 { 139 regulator-min-microvolt = <2950000>; 140 regulator-max-microvolt = <2950000>; 141 bias-pull-down; 142 }; 143 144 /** 145 * 1.8v required on LS expansion 146 * for mezzanine boards 147 */ 148 l15 { 149 regulator-min-microvolt = <1800000>; 150 regulator-max-microvolt = <1800000>; 151 regulator-always-on; 152 }; 153 154 l23 { 155 regulator-min-microvolt = <1700000>; 156 regulator-max-microvolt = <1900000>; 157 bias-pull-down; 158 }; 159 160 lvs6 { 161 bias-pull-down; 162 }; 163 164 lvs7 { 165 bias-pull-down; 166 }; 167 }; 168 }; 169 170 gsbi@12440000 { 171 status = "okay"; 172 qcom,mode = <GSBI_PROT_UART_W_FC>; 173 serial@12450000 { 174 label = "LS-UART1"; 175 status = "okay"; 176 pinctrl-names = "default"; 177 pinctrl-0 = <&gsbi1_uart_4pins>; 178 }; 179 }; 180 181 gsbi@12480000 { 182 status = "okay"; 183 qcom,mode = <GSBI_PROT_I2C>; 184 i2c@124a0000 { 185 /* On Low speed expansion and Sensors */ 186 label = "LS-I2C0"; 187 status = "okay"; 188 lis3mdl_mag@1e { 189 compatible = "st,lis3mdl-magn"; 190 reg = <0x1e>; 191 vdd-supply = <&vcc3v3>; 192 vddio-supply = <&pm8921_s4>; 193 pinctrl-names = "default"; 194 pinctrl-0 = <&magneto_pins>; 195 interrupt-parent = <&tlmm_pinmux>; 196 197 st,drdy-int-pin = <2>; 198 interrupts = <48 IRQ_TYPE_EDGE_RISING>, /* DRDY line */ 199 <31 IRQ_TYPE_EDGE_RISING>; /* INT */ 200 }; 201 }; 202 }; 203 204 gsbi@16200000 { 205 status = "okay"; 206 qcom,mode = <GSBI_PROT_I2C>; 207 i2c@16280000 { 208 /* On Low speed expansion */ 209 status = "okay"; 210 label = "LS-I2C1"; 211 clock-frequency = <200000>; 212 eeprom@52 { 213 compatible = "atmel,24c128"; 214 reg = <0x52>; 215 pagesize = <64>; 216 }; 217 }; 218 }; 219 220 gsbi@16300000 { 221 status = "okay"; 222 qcom,mode = <GSBI_PROT_I2C>; 223 i2c@16380000 { 224 /* On High speed expansion */ 225 label = "HS-CAM-I2C3"; 226 status = "okay"; 227 }; 228 }; 229 230 gsbi@1a200000 { 231 status = "okay"; 232 spi@1a280000 { 233 /* On Low speed expansion */ 234 label = "LS-SPI0"; 235 status = "okay"; 236 }; 237 }; 238 239 /* DEBUG UART */ 240 gsbi@16600000 { 241 status = "okay"; 242 qcom,mode = <GSBI_PROT_I2C_UART>; 243 serial@16640000 { 244 label = "LS-UART0"; 245 status = "okay"; 246 pinctrl-names = "default"; 247 pinctrl-0 = <&gsbi7_uart_2pins>; 248 }; 249 250 i2c@16680000 { 251 /* On High speed expansion */ 252 status = "okay"; 253 label = "HS-CAM-I2C2"; 254 }; 255 }; 256 257 leds { 258 pinctrl-names = "default"; 259 pinctrl-0 = <&user_leds>, <&mpp_leds>; 260 261 compatible = "gpio-leds"; 262 263 user-led0 { 264 label = "user0-led"; 265 gpios = <&tlmm_pinmux 3 GPIO_ACTIVE_HIGH>; 266 linux,default-trigger = "heartbeat"; 267 default-state = "off"; 268 }; 269 270 user-led1 { 271 label = "user1-led"; 272 gpios = <&tlmm_pinmux 7 GPIO_ACTIVE_HIGH>; 273 linux,default-trigger = "mmc0"; 274 default-state = "off"; 275 }; 276 277 user-led2 { 278 label = "user2-led"; 279 gpios = <&tlmm_pinmux 10 GPIO_ACTIVE_HIGH>; 280 linux,default-trigger = "mmc1"; 281 default-state = "off"; 282 }; 283 284 user-led3 { 285 label = "user3-led"; 286 gpios = <&tlmm_pinmux 11 GPIO_ACTIVE_HIGH>; 287 linux,default-trigger = "none"; 288 default-state = "off"; 289 }; 290 291 wifi-led { 292 label = "WiFi-led"; 293 gpios = <&pm8921_mpps 7 GPIO_ACTIVE_HIGH>; 294 default-state = "off"; 295 }; 296 297 bt-led { 298 label = "BT-led"; 299 gpios = <&pm8921_mpps 8 GPIO_ACTIVE_HIGH>; 300 default-state = "off"; 301 }; 302 }; 303 304 pci@1b500000 { 305 status = "okay"; 306 vdda-supply = <&pm8921_s3>; 307 vdda_phy-supply = <&pm8921_lvs6>; 308 vdda_refclk-supply = <&vcc3v3>; 309 pinctrl-0 = <&pcie_pins>; 310 pinctrl-names = "default"; 311 perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>; 312 }; 313 314 phy@1b400000 { 315 status = "okay"; 316 }; 317 318 sata@29000000 { 319 status = "okay"; 320 target-supply = <&pm8921_lvs7>; 321 }; 322 323 /* OTG */ 324 usb@12500000 { 325 status = "okay"; 326 dr_mode = "peripheral"; 327 ulpi { 328 phy { 329 v3p3-supply = <&pm8921_l3>; 330 v1p8-supply = <&pm8921_l4>; 331 }; 332 }; 333 }; 334 335 usb@12520000 { 336 status = "okay"; 337 dr_mode = "otg"; 338 ulpi { 339 phy { 340 v3p3-supply = <&pm8921_l3>; 341 v1p8-supply = <&pm8921_l23>; 342 }; 343 }; 344 }; 345 346 usb@12530000 { 347 status = "okay"; 348 dr_mode = "otg"; 349 ulpi { 350 phy { 351 v3p3-supply = <&pm8921_l3>; 352 v1p8-supply = <&pm8921_l23>; 353 }; 354 }; 355 }; 356 357 amba { 358 /* eMMC */ 359 sdcc@12400000 { 360 status = "okay"; 361 vmmc-supply = <&pm8921_l5>; 362 vqmmc-supply = <&pm8921_s4>; 363 }; 364 365 /* External micro SD card */ 366 sdcc@12180000 { 367 status = "okay"; 368 vmmc-supply = <&pm8921_l6>; 369 pinctrl-names = "default"; 370 pinctrl-0 = <&card_detect>; 371 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_HIGH>; 372 }; 373 }; 374 375 riva-pil@3204000 { 376 status = "okay"; 377 378 pinctrl-names = "default"; 379 pinctrl-0 = <&riva_wlan_pin_a>, <&riva_bt_pin_a>, <&riva_fm_pin_a>; 380 }; 381 382 hdmi-tx@4a00000 { 383 status = "okay"; 384 core-vdda-supply = <&pm8921_hdmi_switch>; 385 hdmi-mux-supply = <&vcc3v3>; 386 387 hpd-gpio = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>; 388 389 ports { 390 port@1 { 391 endpoint { 392 remote-endpoint = <&hdmi_con>; 393 }; 394 }; 395 }; 396 }; 397 398 hdmi-phy@4a00400 { 399 status = "okay"; 400 core-vdda-supply = <&pm8921_hdmi_switch>; 401 }; 402 403 mdp@5100000 { 404 status = "okay"; 405 406 ports { 407 port@3 { 408 endpoint { 409 remote-endpoint = <&hdmi_in>; 410 }; 411 }; 412 }; 413 }; 414 }; 415}; 416