1// SPDX-License-Identifier: GPL-2.0-only 2 3#include "msm8916-pm8916.dtsi" 4#include "msm8916-modem-qdsp6.dtsi" 5 6#include <dt-bindings/gpio/gpio.h> 7#include <dt-bindings/input/input.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9 10/ { 11 aliases { 12 mmc0 = &sdhc_1; /* eMMC */ 13 mmc1 = &sdhc_2; /* SD card */ 14 serial0 = &blsp_uart2; 15 }; 16 17 chosen { 18 stdout-path = "serial0"; 19 }; 20 21 reserved-memory { 22 /* Additional memory used by Samsung firmware modifications */ 23 tz-apps@85a00000 { 24 reg = <0x0 0x85a00000 0x0 0x600000>; 25 no-map; 26 }; 27 }; 28 29 clk_pwm_backlight: backlight { 30 compatible = "pwm-backlight"; 31 pwms = <&clk_pwm 0 100000>; 32 33 enable-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>; 34 35 brightness-levels = <0 255>; 36 num-interpolated-steps = <255>; 37 default-brightness-level = <128>; 38 39 pinctrl-0 = <&backlight_en_default>; 40 pinctrl-names = "default"; 41 }; 42 43 clk_pwm: pwm { 44 compatible = "clk-pwm"; 45 #pwm-cells = <2>; 46 47 clocks = <&gcc GCC_GP2_CLK>; 48 49 pinctrl-0 = <&backlight_pwm_default>; 50 pinctrl-names = "default"; 51 }; 52 53 gpio-keys { 54 compatible = "gpio-keys"; 55 56 pinctrl-0 = <&gpio_keys_default>; 57 pinctrl-names = "default"; 58 59 label = "GPIO Buttons"; 60 61 button-volume-up { 62 label = "Volume Up"; 63 gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 64 linux,code = <KEY_VOLUMEUP>; 65 }; 66 67 button-home { 68 label = "Home"; 69 gpios = <&tlmm 109 GPIO_ACTIVE_LOW>; 70 linux,code = <KEY_HOMEPAGE>; 71 }; 72 }; 73 74 haptic { 75 compatible = "regulator-haptic"; 76 haptic-supply = <®_motor_vdd>; 77 min-microvolt = <3300000>; 78 max-microvolt = <3300000>; 79 }; 80 81 reg_motor_vdd: regulator-motor-vdd { 82 compatible = "regulator-fixed"; 83 regulator-name = "motor_vdd"; 84 regulator-min-microvolt = <3300000>; 85 regulator-max-microvolt = <3300000>; 86 87 gpio = <&tlmm 72 GPIO_ACTIVE_HIGH>; 88 enable-active-high; 89 90 pinctrl-0 = <&motor_en_default>; 91 pinctrl-names = "default"; 92 }; 93 94 reg_vdd_tsp_a: regulator-vdd-tsp-a { 95 compatible = "regulator-fixed"; 96 regulator-name = "vdd_tsp_a"; 97 regulator-min-microvolt = <3000000>; 98 regulator-max-microvolt = <3000000>; 99 100 gpio = <&tlmm 73 GPIO_ACTIVE_HIGH>; 101 enable-active-high; 102 103 pinctrl-0 = <&tsp_en_default>; 104 pinctrl-names = "default"; 105 }; 106}; 107 108&blsp_i2c1 { 109 status = "okay"; 110 111 muic: extcon@25 { 112 compatible = "siliconmitus,sm5502-muic"; 113 reg = <0x25>; 114 interrupts-extended = <&tlmm 12 IRQ_TYPE_EDGE_FALLING>; 115 pinctrl-0 = <&muic_int_default>; 116 pinctrl-names = "default"; 117 }; 118}; 119 120&blsp_i2c4 { 121 status = "okay"; 122 123 fuel-gauge@35 { 124 compatible = "richtek,rt5033-battery"; 125 reg = <0x35>; 126 127 interrupts-extended = <&tlmm 121 IRQ_TYPE_EDGE_FALLING>; 128 129 pinctrl-0 = <&fg_alert_default>; 130 pinctrl-names = "default"; 131 }; 132}; 133 134&blsp_i2c5 { 135 status = "okay"; 136 137 touchscreen: touchscreen@20 { 138 compatible = "zinitix,bt541"; 139 reg = <0x20>; 140 141 interrupts-extended = <&tlmm 13 IRQ_TYPE_EDGE_FALLING>; 142 143 touchscreen-size-x = <540>; 144 touchscreen-size-y = <960>; 145 146 vcca-supply = <®_vdd_tsp_a>; 147 vdd-supply = <&pm8916_l6>; 148 149 pinctrl-0 = <&tsp_int_default>; 150 pinctrl-names = "default"; 151 }; 152}; 153 154&blsp_uart2 { 155 status = "okay"; 156}; 157 158&mpss_mem { 159 reg = <0x0 0x86800000 0x0 0x5000000>; 160}; 161 162&pm8916_resin { 163 linux,code = <KEY_VOLUMEDOWN>; 164 status = "okay"; 165}; 166 167&pm8916_rpm_regulators { 168 pm8916_l17: l17 { 169 regulator-min-microvolt = <2850000>; 170 regulator-max-microvolt = <2850000>; 171 }; 172}; 173 174&sdhc_1 { 175 status = "okay"; 176}; 177 178&sdhc_2 { 179 pinctrl-0 = <&sdc2_default &sdc2_cd_default>; 180 pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>; 181 pinctrl-names = "default", "sleep"; 182 183 cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 184 185 status = "okay"; 186}; 187 188&sound { 189 model = "msm8916-1mic"; 190 audio-routing = 191 "AMIC1", "MIC BIAS External1", 192 "AMIC2", "MIC BIAS Internal2", 193 "AMIC3", "MIC BIAS External1"; 194}; 195 196&usb { 197 extcon = <&muic>, <&muic>; 198 status = "okay"; 199}; 200 201&usb_hs_phy { 202 extcon = <&muic>; 203}; 204 205&venus { 206 status = "okay"; 207}; 208 209&venus_mem { 210 status = "okay"; 211}; 212 213&wcnss { 214 status = "okay"; 215}; 216 217&wcnss_iris { 218 compatible = "qcom,wcn3620"; 219}; 220 221&wcnss_mem { 222 status = "okay"; 223}; 224 225&tlmm { 226 backlight_en_default: backlight-en-default-state { 227 pins = "gpio98"; 228 function = "gpio"; 229 drive-strength = <2>; 230 bias-disable; 231 }; 232 233 backlight_pwm_default: backlight-pwm-default-state { 234 pins = "gpio50"; 235 function = "gcc_gp2_clk_a"; 236 }; 237 238 fg_alert_default: fg-alert-default-state { 239 pins = "gpio121"; 240 function = "gpio"; 241 drive-strength = <2>; 242 bias-disable; 243 }; 244 245 gpio_keys_default: gpio-keys-default-state { 246 pins = "gpio107", "gpio109"; 247 function = "gpio"; 248 drive-strength = <2>; 249 bias-pull-up; 250 }; 251 252 motor_en_default: motor-en-default-state { 253 pins = "gpio72"; 254 function = "gpio"; 255 drive-strength = <2>; 256 bias-disable; 257 }; 258 259 muic_int_default: muic-int-default-state { 260 pins = "gpio12"; 261 function = "gpio"; 262 drive-strength = <2>; 263 bias-disable; 264 }; 265 266 sdc2_cd_default: sdc2-cd-default-state { 267 pins = "gpio38"; 268 function = "gpio"; 269 drive-strength = <2>; 270 bias-disable; 271 }; 272 273 tsp_en_default: tsp-en-default-state { 274 pins = "gpio73"; 275 function = "gpio"; 276 drive-strength = <2>; 277 bias-disable; 278 }; 279 280 tsp_int_default: tsp-int-default-state { 281 pins = "gpio13"; 282 function = "gpio"; 283 drive-strength = <2>; 284 bias-disable; 285 }; 286}; 287