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