0001 // SPDX-License-Identifier: GPL-2.0-only
0002
0003 /dts-v1/;
0004
0005 #include "msm8916-pm8916.dtsi"
0006 #include <dt-bindings/gpio/gpio.h>
0007 #include <dt-bindings/input/input.h>
0008 #include <dt-bindings/interrupt-controller/irq.h>
0009
0010 / {
0011 model = "Asus Zenfone 2 Laser";
0012 compatible = "asus,z00l", "qcom,msm8916";
0013 chassis-type = "handset";
0014
0015 aliases {
0016 serial0 = &blsp1_uart2;
0017 };
0018
0019 chosen {
0020 stdout-path = "serial0";
0021 };
0022
0023 gpio-keys {
0024 compatible = "gpio-keys";
0025
0026 pinctrl-names = "default";
0027 pinctrl-0 = <&gpio_keys_default>;
0028
0029 label = "GPIO Buttons";
0030
0031 button-volume-up {
0032 label = "Volume Up";
0033 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
0034 linux,code = <KEY_VOLUMEUP>;
0035 debounce-interval = <15>;
0036 };
0037
0038 button-volume-down {
0039 label = "Volume Down";
0040 gpios = <&msmgpio 117 GPIO_ACTIVE_LOW>;
0041 linux,code = <KEY_VOLUMEDOWN>;
0042 debounce-interval = <15>;
0043 };
0044 };
0045
0046 reg_sd_vmmc: regulator-sdcard-vmmc {
0047 compatible = "regulator-fixed";
0048 regulator-name = "sdcard-vmmc";
0049 regulator-min-microvolt = <2950000>;
0050 regulator-max-microvolt = <2950000>;
0051
0052 gpio = <&msmgpio 87 GPIO_ACTIVE_HIGH>;
0053 enable-active-high;
0054
0055 startup-delay-us = <200>;
0056
0057 pinctrl-names = "default";
0058 pinctrl-0 = <&sd_vmmc_en_default>;
0059 };
0060
0061 usb_id: usb-id {
0062 compatible = "linux,extcon-usb-gpio";
0063 id-gpios = <&msmgpio 110 GPIO_ACTIVE_HIGH>;
0064 pinctrl-names = "default";
0065 pinctrl-0 = <&usb_id_default>;
0066 };
0067 };
0068
0069 &blsp_i2c2 {
0070 status = "okay";
0071
0072 magnetometer@c {
0073 compatible = "asahi-kasei,ak09911";
0074 reg = <0x0c>;
0075
0076 vdd-supply = <&pm8916_l8>;
0077 vid-supply = <&pm8916_l6>;
0078
0079 reset-gpios = <&msmgpio 112 GPIO_ACTIVE_LOW>;
0080
0081 pinctrl-names = "default";
0082 pinctrl-0 = <&mag_reset_default>;
0083 };
0084
0085 imu@68 {
0086 compatible = "invensense,mpu6515";
0087 reg = <0x68>;
0088
0089 interrupt-parent = <&msmgpio>;
0090 interrupts = <36 IRQ_TYPE_EDGE_RISING>;
0091
0092 vdd-supply = <&pm8916_l17>;
0093 vddio-supply = <&pm8916_l6>;
0094
0095 pinctrl-names = "default";
0096 pinctrl-0 = <&imu_default>;
0097
0098 mount-matrix = "1", "0", "0",
0099 "0", "-1", "0",
0100 "0", "0", "1";
0101 };
0102 };
0103
0104 &blsp_i2c5 {
0105 status = "okay";
0106
0107 touchscreen@38 {
0108 compatible = "edt,edt-ft5306";
0109 reg = <0x38>;
0110
0111 interrupt-parent = <&msmgpio>;
0112 interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
0113
0114 reset-gpios = <&msmgpio 12 GPIO_ACTIVE_LOW>;
0115
0116 vcc-supply = <&pm8916_l11>;
0117 iovcc-supply = <&pm8916_l6>;
0118
0119 touchscreen-size-x = <720>;
0120 touchscreen-size-y = <1280>;
0121
0122 pinctrl-names = "default";
0123 pinctrl-0 = <&touchscreen_default>;
0124 };
0125 };
0126
0127 &blsp1_uart2 {
0128 status = "okay";
0129 };
0130
0131 &pronto {
0132 status = "okay";
0133 };
0134
0135 &sdhc_1 {
0136 status = "okay";
0137
0138 pinctrl-names = "default", "sleep";
0139 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
0140 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
0141 };
0142
0143 &sdhc_2 {
0144 status = "okay";
0145 vmmc-supply = <®_sd_vmmc>;
0146
0147 pinctrl-names = "default", "sleep";
0148 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
0149 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
0150 cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>;
0151 };
0152
0153 &usb {
0154 status = "okay";
0155 extcon = <&usb_id>, <&usb_id>;
0156 };
0157
0158 &usb_hs_phy {
0159 extcon = <&usb_id>;
0160 };
0161
0162 &smd_rpm_regulators {
0163 vdd_l1_l2_l3-supply = <&pm8916_s3>;
0164 vdd_l4_l5_l6-supply = <&pm8916_s4>;
0165 vdd_l7-supply = <&pm8916_s4>;
0166
0167 s3 {
0168 regulator-min-microvolt = <1200000>;
0169 regulator-max-microvolt = <1300000>;
0170 };
0171
0172 s4 {
0173 regulator-min-microvolt = <1800000>;
0174 regulator-max-microvolt = <2100000>;
0175 };
0176
0177 l1 {
0178 regulator-min-microvolt = <1225000>;
0179 regulator-max-microvolt = <1225000>;
0180 };
0181
0182 l2 {
0183 regulator-min-microvolt = <1200000>;
0184 regulator-max-microvolt = <1200000>;
0185 };
0186
0187 l4 {
0188 regulator-min-microvolt = <2050000>;
0189 regulator-max-microvolt = <2050000>;
0190 };
0191
0192 l5 {
0193 regulator-min-microvolt = <1800000>;
0194 regulator-max-microvolt = <1800000>;
0195 };
0196
0197 l6 {
0198 regulator-min-microvolt = <1800000>;
0199 regulator-max-microvolt = <1800000>;
0200 };
0201
0202 l7 {
0203 regulator-min-microvolt = <1800000>;
0204 regulator-max-microvolt = <1800000>;
0205 };
0206
0207 l8 {
0208 regulator-min-microvolt = <2850000>;
0209 regulator-max-microvolt = <2900000>;
0210 };
0211
0212 l9 {
0213 regulator-min-microvolt = <3300000>;
0214 regulator-max-microvolt = <3300000>;
0215 };
0216
0217 l10 {
0218 regulator-min-microvolt = <2700000>;
0219 regulator-max-microvolt = <2800000>;
0220 };
0221
0222 l11 {
0223 regulator-min-microvolt = <1800000>;
0224 regulator-max-microvolt = <2950000>;
0225 regulator-allow-set-load;
0226 regulator-system-load = <200000>;
0227 };
0228
0229 l12 {
0230 regulator-min-microvolt = <1800000>;
0231 regulator-max-microvolt = <2950000>;
0232 };
0233
0234 l13 {
0235 regulator-min-microvolt = <3075000>;
0236 regulator-max-microvolt = <3075000>;
0237 };
0238
0239 l14 {
0240 regulator-min-microvolt = <1800000>;
0241 regulator-max-microvolt = <3300000>;
0242 };
0243
0244 l15 {
0245 regulator-min-microvolt = <1800000>;
0246 regulator-max-microvolt = <3300000>;
0247 };
0248
0249 l16 {
0250 regulator-min-microvolt = <1800000>;
0251 regulator-max-microvolt = <3300000>;
0252 };
0253
0254 l17 {
0255 regulator-min-microvolt = <2850000>;
0256 regulator-max-microvolt = <2850000>;
0257 };
0258
0259 l18 {
0260 regulator-min-microvolt = <2700000>;
0261 regulator-max-microvolt = <2700000>;
0262 };
0263 };
0264
0265 &msmgpio {
0266 gpio_keys_default: gpio-keys-default {
0267 pins = "gpio107", "gpio117";
0268 function = "gpio";
0269
0270 drive-strength = <2>;
0271 bias-pull-up;
0272 };
0273
0274 imu_default: imu-default {
0275 pins = "gpio36";
0276 function = "gpio";
0277
0278 drive-strength = <2>;
0279 bias-disable;
0280 };
0281
0282 mag_reset_default: mag-reset-default {
0283 pins = "gpio112";
0284 function = "gpio";
0285
0286 drive-strength = <2>;
0287 bias-disable;
0288 };
0289
0290 sd_vmmc_en_default: sd-vmmc-en-default {
0291 pins = "gpio87";
0292 function = "gpio";
0293
0294 drive-strength = <2>;
0295 bias-disable;
0296 };
0297
0298 touchscreen_default: touchscreen-default {
0299 pins = "gpio13";
0300 function = "gpio";
0301
0302 drive-strength = <2>;
0303 bias-pull-up;
0304
0305 reset {
0306 pins = "gpio12";
0307 function = "gpio";
0308
0309 drive-strength = <2>;
0310 bias-disable;
0311 };
0312 };
0313
0314 usb_id_default: usb-id-default {
0315 pins = "gpio110";
0316 function = "gpio";
0317
0318 drive-strength = <8>;
0319 bias-pull-up;
0320 };
0321 };