// SPDX-License-Identifier: GPL-2.0 #include "qcom-apq8064-v2.0.dtsi" #include #include / { model = "Qualcomm APQ8064/IFC6410"; compatible = "qcom,apq8064-ifc6410", "qcom,apq8064"; aliases { serial0 = &gsbi7_serial; serial1 = &gsbi6_serial; i2c0 = &gsbi1_i2c; i2c1 = &gsbi2_i2c; i2c2 = &gsbi3_i2c; i2c3 = &gsbi4_i2c; spi0 = &gsbi5_spi; }; chosen { stdout-path = "serial0:115200n8"; }; pwrseq { compatible = "simple-bus"; sdcc4_pwrseq: sdcc4_pwrseq { pinctrl-names = "default"; pinctrl-0 = <&wlan_default_gpios>; compatible = "mmc-pwrseq-simple"; reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>; }; }; leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <¬ify_led>; led@1 { label = "apq8064:green:user1"; gpios = <&pm8921_gpio 18 GPIO_ACTIVE_HIGH>; default-state = "on"; }; }; hdmi-out { compatible = "hdmi-connector"; type = "d"; port { hdmi_con: endpoint { remote-endpoint = <&hdmi_out>; }; }; }; soc { pinctrl@800000 { card_detect: card_detect { mux { pins = "gpio26"; function = "gpio"; bias-disable; }; }; pcie_pins: pcie_pinmux { mux { pins = "gpio27"; function = "gpio"; }; conf { pins = "gpio27"; drive-strength = <12>; bias-disable; }; }; }; rpm@108000 { regulators { vin_lvs1_3_6-supply = <&pm8921_s4>; vin_lvs2-supply = <&pm8921_s1>; vin_lvs4_5_7-supply = <&pm8921_s4>; vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; vdd_l24-supply = <&pm8921_s1>; vdd_l25-supply = <&pm8921_s1>; vdd_l26-supply = <&pm8921_s7>; vdd_l27-supply = <&pm8921_s7>; vdd_l28-supply = <&pm8921_s7>; /* Buck SMPS */ s1 { regulator-always-on; regulator-min-microvolt = <1225000>; regulator-max-microvolt = <1225000>; qcom,switch-mode-frequency = <3200000>; bias-pull-down; }; s3 { regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1400000>; qcom,switch-mode-frequency = <4800000>; }; s4 { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; qcom,switch-mode-frequency = <3200000>; }; s7 { regulator-min-microvolt = <1300000>; regulator-max-microvolt = <1300000>; qcom,switch-mode-frequency = <3200000>; }; l3 { regulator-min-microvolt = <3050000>; regulator-max-microvolt = <3300000>; bias-pull-down; }; l4 { regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1800000>; bias-pull-down; }; l5 { regulator-min-microvolt = <2750000>; regulator-max-microvolt = <3000000>; bias-pull-down; }; l6 { regulator-min-microvolt = <2950000>; regulator-max-microvolt = <2950000>; bias-pull-down; }; l23 { regulator-min-microvolt = <1700000>; regulator-max-microvolt = <1900000>; bias-pull-down; }; lvs1 { bias-pull-down; }; lvs6 { bias-pull-down; }; }; }; ext_3p3v: regulator-fixed@1 { compatible = "regulator-fixed"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-name = "ext_3p3v"; regulator-type = "voltage"; startup-delay-us = <0>; gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>; enable-active-high; regulator-boot-on; }; gsbi3: gsbi@16200000 { status = "okay"; qcom,mode = ; i2c@16280000 { status = "okay"; }; }; gsbi@16300000 { status = "okay"; qcom,mode = ; /* CAM I2C MIPI-CSI connector */ i2c@16380000 { status = "okay"; }; }; gsbi@12440000 { status = "okay"; qcom,mode = ; i2c@12460000 { status = "okay"; clock-frequency = <200000>; eeprom@52 { compatible = "atmel,24c128"; reg = <0x52>; pagesize = <32>; }; }; }; gsbi@1a200000 { qcom,mode = ; status = "okay"; spi4: spi@1a280000 { status = "okay"; num-cs = <1>; cs-gpios = <&tlmm_pinmux 53 0>; }; }; gsbi@16500000 { status = "ok"; qcom,mode = ; serial@16540000 { status = "ok"; pinctrl-names = "default"; pinctrl-0 = <&gsbi6_uart_4pins>; }; }; gsbi@16600000 { status = "ok"; qcom,mode = ; serial@16640000 { status = "ok"; pinctrl-names = "default"; pinctrl-0 = <&gsbi7_uart_2pins>; }; }; sata_phy0: phy@1b400000 { status = "okay"; }; sata0: sata@29000000 { status = "okay"; target-supply = <&pm8921_s4>; }; /* OTG */ usb@12500000 { status = "okay"; dr_mode = "otg"; ulpi { phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l4>; }; }; }; usb@12520000 { status = "okay"; dr_mode = "host"; ulpi { phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l23>; }; }; }; usb@12530000 { status = "okay"; dr_mode = "host"; ulpi { phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l23>; }; }; }; pci@1b500000 { status = "ok"; vdda-supply = <&pm8921_s3>; vdda_phy-supply = <&pm8921_lvs6>; vdda_refclk-supply = <&ext_3p3v>; pinctrl-0 = <&pcie_pins>; pinctrl-names = "default"; perst-gpio = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>; }; qcom,ssbi@500000 { pmic@0 { gpio@150 { wlan_default_gpios: wlan-gpios { pios { pins = "gpio43"; function = "normal"; bias-disable; power-source = ; }; }; notify_led: nled { pios { pins = "gpio18"; function = "normal"; bias-disable; power-source = ; }; }; }; }; }; amba { /* eMMC */ sdcc1: sdcc@12400000 { status = "okay"; vmmc-supply = <&pm8921_l5>; vqmmc-supply = <&pm8921_s4>; }; /* External micro SD card */ sdcc3: sdcc@12180000 { status = "okay"; vmmc-supply = <&pm8921_l6>; pinctrl-names = "default"; pinctrl-0 = <&card_detect>; cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>; }; /* WLAN */ sdcc4: sdcc@121c0000 { status = "okay"; vmmc-supply = <&ext_3p3v>; vqmmc-supply = <&pm8921_lvs1>; mmc-pwrseq = <&sdcc4_pwrseq>; }; }; hdmi-tx@4a00000 { status = "okay"; core-vdda-supply = <&pm8921_hdmi_switch>; hdmi-mux-supply = <&ext_3p3v>; hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>; ports { port@0 { endpoint { remote-endpoint = <&mdp_dtv_out>; }; }; port@1 { endpoint { remote-endpoint = <&hdmi_con>; }; }; }; }; hdmi-phy@4a00400 { status = "okay"; core-vdda-supply = <&pm8921_hdmi_switch>; }; mdp@5100000 { status = "okay"; ports { port@3 { endpoint { remote-endpoint = <&hdmi_in>; }; }; }; }; }; };