1// SPDX-License-Identifier: GPL-2.0-only 2 3/dts-v1/; 4 5#include "msm8916-pm8916.dtsi" 6#include "msm8916-modem-qdsp6.dtsi" 7 8#include <dt-bindings/gpio/gpio.h> 9#include <dt-bindings/input/input.h> 10#include <dt-bindings/interrupt-controller/irq.h> 11 12/ { 13 model = "Asus Zenfone 2 Laser"; 14 compatible = "asus,z00l", "qcom,msm8916"; 15 chassis-type = "handset"; 16 17 aliases { 18 mmc0 = &sdhc_1; /* eMMC */ 19 mmc1 = &sdhc_2; /* SD card */ 20 serial0 = &blsp_uart2; 21 }; 22 23 chosen { 24 stdout-path = "serial0"; 25 }; 26 27 gpio-keys { 28 compatible = "gpio-keys"; 29 30 pinctrl-names = "default"; 31 pinctrl-0 = <&gpio_keys_default>; 32 33 label = "GPIO Buttons"; 34 35 button-volume-up { 36 label = "Volume Up"; 37 gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 38 linux,code = <KEY_VOLUMEUP>; 39 debounce-interval = <15>; 40 }; 41 42 button-volume-down { 43 label = "Volume Down"; 44 gpios = <&tlmm 117 GPIO_ACTIVE_LOW>; 45 linux,code = <KEY_VOLUMEDOWN>; 46 debounce-interval = <15>; 47 }; 48 }; 49 50 reg_sd_vmmc: regulator-sdcard-vmmc { 51 compatible = "regulator-fixed"; 52 regulator-name = "sdcard-vmmc"; 53 regulator-min-microvolt = <2950000>; 54 regulator-max-microvolt = <2950000>; 55 56 gpio = <&tlmm 87 GPIO_ACTIVE_HIGH>; 57 enable-active-high; 58 59 startup-delay-us = <200>; 60 61 pinctrl-names = "default"; 62 pinctrl-0 = <&sd_vmmc_en_default>; 63 }; 64 65 usb_id: usb-id { 66 compatible = "linux,extcon-usb-gpio"; 67 id-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>; 68 pinctrl-names = "default"; 69 pinctrl-0 = <&usb_id_default>; 70 }; 71}; 72 73&blsp_i2c2 { 74 status = "okay"; 75 76 magnetometer@c { 77 compatible = "asahi-kasei,ak09911"; 78 reg = <0x0c>; 79 80 vdd-supply = <&pm8916_l8>; 81 vid-supply = <&pm8916_l6>; 82 83 reset-gpios = <&tlmm 112 GPIO_ACTIVE_LOW>; 84 85 pinctrl-names = "default"; 86 pinctrl-0 = <&mag_reset_default>; 87 }; 88 89 imu@68 { 90 compatible = "invensense,mpu6515"; 91 reg = <0x68>; 92 93 interrupt-parent = <&tlmm>; 94 interrupts = <36 IRQ_TYPE_EDGE_RISING>; 95 96 vdd-supply = <&pm8916_l17>; 97 vddio-supply = <&pm8916_l6>; 98 99 pinctrl-names = "default"; 100 pinctrl-0 = <&imu_default>; 101 102 mount-matrix = "1", "0", "0", 103 "0", "-1", "0", 104 "0", "0", "1"; 105 }; 106}; 107 108&blsp_i2c5 { 109 status = "okay"; 110 111 touchscreen@38 { 112 compatible = "edt,edt-ft5306"; 113 reg = <0x38>; 114 115 interrupt-parent = <&tlmm>; 116 interrupts = <13 IRQ_TYPE_EDGE_FALLING>; 117 118 reset-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; 119 120 vcc-supply = <&pm8916_l11>; 121 iovcc-supply = <&pm8916_l6>; 122 123 touchscreen-size-x = <720>; 124 touchscreen-size-y = <1280>; 125 126 pinctrl-names = "default"; 127 pinctrl-0 = <&touchscreen_default>; 128 }; 129}; 130 131&blsp_uart2 { 132 status = "okay"; 133}; 134 135&mpss_mem { 136 reg = <0x0 0x86800000 0x0 0x5500000>; 137}; 138 139&pm8916_codec { 140 qcom,micbias-lvl = <2800>; 141 qcom,mbhc-vthreshold-low = <75 150 237 450 500>; 142 qcom,mbhc-vthreshold-high = <75 150 237 450 500>; 143 qcom,micbias1-ext-cap; 144 qcom,hphl-jack-type-normally-open; 145}; 146 147&pm8916_rpm_regulators { 148 pm8916_l17: l17 { 149 regulator-min-microvolt = <2850000>; 150 regulator-max-microvolt = <2850000>; 151 }; 152}; 153 154&sdhc_1 { 155 status = "okay"; 156}; 157 158&sdhc_2 { 159 status = "okay"; 160 vmmc-supply = <®_sd_vmmc>; 161 162 pinctrl-names = "default", "sleep"; 163 pinctrl-0 = <&sdc2_default &sdc2_cd_default>; 164 pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>; 165 cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 166}; 167 168&sound { 169 audio-routing = 170 "AMIC1", "MIC BIAS External1", 171 "AMIC2", "MIC BIAS Internal2", 172 "AMIC3", "MIC BIAS External1"; 173}; 174 175&usb { 176 status = "okay"; 177 extcon = <&usb_id>, <&usb_id>; 178}; 179 180&usb_hs_phy { 181 extcon = <&usb_id>; 182}; 183 184&venus { 185 status = "okay"; 186}; 187 188&venus_mem { 189 status = "okay"; 190}; 191 192&wcnss { 193 status = "okay"; 194}; 195 196&wcnss_iris { 197 compatible = "qcom,wcn3620"; 198}; 199 200&wcnss_mem { 201 status = "okay"; 202}; 203 204&tlmm { 205 gpio_keys_default: gpio-keys-default-state { 206 pins = "gpio107", "gpio117"; 207 function = "gpio"; 208 209 drive-strength = <2>; 210 bias-pull-up; 211 }; 212 213 imu_default: imu-default-state { 214 pins = "gpio36"; 215 function = "gpio"; 216 217 drive-strength = <2>; 218 bias-disable; 219 }; 220 221 mag_reset_default: mag-reset-default-state { 222 pins = "gpio112"; 223 function = "gpio"; 224 225 drive-strength = <2>; 226 bias-disable; 227 }; 228 229 sd_vmmc_en_default: sd-vmmc-en-default-state { 230 pins = "gpio87"; 231 function = "gpio"; 232 233 drive-strength = <2>; 234 bias-disable; 235 }; 236 237 sdc2_cd_default: sdc2-cd-default-state { 238 pins = "gpio38"; 239 function = "gpio"; 240 drive-strength = <2>; 241 bias-disable; 242 }; 243 244 touchscreen_default: touchscreen-default-state { 245 touch-pins { 246 pins = "gpio13"; 247 function = "gpio"; 248 249 drive-strength = <2>; 250 bias-pull-up; 251 }; 252 253 reset-pins { 254 pins = "gpio12"; 255 function = "gpio"; 256 257 drive-strength = <2>; 258 bias-disable; 259 }; 260 }; 261 262 usb_id_default: usb-id-default-state { 263 pins = "gpio110"; 264 function = "gpio"; 265 266 drive-strength = <8>; 267 bias-pull-up; 268 }; 269}; 270