qcom-apq8064-ifc6410.dts (7044B)
1// SPDX-License-Identifier: GPL-2.0 2#include "qcom-apq8064-v2.0.dtsi" 3#include <dt-bindings/gpio/gpio.h> 4#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 5 6/ { 7 model = "Qualcomm APQ8064/IFC6410"; 8 compatible = "qcom,apq8064-ifc6410", "qcom,apq8064"; 9 10 aliases { 11 serial0 = &gsbi7_serial; 12 serial1 = &gsbi6_serial; 13 i2c0 = &gsbi1_i2c; 14 i2c1 = &gsbi2_i2c; 15 i2c2 = &gsbi3_i2c; 16 i2c3 = &gsbi4_i2c; 17 spi0 = &gsbi5_spi; 18 }; 19 20 chosen { 21 stdout-path = "serial0:115200n8"; 22 }; 23 24 pwrseq { 25 compatible = "simple-bus"; 26 27 sdcc4_pwrseq: sdcc4_pwrseq { 28 pinctrl-names = "default"; 29 pinctrl-0 = <&wlan_default_gpios>; 30 compatible = "mmc-pwrseq-simple"; 31 reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>; 32 }; 33 }; 34 35 leds { 36 compatible = "gpio-leds"; 37 pinctrl-names = "default"; 38 pinctrl-0 = <¬ify_led>; 39 40 led@1 { 41 label = "apq8064:green:user1"; 42 gpios = <&pm8921_gpio 18 GPIO_ACTIVE_HIGH>; 43 default-state = "on"; 44 }; 45 }; 46 47 hdmi-out { 48 compatible = "hdmi-connector"; 49 type = "d"; 50 51 port { 52 hdmi_con: endpoint { 53 remote-endpoint = <&hdmi_out>; 54 }; 55 }; 56 }; 57 58 soc { 59 pinctrl@800000 { 60 card_detect: card_detect { 61 mux { 62 pins = "gpio26"; 63 function = "gpio"; 64 bias-disable; 65 }; 66 }; 67 68 pcie_pins: pcie_pinmux { 69 mux { 70 pins = "gpio27"; 71 function = "gpio"; 72 }; 73 conf { 74 pins = "gpio27"; 75 drive-strength = <12>; 76 bias-disable; 77 }; 78 }; 79 }; 80 81 rpm@108000 { 82 regulators { 83 vin_lvs1_3_6-supply = <&pm8921_s4>; 84 vin_lvs2-supply = <&pm8921_s1>; 85 vin_lvs4_5_7-supply = <&pm8921_s4>; 86 87 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 88 vdd_l24-supply = <&pm8921_s1>; 89 vdd_l25-supply = <&pm8921_s1>; 90 vdd_l26-supply = <&pm8921_s7>; 91 vdd_l27-supply = <&pm8921_s7>; 92 vdd_l28-supply = <&pm8921_s7>; 93 94 95 /* Buck SMPS */ 96 s1 { 97 regulator-always-on; 98 regulator-min-microvolt = <1225000>; 99 regulator-max-microvolt = <1225000>; 100 qcom,switch-mode-frequency = <3200000>; 101 bias-pull-down; 102 }; 103 104 s3 { 105 regulator-min-microvolt = <1000000>; 106 regulator-max-microvolt = <1400000>; 107 qcom,switch-mode-frequency = <4800000>; 108 }; 109 110 s4 { 111 regulator-min-microvolt = <1800000>; 112 regulator-max-microvolt = <1800000>; 113 qcom,switch-mode-frequency = <3200000>; 114 }; 115 116 s7 { 117 regulator-min-microvolt = <1300000>; 118 regulator-max-microvolt = <1300000>; 119 qcom,switch-mode-frequency = <3200000>; 120 }; 121 122 l3 { 123 regulator-min-microvolt = <3050000>; 124 regulator-max-microvolt = <3300000>; 125 bias-pull-down; 126 }; 127 128 l4 { 129 regulator-min-microvolt = <1000000>; 130 regulator-max-microvolt = <1800000>; 131 bias-pull-down; 132 }; 133 134 l5 { 135 regulator-min-microvolt = <2750000>; 136 regulator-max-microvolt = <3000000>; 137 bias-pull-down; 138 }; 139 140 l6 { 141 regulator-min-microvolt = <2950000>; 142 regulator-max-microvolt = <2950000>; 143 bias-pull-down; 144 }; 145 146 l23 { 147 regulator-min-microvolt = <1700000>; 148 regulator-max-microvolt = <1900000>; 149 bias-pull-down; 150 }; 151 152 lvs1 { 153 bias-pull-down; 154 }; 155 156 lvs6 { 157 bias-pull-down; 158 }; 159 }; 160 }; 161 162 ext_3p3v: regulator-fixed@1 { 163 compatible = "regulator-fixed"; 164 regulator-min-microvolt = <3300000>; 165 regulator-max-microvolt = <3300000>; 166 regulator-name = "ext_3p3v"; 167 regulator-type = "voltage"; 168 startup-delay-us = <0>; 169 gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>; 170 enable-active-high; 171 regulator-boot-on; 172 }; 173 174 gsbi3: gsbi@16200000 { 175 status = "okay"; 176 qcom,mode = <GSBI_PROT_I2C>; 177 i2c@16280000 { 178 status = "okay"; 179 }; 180 }; 181 182 gsbi@16300000 { 183 status = "okay"; 184 qcom,mode = <GSBI_PROT_I2C>; 185 /* CAM I2C MIPI-CSI connector */ 186 i2c@16380000 { 187 status = "okay"; 188 }; 189 }; 190 191 gsbi@12440000 { 192 status = "okay"; 193 qcom,mode = <GSBI_PROT_I2C>; 194 195 i2c@12460000 { 196 status = "okay"; 197 clock-frequency = <200000>; 198 199 eeprom@52 { 200 compatible = "atmel,24c128"; 201 reg = <0x52>; 202 pagesize = <32>; 203 }; 204 }; 205 }; 206 207 gsbi@1a200000 { 208 qcom,mode = <GSBI_PROT_SPI>; 209 status = "okay"; 210 spi4: spi@1a280000 { 211 status = "okay"; 212 num-cs = <1>; 213 cs-gpios = <&tlmm_pinmux 53 0>; 214 }; 215 }; 216 217 gsbi@16500000 { 218 status = "okay"; 219 qcom,mode = <GSBI_PROT_UART_W_FC>; 220 221 serial@16540000 { 222 status = "okay"; 223 pinctrl-names = "default"; 224 pinctrl-0 = <&gsbi6_uart_4pins>; 225 }; 226 }; 227 228 gsbi@16600000 { 229 status = "okay"; 230 qcom,mode = <GSBI_PROT_I2C_UART>; 231 serial@16640000 { 232 status = "okay"; 233 pinctrl-names = "default"; 234 pinctrl-0 = <&gsbi7_uart_2pins>; 235 }; 236 }; 237 238 sata_phy0: phy@1b400000 { 239 status = "okay"; 240 }; 241 242 sata0: sata@29000000 { 243 status = "okay"; 244 target-supply = <&pm8921_s4>; 245 }; 246 247 /* OTG */ 248 usb@12500000 { 249 status = "okay"; 250 dr_mode = "otg"; 251 ulpi { 252 phy { 253 v3p3-supply = <&pm8921_l3>; 254 v1p8-supply = <&pm8921_l4>; 255 }; 256 }; 257 }; 258 259 usb@12520000 { 260 status = "okay"; 261 dr_mode = "host"; 262 ulpi { 263 phy { 264 v3p3-supply = <&pm8921_l3>; 265 v1p8-supply = <&pm8921_l23>; 266 }; 267 }; 268 }; 269 270 usb@12530000 { 271 status = "okay"; 272 dr_mode = "host"; 273 ulpi { 274 phy { 275 v3p3-supply = <&pm8921_l3>; 276 v1p8-supply = <&pm8921_l23>; 277 }; 278 }; 279 }; 280 281 pci@1b500000 { 282 status = "okay"; 283 vdda-supply = <&pm8921_s3>; 284 vdda_phy-supply = <&pm8921_lvs6>; 285 vdda_refclk-supply = <&ext_3p3v>; 286 pinctrl-0 = <&pcie_pins>; 287 pinctrl-names = "default"; 288 perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>; 289 }; 290 291 qcom,ssbi@500000 { 292 pmic@0 { 293 gpio@150 { 294 wlan_default_gpios: wlan-gpios { 295 pios { 296 pins = "gpio43"; 297 function = "normal"; 298 bias-disable; 299 power-source = <PM8921_GPIO_S4>; 300 }; 301 }; 302 303 notify_led: nled { 304 pios { 305 pins = "gpio18"; 306 function = "normal"; 307 bias-disable; 308 power-source = <PM8921_GPIO_S4>; 309 }; 310 }; 311 }; 312 }; 313 }; 314 315 amba { 316 /* eMMC */ 317 sdcc1: mmc@12400000 { 318 status = "okay"; 319 vmmc-supply = <&pm8921_l5>; 320 vqmmc-supply = <&pm8921_s4>; 321 }; 322 323 /* External micro SD card */ 324 sdcc3: mmc@12180000 { 325 status = "okay"; 326 vmmc-supply = <&pm8921_l6>; 327 pinctrl-names = "default"; 328 pinctrl-0 = <&card_detect>; 329 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>; 330 }; 331 /* WLAN */ 332 sdcc4: mmc@121c0000 { 333 status = "okay"; 334 vmmc-supply = <&ext_3p3v>; 335 vqmmc-supply = <&pm8921_lvs1>; 336 mmc-pwrseq = <&sdcc4_pwrseq>; 337 }; 338 }; 339 340 hdmi-tx@4a00000 { 341 status = "okay"; 342 343 core-vdda-supply = <&pm8921_hdmi_switch>; 344 hdmi-mux-supply = <&ext_3p3v>; 345 346 hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>; 347 348 ports { 349 port@0 { 350 endpoint { 351 remote-endpoint = <&mdp_dtv_out>; 352 }; 353 }; 354 355 port@1 { 356 endpoint { 357 remote-endpoint = <&hdmi_con>; 358 }; 359 }; 360 }; 361 }; 362 363 hdmi-phy@4a00400 { 364 status = "okay"; 365 366 core-vdda-supply = <&pm8921_hdmi_switch>; 367 }; 368 369 mdp@5100000 { 370 status = "okay"; 371 372 ports { 373 port@3 { 374 endpoint { 375 remote-endpoint = <&hdmi_in>; 376 }; 377 }; 378 }; 379 }; 380 }; 381};