1 // SPDX-License-Identifier: GPL-2.0-only 2 3 /dts-v1/; 4 5 #include "msm8939-pm8916.dtsi" 6 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include <dt-bindings/leds/common.h> 11 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 12 #include <dt-bindings/pinctrl/qcom,pmic-mpp.h> 13 14 / { 15 model = "BQ Aquaris M5 (Longcheer L9100)"; 16 compatible = "longcheer,l9100", "qcom,msm8939"; 17 chassis-type = "handset"; 18 19 aliases { 20 mmc0 = &sdhc_1; /* eMMC */ 21 mmc1 = &sdhc_2; /* SD card */ 22 serial0 = &blsp_uart2; 23 }; 24 25 chosen { 26 stdout-path = "serial0"; 27 }; 28 29 gpio-hall-sensor { 30 compatible = "gpio-keys"; 31 32 pinctrl-0 = <&gpio_hall_sensor_default>; 33 pinctrl-names = "default"; 34 35 label = "GPIO Hall Effect Sensor"; 36 37 event-hall-sensor { 38 label = "Hall Effect Sensor"; 39 gpios = <&tlmm 20 GPIO_ACTIVE_LOW>; 40 linux,input-type = <EV_SW>; 41 linux,code = <SW_LID>; 42 linux,can-disable; 43 }; 44 }; 45 46 gpio-keys { 47 compatible = "gpio-keys"; 48 49 pinctrl-0 = <&gpio_keys_default>; 50 pinctrl-names = "default"; 51 52 label = "GPIO Buttons"; 53 54 button-volume-up { 55 label = "Volume Up"; 56 gpios = <&tlmm 107 GPIO_ACTIVE_LOW>; 57 linux,code = <KEY_VOLUMEUP>; 58 }; 59 }; 60 61 leds { 62 compatible = "gpio-leds"; 63 64 led-0 { 65 gpios = <&tlmm 17 GPIO_ACTIVE_HIGH>; 66 color = <LED_COLOR_ID_WHITE>; 67 default-state = "off"; 68 function = LED_FUNCTION_KBD_BACKLIGHT; 69 70 pinctrl-0 = <&button_backlight_default>; 71 pinctrl-names = "default"; 72 }; 73 }; 74 75 reg_ts_vdd: regulator-vdd-ts { 76 compatible = "regulator-fixed"; 77 regulator-name = "regulator-vdd-ts"; 78 regulator-min-microvolt = <2850000>; 79 regulator-max-microvolt = <2850000>; 80 81 gpio = <&tlmm 78 GPIO_ACTIVE_HIGH>; 82 enable-active-high; 83 84 pinctrl-0 = <&ts_vdd_default>; 85 pinctrl-names = "default"; 86 }; 87 88 backlight { 89 compatible = "pwm-backlight"; 90 pwms = <&pm8916_pwm 0 100000>; 91 brightness-levels = <0 255>; 92 num-interpolated-steps = <255>; 93 default-brightness-level = <128>; 94 enable-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>; 95 96 pinctrl-0 = <&lcd_bl_en_default>; 97 pinctrl-names = "default"; 98 }; 99 100 flash-led-controller { 101 compatible = "ocs,ocp8110"; 102 flash-gpios = <&tlmm 8 GPIO_ACTIVE_HIGH>; 103 enable-gpios = <&tlmm 49 GPIO_ACTIVE_HIGH>; 104 105 pinctrl-0 = <&camera_front_flash_default>; 106 pinctrl-names = "default"; 107 108 led { 109 function = LED_FUNCTION_FLASH; 110 color = <LED_COLOR_ID_WHITE>; 111 flash-max-timeout-us = <250000>; 112 }; 113 }; 114 115 usb_id: usb-id { 116 compatible = "linux,extcon-usb-gpio"; 117 id-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>; 118 pinctrl-0 = <&usb_id_default &usb_id_switch_default>; 119 pinctrl-names = "default"; 120 }; 121 122 }; 123 124 &blsp_i2c2 { 125 status = "okay"; 126 127 led-controller@30 { 128 compatible = "kinetic,ktd2026"; 129 reg = <0x30>; 130 #address-cells = <1>; 131 #size-cells = <0>; 132 133 vin-supply = <&pm8916_l17>; 134 vio-supply = <&pm8916_l6>; 135 136 pinctrl-0 = <&status_led_default>; 137 pinctrl-names = "default"; 138 139 multi-led { 140 color = <LED_COLOR_ID_RGB>; 141 function = LED_FUNCTION_STATUS; 142 143 #address-cells = <1>; 144 #size-cells = <0>; 145 146 led@0 { 147 reg = <0>; 148 color = <LED_COLOR_ID_RED>; 149 }; 150 151 led@1 { 152 reg = <1>; 153 color = <LED_COLOR_ID_GREEN>; 154 }; 155 156 led@2 { 157 reg = <2>; 158 color = <LED_COLOR_ID_BLUE>; 159 }; 160 }; 161 }; 162 163 flash-led-controller@53 { 164 compatible = "silergy,sy7802"; 165 reg = <0x53>; 166 167 enable-gpios = <&tlmm 16 GPIO_ACTIVE_HIGH>; 168 169 pinctrl-0 = <&camera_rear_flash_default>; 170 pinctrl-names = "default"; 171 172 #address-cells = <1>; 173 #size-cells = <0>; 174 175 led@0 { 176 reg = <0>; 177 function = LED_FUNCTION_FLASH; 178 color = <LED_COLOR_ID_WHITE>; 179 led-sources = <0>, <1>; 180 }; 181 }; 182 }; 183 184 &blsp_i2c3 { 185 status = "okay"; 186 187 magnetometer@d { 188 compatible = "asahi-kasei,ak09911"; 189 reg = <0x0d>; 190 191 vdd-supply = <&pm8916_l17>; 192 vid-supply = <&pm8916_l6>; 193 194 reset-gpios = <&tlmm 68 GPIO_ACTIVE_HIGH>; 195 196 pinctrl-0 = <&mag_reset_default>; 197 pinctrl-names = "default"; 198 }; 199 200 light-sensor@23 { 201 compatible = "liteon,ltr559"; 202 reg = <0x23>; 203 proximity-near-level = <75>; 204 205 vdd-supply = <&pm8916_l17>; 206 vddio-supply = <&pm8916_l5>; 207 208 interrupts-extended = <&tlmm 113 IRQ_TYPE_EDGE_FALLING>; 209 210 pinctrl-0 = <&light_int_default>; 211 pinctrl-names = "default"; 212 }; 213 214 imu@68 { 215 compatible = "bosch,bmi160"; 216 reg = <0x68>; 217 218 vdd-supply = <&pm8916_l17>; 219 vddio-supply = <&pm8916_l6>; 220 }; 221 }; 222 223 &blsp_i2c5 { 224 status = "okay"; 225 226 touchscreen@4a { 227 compatible = "atmel,maxtouch"; 228 reg = <0x4a>; 229 230 interrupts-extended = <&tlmm 13 IRQ_TYPE_LEVEL_LOW>; 231 232 reset-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; 233 234 vdda-supply = <&pm8916_l6>; 235 vdd-supply = <®_ts_vdd>; 236 237 pinctrl-0 = <&ts_int_reset_default>; 238 pinctrl-names = "default"; 239 240 /* Keys listed from right to left */ 241 linux,keycodes = <KEY_APPSELECT KEY_HOMEPAGE KEY_BACK>; 242 }; 243 }; 244 245 &blsp_uart2 { 246 status = "okay"; 247 }; 248 249 &pm8916_gpios { 250 status_led_default: status-led-default-state { 251 pins = "gpio3"; 252 function = PMIC_GPIO_FUNC_NORMAL; 253 power-source = <PM8916_GPIO_VPH>; 254 bias-disable; 255 output-high; 256 }; 257 }; 258 259 &pm8916_mpps { 260 pwm_out: mpp4-state { 261 pins = "mpp4"; 262 function = "digital"; 263 power-source = <PM8916_MPP_VPH>; 264 output-low; 265 qcom,dtest = <1>; 266 }; 267 }; 268 269 &pm8916_pwm { 270 pinctrl-0 = <&pwm_out>; 271 pinctrl-names = "default"; 272 status = "okay"; 273 }; 274 275 &pm8916_resin { 276 linux,code = <KEY_VOLUMEDOWN>; 277 status = "okay"; 278 }; 279 280 &pm8916_rpm_regulators { 281 pm8916_l17: l17 { 282 regulator-min-microvolt = <2850000>; 283 regulator-max-microvolt = <2850000>; 284 }; 285 }; 286 287 &pm8916_vib { 288 status = "okay"; 289 }; 290 291 &sdhc_1 { 292 status = "okay"; 293 }; 294 295 &sdhc_2 { 296 pinctrl-0 = <&sdc2_default &sdc2_cd_default>; 297 pinctrl-1 = <&sdc2_sleep &sdc2_cd_default>; 298 pinctrl-names = "default", "sleep"; 299 300 cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 301 302 status = "okay"; 303 }; 304 305 &usb { 306 extcon = <&usb_id>, <&usb_id>; 307 status = "okay"; 308 }; 309 310 &usb_hs_phy { 311 extcon = <&usb_id>; 312 }; 313 314 &wcnss { 315 status = "okay"; 316 }; 317 318 &wcnss_iris { 319 compatible = "qcom,wcn3620"; 320 }; 321 322 &wcnss_mem { 323 status = "okay"; 324 }; 325 326 &tlmm { 327 button_backlight_default: button-backlight-default-state { 328 pins = "gpio17"; 329 function = "gpio"; 330 drive-strength = <2>; 331 bias-disable; 332 }; 333 334 camera_front_flash_default: camera-front-flash-default-state { 335 pins = "gpio8", "gpio49"; 336 function = "gpio"; 337 drive-strength = <2>; 338 bias-disable; 339 }; 340 341 camera_rear_flash_default: camera-rear-flash-default-state { 342 pins = "gpio9", "gpio16", "gpio51"; 343 function = "gpio"; 344 drive-strength = <2>; 345 bias-disable; 346 }; 347 348 gpio_hall_sensor_default: gpio-hall-sensor-default-state { 349 pins = "gpio20"; 350 function = "gpio"; 351 drive-strength = <2>; 352 bias-disable; 353 }; 354 355 gpio_keys_default: gpio-keys-default-state { 356 pins = "gpio107"; 357 function = "gpio"; 358 drive-strength = <2>; 359 bias-pull-up; 360 }; 361 362 lcd_bl_en_default: lcd-bl-en-default-state { 363 pins = "gpio98"; 364 function = "gpio"; 365 drive-strength = <2>; 366 bias-disable; 367 }; 368 369 light_int_default: light-int-default-state { 370 pins = "gpio113"; 371 function = "gpio"; 372 drive-strength = <2>; 373 bias-disable; 374 }; 375 376 mag_reset_default: mag-reset-default-state { 377 pins = "gpio68"; 378 function = "gpio"; 379 drive-strength = <2>; 380 bias-disable; 381 }; 382 383 sdc2_cd_default: sdc2-cd-default-state { 384 pins = "gpio38"; 385 function = "gpio"; 386 drive-strength = <2>; 387 bias-disable; 388 }; 389 390 ts_int_reset_default: ts-int-reset-default-state { 391 pins = "gpio12", "gpio13"; 392 function = "gpio"; 393 drive-strength = <2>; 394 bias-disable; 395 }; 396 397 ts_vdd_default: ts-vdd-default-state { 398 pins = "gpio78"; 399 function = "gpio"; 400 drive-strength = <2>; 401 bias-disable; 402 }; 403 404 usb_id_default: usb-id-default-state { 405 pins = "gpio110"; 406 function = "gpio"; 407 drive-strength = <8>; 408 bias-pull-up; 409 }; 410 411 usb_id_switch_default: usb-id-switch-default-state { 412 pins = "gpio121"; 413 function = "gpio"; 414 drive-strength = <2>; 415 output-high; 416 }; 417 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.