0001 // SPDX-License-Identifier: GPL-2.0
0002 #include "qcom-apq8064-v2.0.dtsi"
0003 #include <dt-bindings/gpio/gpio.h>
0004 #include <dt-bindings/leds/common.h>
0005 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
0006
0007 / {
0008 model = "Qualcomm APQ8064/IFC6410";
0009 compatible = "qcom,apq8064-ifc6410", "qcom,apq8064";
0010
0011 aliases {
0012 serial0 = &gsbi7_serial;
0013 serial1 = &gsbi6_serial;
0014 i2c0 = &gsbi1_i2c;
0015 i2c1 = &gsbi2_i2c;
0016 i2c2 = &gsbi3_i2c;
0017 i2c3 = &gsbi4_i2c;
0018 spi0 = &gsbi5_spi;
0019 };
0020
0021 chosen {
0022 stdout-path = "serial0:115200n8";
0023 };
0024
0025 pwrseq {
0026 compatible = "simple-bus";
0027
0028 sdcc4_pwrseq: sdcc4_pwrseq {
0029 pinctrl-names = "default";
0030 pinctrl-0 = <&wlan_default_gpios>;
0031 compatible = "mmc-pwrseq-simple";
0032 reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>;
0033 };
0034 };
0035
0036 leds {
0037 compatible = "gpio-leds";
0038 pinctrl-names = "default";
0039 pinctrl-0 = <¬ify_led>;
0040
0041 led@1 {
0042 label = "apq8064:green:user1";
0043 color = <LED_COLOR_ID_GREEN>;
0044 gpios = <&pm8921_gpio 18 GPIO_ACTIVE_HIGH>;
0045 default-state = "on";
0046 };
0047 };
0048
0049 hdmi-out {
0050 compatible = "hdmi-connector";
0051 type = "d";
0052
0053 port {
0054 hdmi_con: endpoint {
0055 remote-endpoint = <&hdmi_out>;
0056 };
0057 };
0058 };
0059
0060 soc {
0061 pinctrl@800000 {
0062 card_detect: card_detect {
0063 mux {
0064 pins = "gpio26";
0065 function = "gpio";
0066 bias-disable;
0067 };
0068 };
0069
0070 pcie_pins: pcie_pinmux {
0071 mux {
0072 pins = "gpio27";
0073 function = "gpio";
0074 };
0075 conf {
0076 pins = "gpio27";
0077 drive-strength = <12>;
0078 bias-disable;
0079 };
0080 };
0081 };
0082
0083 rpm@108000 {
0084 regulators {
0085 vin_lvs1_3_6-supply = <&pm8921_s4>;
0086 vin_lvs2-supply = <&pm8921_s1>;
0087 vin_lvs4_5_7-supply = <&pm8921_s4>;
0088
0089 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
0090 vdd_l24-supply = <&pm8921_s1>;
0091 vdd_l25-supply = <&pm8921_s1>;
0092 vdd_l26-supply = <&pm8921_s7>;
0093 vdd_l27-supply = <&pm8921_s7>;
0094 vdd_l28-supply = <&pm8921_s7>;
0095
0096
0097 /* Buck SMPS */
0098 s1 {
0099 regulator-always-on;
0100 regulator-min-microvolt = <1225000>;
0101 regulator-max-microvolt = <1225000>;
0102 qcom,switch-mode-frequency = <3200000>;
0103 bias-pull-down;
0104 };
0105
0106 s3 {
0107 regulator-min-microvolt = <1000000>;
0108 regulator-max-microvolt = <1400000>;
0109 qcom,switch-mode-frequency = <4800000>;
0110 };
0111
0112 s4 {
0113 regulator-min-microvolt = <1800000>;
0114 regulator-max-microvolt = <1800000>;
0115 qcom,switch-mode-frequency = <3200000>;
0116 };
0117
0118 s7 {
0119 regulator-min-microvolt = <1300000>;
0120 regulator-max-microvolt = <1300000>;
0121 qcom,switch-mode-frequency = <3200000>;
0122 };
0123
0124 l3 {
0125 regulator-min-microvolt = <3050000>;
0126 regulator-max-microvolt = <3300000>;
0127 bias-pull-down;
0128 };
0129
0130 l4 {
0131 regulator-min-microvolt = <1000000>;
0132 regulator-max-microvolt = <1800000>;
0133 bias-pull-down;
0134 };
0135
0136 l5 {
0137 regulator-min-microvolt = <2750000>;
0138 regulator-max-microvolt = <3000000>;
0139 bias-pull-down;
0140 };
0141
0142 l6 {
0143 regulator-min-microvolt = <2950000>;
0144 regulator-max-microvolt = <2950000>;
0145 bias-pull-down;
0146 };
0147
0148 l23 {
0149 regulator-min-microvolt = <1700000>;
0150 regulator-max-microvolt = <1900000>;
0151 bias-pull-down;
0152 };
0153
0154 lvs1 {
0155 bias-pull-down;
0156 };
0157
0158 lvs6 {
0159 bias-pull-down;
0160 };
0161 };
0162 };
0163
0164 ext_3p3v: regulator-fixed@1 {
0165 compatible = "regulator-fixed";
0166 regulator-min-microvolt = <3300000>;
0167 regulator-max-microvolt = <3300000>;
0168 regulator-name = "ext_3p3v";
0169 regulator-type = "voltage";
0170 startup-delay-us = <0>;
0171 gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>;
0172 enable-active-high;
0173 regulator-boot-on;
0174 };
0175
0176 gsbi3: gsbi@16200000 {
0177 status = "okay";
0178 qcom,mode = <GSBI_PROT_I2C>;
0179 i2c@16280000 {
0180 status = "okay";
0181 };
0182 };
0183
0184 gsbi@16300000 {
0185 status = "okay";
0186 qcom,mode = <GSBI_PROT_I2C>;
0187 /* CAM I2C MIPI-CSI connector */
0188 i2c@16380000 {
0189 status = "okay";
0190 };
0191 };
0192
0193 gsbi@12440000 {
0194 status = "okay";
0195 qcom,mode = <GSBI_PROT_I2C>;
0196
0197 i2c@12460000 {
0198 status = "okay";
0199 clock-frequency = <200000>;
0200
0201 eeprom@52 {
0202 compatible = "atmel,24c128";
0203 reg = <0x52>;
0204 pagesize = <32>;
0205 };
0206 };
0207 };
0208
0209 gsbi@1a200000 {
0210 qcom,mode = <GSBI_PROT_SPI>;
0211 status = "okay";
0212 spi4: spi@1a280000 {
0213 status = "okay";
0214 num-cs = <1>;
0215 cs-gpios = <&tlmm_pinmux 53 0>;
0216 };
0217 };
0218
0219 gsbi@16500000 {
0220 status = "okay";
0221 qcom,mode = <GSBI_PROT_UART_W_FC>;
0222
0223 serial@16540000 {
0224 status = "okay";
0225 pinctrl-names = "default";
0226 pinctrl-0 = <&gsbi6_uart_4pins>;
0227 };
0228 };
0229
0230 gsbi@16600000 {
0231 status = "okay";
0232 qcom,mode = <GSBI_PROT_I2C_UART>;
0233 serial@16640000 {
0234 status = "okay";
0235 pinctrl-names = "default";
0236 pinctrl-0 = <&gsbi7_uart_2pins>;
0237 };
0238 };
0239
0240 sata_phy0: phy@1b400000 {
0241 status = "okay";
0242 };
0243
0244 sata0: sata@29000000 {
0245 status = "okay";
0246 target-supply = <&pm8921_s4>;
0247 };
0248
0249 /* OTG */
0250 usb@12500000 {
0251 status = "okay";
0252 dr_mode = "otg";
0253 ulpi {
0254 phy {
0255 v3p3-supply = <&pm8921_l3>;
0256 v1p8-supply = <&pm8921_l4>;
0257 };
0258 };
0259 };
0260
0261 usb@12520000 {
0262 status = "okay";
0263 dr_mode = "host";
0264 ulpi {
0265 phy {
0266 v3p3-supply = <&pm8921_l3>;
0267 v1p8-supply = <&pm8921_l23>;
0268 };
0269 };
0270 };
0271
0272 usb@12530000 {
0273 status = "okay";
0274 dr_mode = "host";
0275 ulpi {
0276 phy {
0277 v3p3-supply = <&pm8921_l3>;
0278 v1p8-supply = <&pm8921_l23>;
0279 };
0280 };
0281 };
0282
0283 pci@1b500000 {
0284 status = "okay";
0285 vdda-supply = <&pm8921_s3>;
0286 vdda_phy-supply = <&pm8921_lvs6>;
0287 vdda_refclk-supply = <&ext_3p3v>;
0288 pinctrl-0 = <&pcie_pins>;
0289 pinctrl-names = "default";
0290 perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>;
0291 };
0292
0293 qcom,ssbi@500000 {
0294 pmic@0 {
0295 gpio@150 {
0296 wlan_default_gpios: wlan-gpios-state {
0297 pinconf {
0298 pins = "gpio43";
0299 function = "normal";
0300 bias-disable;
0301 power-source = <PM8921_GPIO_S4>;
0302 };
0303 };
0304
0305 notify_led: nled-state {
0306 pinconf {
0307 pins = "gpio18";
0308 function = "normal";
0309 bias-disable;
0310 power-source = <PM8921_GPIO_S4>;
0311 };
0312 };
0313 };
0314 };
0315 };
0316
0317 amba {
0318 /* eMMC */
0319 sdcc1: mmc@12400000 {
0320 status = "okay";
0321 vmmc-supply = <&pm8921_l5>;
0322 vqmmc-supply = <&pm8921_s4>;
0323 };
0324
0325 /* External micro SD card */
0326 sdcc3: mmc@12180000 {
0327 status = "okay";
0328 vmmc-supply = <&pm8921_l6>;
0329 pinctrl-names = "default";
0330 pinctrl-0 = <&card_detect>;
0331 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
0332 };
0333 /* WLAN */
0334 sdcc4: mmc@121c0000 {
0335 status = "okay";
0336 vmmc-supply = <&ext_3p3v>;
0337 vqmmc-supply = <&pm8921_lvs1>;
0338 mmc-pwrseq = <&sdcc4_pwrseq>;
0339 };
0340 };
0341
0342 hdmi-tx@4a00000 {
0343 status = "okay";
0344
0345 core-vdda-supply = <&pm8921_hdmi_switch>;
0346
0347 hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>;
0348
0349 ports {
0350 port@0 {
0351 endpoint {
0352 remote-endpoint = <&mdp_dtv_out>;
0353 };
0354 };
0355
0356 port@1 {
0357 endpoint {
0358 remote-endpoint = <&hdmi_con>;
0359 };
0360 };
0361 };
0362 };
0363
0364 hdmi-phy@4a00400 {
0365 status = "okay";
0366
0367 core-vdda-supply = <&pm8921_hdmi_switch>;
0368 };
0369
0370 mdp@5100000 {
0371 status = "okay";
0372
0373 ports {
0374 port@3 {
0375 endpoint {
0376 remote-endpoint = <&hdmi_in>;
0377 };
0378 };
0379 };
0380 };
0381 };
0382 };