1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2*0e8011faSEmmanuel Vadot 3*0e8011faSEmmanuel Vadot/dts-v1/; 4*0e8011faSEmmanuel Vadot 5*0e8011faSEmmanuel Vadot#include "msm8916-pm8916.dtsi" 6*0e8011faSEmmanuel Vadot#include "msm8916-modem-qdsp6.dtsi" 7*0e8011faSEmmanuel Vadot 8*0e8011faSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 9*0e8011faSEmmanuel Vadot 10*0e8011faSEmmanuel Vadot/ { 11*0e8011faSEmmanuel Vadot model = "LG K10 (K420n)"; 12*0e8011faSEmmanuel Vadot compatible = "lg,m216", "qcom,msm8916"; 13*0e8011faSEmmanuel Vadot chassis-type = "handset"; 14*0e8011faSEmmanuel Vadot 15*0e8011faSEmmanuel Vadot aliases { 16*0e8011faSEmmanuel Vadot mmc0 = &sdhc_1; /* eMMC */ 17*0e8011faSEmmanuel Vadot mmc1 = &sdhc_2; /* SD card */ 18*0e8011faSEmmanuel Vadot serial0 = &blsp_uart2; 19*0e8011faSEmmanuel Vadot }; 20*0e8011faSEmmanuel Vadot 21*0e8011faSEmmanuel Vadot chosen { 22*0e8011faSEmmanuel Vadot stdout-path = "serial0"; 23*0e8011faSEmmanuel Vadot }; 24*0e8011faSEmmanuel Vadot 25*0e8011faSEmmanuel Vadot battery: battery { 26*0e8011faSEmmanuel Vadot compatible = "simple-battery"; 27*0e8011faSEmmanuel Vadot voltage-min-design-microvolt = <3300000>; 28*0e8011faSEmmanuel Vadot voltage-max-design-microvolt = <4350000>; 29*0e8011faSEmmanuel Vadot energy-full-design-microwatt-hours = <8800000>; 30*0e8011faSEmmanuel Vadot charge-full-design-microamp-hours = <2300000>; 31*0e8011faSEmmanuel Vadot 32*0e8011faSEmmanuel Vadot ocv-capacity-celsius = <25>; 33*0e8011faSEmmanuel Vadot ocv-capacity-table-0 = <4342000 100>, <4266000 95>, <4206000 90>, 34*0e8011faSEmmanuel Vadot <4148000 85>, <4094000 80>, <4046000 75>, <3994000 70>, 35*0e8011faSEmmanuel Vadot <3956000 65>, <3916000 60>, <3866000 55>, <3831000 50>, 36*0e8011faSEmmanuel Vadot <3808000 45>, <3789000 40>, <3776000 35>, <3769000 30>, 37*0e8011faSEmmanuel Vadot <3760000 25>, <3740000 20>, <3712000 16>, <3684000 13>, 38*0e8011faSEmmanuel Vadot <3676000 11>, <3674000 10>, <3672000 9>, <3669000 8>, 39*0e8011faSEmmanuel Vadot <3665000 7>, <3660000 6>, <3643000 5>, <3602000 4>, 40*0e8011faSEmmanuel Vadot <3542000 3>, <3458000 2>, <3326000 1>, <3000000 0>; 41*0e8011faSEmmanuel Vadot }; 42*0e8011faSEmmanuel Vadot 43*0e8011faSEmmanuel Vadot gpio-keys { 44*0e8011faSEmmanuel Vadot compatible = "gpio-keys"; 45*0e8011faSEmmanuel Vadot 46*0e8011faSEmmanuel Vadot pinctrl-0 = <&gpio_keys_default>; 47*0e8011faSEmmanuel Vadot pinctrl-names = "default"; 48*0e8011faSEmmanuel Vadot 49*0e8011faSEmmanuel Vadot label = "GPIO Buttons"; 50*0e8011faSEmmanuel Vadot 51*0e8011faSEmmanuel Vadot volume-up-button { 52*0e8011faSEmmanuel Vadot label = "Volume Up"; 53*0e8011faSEmmanuel Vadot gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 54*0e8011faSEmmanuel Vadot linux,code = <KEY_VOLUMEUP>; 55*0e8011faSEmmanuel Vadot }; 56*0e8011faSEmmanuel Vadot 57*0e8011faSEmmanuel Vadot volume-down-button { 58*0e8011faSEmmanuel Vadot label = "Volume Down"; 59*0e8011faSEmmanuel Vadot gpios = <&tlmm 108 GPIO_ACTIVE_LOW>; 60*0e8011faSEmmanuel Vadot linux,code = <KEY_VOLUMEDOWN>; 61*0e8011faSEmmanuel Vadot }; 62*0e8011faSEmmanuel Vadot }; 63*0e8011faSEmmanuel Vadot}; 64*0e8011faSEmmanuel Vadot 65*0e8011faSEmmanuel Vadot&blsp_i2c2 { 66*0e8011faSEmmanuel Vadot status = "okay"; 67*0e8011faSEmmanuel Vadot 68*0e8011faSEmmanuel Vadot accelerometer@11 { 69*0e8011faSEmmanuel Vadot compatible = "bosch,bmc150_accel"; 70*0e8011faSEmmanuel Vadot reg = <0x11>; 71*0e8011faSEmmanuel Vadot 72*0e8011faSEmmanuel Vadot interrupts-extended = <&tlmm 115 IRQ_TYPE_EDGE_RISING>; 73*0e8011faSEmmanuel Vadot 74*0e8011faSEmmanuel Vadot mount-matrix = "0", "1", "0", 75*0e8011faSEmmanuel Vadot "-1", "0", "0", 76*0e8011faSEmmanuel Vadot "0", "0", "1"; 77*0e8011faSEmmanuel Vadot 78*0e8011faSEmmanuel Vadot vdd-supply = <&pm8916_l17>; 79*0e8011faSEmmanuel Vadot vddio-supply = <&pm8916_l6>; 80*0e8011faSEmmanuel Vadot 81*0e8011faSEmmanuel Vadot pinctrl-0 = <&accel_int_default>; 82*0e8011faSEmmanuel Vadot pinctrl-names = "default"; 83*0e8011faSEmmanuel Vadot }; 84*0e8011faSEmmanuel Vadot 85*0e8011faSEmmanuel Vadot magnetometer@13 { 86*0e8011faSEmmanuel Vadot compatible = "bosch,bmc150_magn"; 87*0e8011faSEmmanuel Vadot reg = <0x13>; 88*0e8011faSEmmanuel Vadot 89*0e8011faSEmmanuel Vadot interrupts-extended = <&tlmm 69 IRQ_TYPE_EDGE_RISING>; 90*0e8011faSEmmanuel Vadot 91*0e8011faSEmmanuel Vadot vdd-supply = <&pm8916_l17>; 92*0e8011faSEmmanuel Vadot vddio-supply = <&pm8916_l6>; 93*0e8011faSEmmanuel Vadot 94*0e8011faSEmmanuel Vadot pinctrl-0 = <&magn_int_default>; 95*0e8011faSEmmanuel Vadot pinctrl-names = "default"; 96*0e8011faSEmmanuel Vadot }; 97*0e8011faSEmmanuel Vadot}; 98*0e8011faSEmmanuel Vadot 99*0e8011faSEmmanuel Vadot&blsp_i2c5 { 100*0e8011faSEmmanuel Vadot status = "okay"; 101*0e8011faSEmmanuel Vadot 102*0e8011faSEmmanuel Vadot touchscreen@34 { 103*0e8011faSEmmanuel Vadot compatible = "melfas,mip4_ts"; 104*0e8011faSEmmanuel Vadot reg = <0x34>; 105*0e8011faSEmmanuel Vadot 106*0e8011faSEmmanuel Vadot interrupts-extended = <&tlmm 13 IRQ_TYPE_EDGE_FALLING>; 107*0e8011faSEmmanuel Vadot ce-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>; 108*0e8011faSEmmanuel Vadot 109*0e8011faSEmmanuel Vadot pinctrl-0 = <&touchscreen_default>; 110*0e8011faSEmmanuel Vadot pinctrl-names = "default"; 111*0e8011faSEmmanuel Vadot }; 112*0e8011faSEmmanuel Vadot}; 113*0e8011faSEmmanuel Vadot 114*0e8011faSEmmanuel Vadot&blsp_uart2 { 115*0e8011faSEmmanuel Vadot status = "okay"; 116*0e8011faSEmmanuel Vadot}; 117*0e8011faSEmmanuel Vadot 118*0e8011faSEmmanuel Vadot&mpss_mem { 119*0e8011faSEmmanuel Vadot reg = <0x0 0x86800000 0x0 0x4a00000>; 120*0e8011faSEmmanuel Vadot}; 121*0e8011faSEmmanuel Vadot 122*0e8011faSEmmanuel Vadot&pm8916_bms { 123*0e8011faSEmmanuel Vadot monitored-battery = <&battery>; 124*0e8011faSEmmanuel Vadot power-supplies = <&pm8916_charger>; 125*0e8011faSEmmanuel Vadot 126*0e8011faSEmmanuel Vadot status = "okay"; 127*0e8011faSEmmanuel Vadot}; 128*0e8011faSEmmanuel Vadot 129*0e8011faSEmmanuel Vadot&pm8916_charger { 130*0e8011faSEmmanuel Vadot qcom,fast-charge-safe-current = <700000>; 131*0e8011faSEmmanuel Vadot qcom,fast-charge-safe-voltage = <4300000>; 132*0e8011faSEmmanuel Vadot 133*0e8011faSEmmanuel Vadot monitored-battery = <&battery>; 134*0e8011faSEmmanuel Vadot status = "okay"; 135*0e8011faSEmmanuel Vadot}; 136*0e8011faSEmmanuel Vadot 137*0e8011faSEmmanuel Vadot&pm8916_codec { 138*0e8011faSEmmanuel Vadot qcom,micbias1-ext-cap; 139*0e8011faSEmmanuel Vadot qcom,micbias-lvl = <2800>; 140*0e8011faSEmmanuel Vadot qcom,mbhc-vthreshold-low = <75 100 120 180 500>; 141*0e8011faSEmmanuel Vadot qcom,mbhc-vthreshold-high = <75 100 120 180 500>; 142*0e8011faSEmmanuel Vadot qcom,hphl-jack-type-normally-open; 143*0e8011faSEmmanuel Vadot}; 144*0e8011faSEmmanuel Vadot 145*0e8011faSEmmanuel Vadot&pm8916_rpm_regulators { 146*0e8011faSEmmanuel Vadot pm8916_l17: l17 { 147*0e8011faSEmmanuel Vadot regulator-min-microvolt = <2850000>; 148*0e8011faSEmmanuel Vadot regulator-max-microvolt = <2850000>; 149*0e8011faSEmmanuel Vadot }; 150*0e8011faSEmmanuel Vadot}; 151*0e8011faSEmmanuel Vadot 152*0e8011faSEmmanuel Vadot&pm8916_vib { 153*0e8011faSEmmanuel Vadot status = "okay"; 154*0e8011faSEmmanuel Vadot}; 155*0e8011faSEmmanuel Vadot 156*0e8011faSEmmanuel Vadot&sdhc_1 { 157*0e8011faSEmmanuel Vadot status = "okay"; 158*0e8011faSEmmanuel Vadot}; 159*0e8011faSEmmanuel Vadot 160*0e8011faSEmmanuel Vadot&sdhc_2 { 161*0e8011faSEmmanuel Vadot pinctrl-0 = <&sdc2_default &sdc2_cd_default>; 162*0e8011faSEmmanuel Vadot pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>; 163*0e8011faSEmmanuel Vadot pinctrl-names = "default", "sleep"; 164*0e8011faSEmmanuel Vadot 165*0e8011faSEmmanuel Vadot cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 166*0e8011faSEmmanuel Vadot 167*0e8011faSEmmanuel Vadot status = "okay"; 168*0e8011faSEmmanuel Vadot}; 169*0e8011faSEmmanuel Vadot 170*0e8011faSEmmanuel Vadot&sound { 171*0e8011faSEmmanuel Vadot audio-routing = 172*0e8011faSEmmanuel Vadot "AMIC1", "MIC BIAS External1", 173*0e8011faSEmmanuel Vadot "AMIC2", "MIC BIAS Internal2", 174*0e8011faSEmmanuel Vadot "AMIC3", "MIC BIAS External1"; 175*0e8011faSEmmanuel Vadot}; 176*0e8011faSEmmanuel Vadot 177*0e8011faSEmmanuel Vadot&usb { 178*0e8011faSEmmanuel Vadot dr_mode = "peripheral"; 179*0e8011faSEmmanuel Vadot extcon = <&pm8916_charger>; 180*0e8011faSEmmanuel Vadot status = "okay"; 181*0e8011faSEmmanuel Vadot}; 182*0e8011faSEmmanuel Vadot 183*0e8011faSEmmanuel Vadot&usb_hs_phy { 184*0e8011faSEmmanuel Vadot extcon = <&pm8916_charger>; 185*0e8011faSEmmanuel Vadot}; 186*0e8011faSEmmanuel Vadot 187*0e8011faSEmmanuel Vadot&venus { 188*0e8011faSEmmanuel Vadot status = "okay"; 189*0e8011faSEmmanuel Vadot}; 190*0e8011faSEmmanuel Vadot 191*0e8011faSEmmanuel Vadot&venus_mem { 192*0e8011faSEmmanuel Vadot status = "okay"; 193*0e8011faSEmmanuel Vadot}; 194*0e8011faSEmmanuel Vadot 195*0e8011faSEmmanuel Vadot&wcnss { 196*0e8011faSEmmanuel Vadot status = "okay"; 197*0e8011faSEmmanuel Vadot}; 198*0e8011faSEmmanuel Vadot 199*0e8011faSEmmanuel Vadot&wcnss_iris { 200*0e8011faSEmmanuel Vadot compatible = "qcom,wcn3620"; 201*0e8011faSEmmanuel Vadot}; 202*0e8011faSEmmanuel Vadot 203*0e8011faSEmmanuel Vadot&wcnss_mem { 204*0e8011faSEmmanuel Vadot status = "okay"; 205*0e8011faSEmmanuel Vadot}; 206*0e8011faSEmmanuel Vadot 207*0e8011faSEmmanuel Vadot&tlmm { 208*0e8011faSEmmanuel Vadot accel_int_default: accel-int-default-state { 209*0e8011faSEmmanuel Vadot pins = "gpio115"; 210*0e8011faSEmmanuel Vadot function = "gpio"; 211*0e8011faSEmmanuel Vadot drive-strength = <2>; 212*0e8011faSEmmanuel Vadot bias-disable; 213*0e8011faSEmmanuel Vadot }; 214*0e8011faSEmmanuel Vadot 215*0e8011faSEmmanuel Vadot gpio_keys_default: gpio-keys-default-state { 216*0e8011faSEmmanuel Vadot pins = "gpio107", "gpio108"; 217*0e8011faSEmmanuel Vadot function = "gpio"; 218*0e8011faSEmmanuel Vadot drive-strength = <2>; 219*0e8011faSEmmanuel Vadot bias-pull-up; 220*0e8011faSEmmanuel Vadot }; 221*0e8011faSEmmanuel Vadot 222*0e8011faSEmmanuel Vadot magn_int_default: magn-int-default-state { 223*0e8011faSEmmanuel Vadot pins = "gpio69"; 224*0e8011faSEmmanuel Vadot function = "gpio"; 225*0e8011faSEmmanuel Vadot drive-strength = <2>; 226*0e8011faSEmmanuel Vadot bias-disable; 227*0e8011faSEmmanuel Vadot }; 228*0e8011faSEmmanuel Vadot 229*0e8011faSEmmanuel Vadot sdc2_cd_default: sdc2-cd-default-state { 230*0e8011faSEmmanuel Vadot pins = "gpio38"; 231*0e8011faSEmmanuel Vadot function = "gpio"; 232*0e8011faSEmmanuel Vadot drive-strength = <2>; 233*0e8011faSEmmanuel Vadot bias-disable; 234*0e8011faSEmmanuel Vadot }; 235*0e8011faSEmmanuel Vadot 236*0e8011faSEmmanuel Vadot touchscreen_default: touchscreen-default-state { 237*0e8011faSEmmanuel Vadot touchscreen-pins { 238*0e8011faSEmmanuel Vadot pins = "gpio13"; 239*0e8011faSEmmanuel Vadot function = "gpio"; 240*0e8011faSEmmanuel Vadot drive-strength = <2>; 241*0e8011faSEmmanuel Vadot bias-pull-up; 242*0e8011faSEmmanuel Vadot }; 243*0e8011faSEmmanuel Vadot 244*0e8011faSEmmanuel Vadot ce-pins { 245*0e8011faSEmmanuel Vadot pins = "gpio12"; 246*0e8011faSEmmanuel Vadot function = "gpio"; 247*0e8011faSEmmanuel Vadot drive-strength = <2>; 248*0e8011faSEmmanuel Vadot bias-disable; 249*0e8011faSEmmanuel Vadot }; 250*0e8011faSEmmanuel Vadot }; 251*0e8011faSEmmanuel Vadot}; 252