1 // SPDX-License-Identifier: GPL-2.0-only 1 // SPDX-License-Identifier: GPL-2.0-only 2 2 3 #include "msm8916-pm8916.dtsi" !! 3 #include "msm8916.dtsi" 4 #include "msm8916-modem-qdsp6.dtsi" !! 4 #include "pm8916.dtsi" 5 << 6 #include <dt-bindings/gpio/gpio.h> 5 #include <dt-bindings/gpio/gpio.h> 7 #include <dt-bindings/input/input.h> 6 #include <dt-bindings/input/input.h> 8 #include <dt-bindings/interrupt-controller/irq 7 #include <dt-bindings/interrupt-controller/irq.h> 9 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h << 10 #include <dt-bindings/sound/apq8016-lpass.h> << 11 8 12 / { 9 / { 13 aliases { 10 aliases { 14 mmc0 = &sdhc_1; /* eMMC */ !! 11 serial0 = &blsp1_uart2; 15 mmc1 = &sdhc_2; /* SD card */ << 16 serial0 = &blsp_uart2; << 17 }; 12 }; 18 13 19 chosen { 14 chosen { 20 stdout-path = "serial0"; 15 stdout-path = "serial0"; 21 }; 16 }; 22 17 23 reserved-memory { 18 reserved-memory { 24 /* Additional memory used by S 19 /* Additional memory used by Samsung firmware modifications */ 25 tz-apps@85500000 { 20 tz-apps@85500000 { 26 reg = <0x0 0x85500000 21 reg = <0x0 0x85500000 0x0 0xb00000>; 27 no-map; 22 no-map; 28 }; 23 }; 29 }; 24 }; 30 25 31 battery: battery { !! 26 soc { 32 compatible = "simple-battery"; !! 27 sdhci@7824000 { 33 precharge-current-microamp = < !! 28 status = "okay"; 34 precharge-upper-limit-microvol !! 29 35 }; !! 30 vmmc-supply = <&pm8916_l8>; >> 31 vqmmc-supply = <&pm8916_l5>; 36 32 37 clk_pwm: pwm { !! 33 pinctrl-names = "default", "sleep"; 38 compatible = "clk-pwm"; !! 34 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; 39 #pwm-cells = <2>; !! 35 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; >> 36 }; 40 37 41 clocks = <&gcc GCC_GP2_CLK>; !! 38 sdhci@7864000 { >> 39 status = "okay"; 42 40 43 pinctrl-names = "default"; !! 41 vmmc-supply = <&pm8916_l11>; 44 pinctrl-0 = <&motor_pwm_defaul !! 42 vqmmc-supply = <&pm8916_l12>; 45 status = "disabled"; !! 43 >> 44 pinctrl-names = "default", "sleep"; >> 45 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; >> 46 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; >> 47 >> 48 cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>; >> 49 }; >> 50 >> 51 serial@78b0000 { >> 52 status = "okay"; >> 53 pinctrl-names = "default", "sleep"; >> 54 pinctrl-0 = <&blsp1_uart2_default>; >> 55 pinctrl-1 = <&blsp1_uart2_sleep>; >> 56 }; >> 57 >> 58 usb@78d9000 { >> 59 status = "okay"; >> 60 extcon = <&muic>, <&muic>; >> 61 >> 62 hnp-disable; >> 63 srp-disable; >> 64 adp-disable; >> 65 >> 66 ulpi { >> 67 phy { >> 68 extcon = <&muic>; >> 69 v1p8-supply = <&pm8916_l7>; >> 70 v3p3-supply = <&pm8916_l13>; >> 71 }; >> 72 }; >> 73 }; >> 74 >> 75 wcnss@a21b000 { >> 76 status = "okay"; >> 77 }; >> 78 >> 79 /* >> 80 * Attempting to enable these devices causes a "synchronous >> 81 * external abort". Suspected cause is that the debug power >> 82 * domain is not enabled by default on this device. >> 83 * Disable these devices for now to avoid the crash. >> 84 * >> 85 * See: https://lore.kernel.org/linux-arm-msm/20190618202623.GA53651@gerhold.net/ >> 86 */ >> 87 tpiu@820000 { status = "disabled"; }; >> 88 funnel@821000 { status = "disabled"; }; >> 89 replicator@824000 { status = "disabled"; }; >> 90 etf@825000 { status = "disabled"; }; >> 91 etr@826000 { status = "disabled"; }; >> 92 funnel@841000 { status = "disabled"; }; >> 93 debug@850000 { status = "disabled"; }; >> 94 debug@852000 { status = "disabled"; }; >> 95 debug@854000 { status = "disabled"; }; >> 96 debug@856000 { status = "disabled"; }; >> 97 etm@85c000 { status = "disabled"; }; >> 98 etm@85d000 { status = "disabled"; }; >> 99 etm@85e000 { status = "disabled"; }; >> 100 etm@85f000 { status = "disabled"; }; 46 }; 101 }; 47 102 48 gpio-keys { 103 gpio-keys { 49 compatible = "gpio-keys"; 104 compatible = "gpio-keys"; 50 105 51 pinctrl-names = "default"; 106 pinctrl-names = "default"; 52 pinctrl-0 = <&gpio_keys_defaul 107 pinctrl-0 = <&gpio_keys_default>; 53 108 54 label = "GPIO Buttons"; 109 label = "GPIO Buttons"; 55 110 56 button-volume-up { !! 111 volume-up { 57 label = "Volume Up"; 112 label = "Volume Up"; 58 gpios = <&tlmm 107 GPI !! 113 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>; 59 linux,code = <KEY_VOLU 114 linux,code = <KEY_VOLUMEUP>; 60 }; 115 }; 61 116 62 button-home { !! 117 home { 63 label = "Home"; 118 label = "Home"; 64 gpios = <&tlmm 109 GPI !! 119 gpios = <&msmgpio 109 GPIO_ACTIVE_LOW>; 65 linux,code = <KEY_HOME 120 linux,code = <KEY_HOMEPAGE>; 66 }; 121 }; 67 }; 122 }; 68 123 69 gpio-hall-sensor { 124 gpio-hall-sensor { 70 compatible = "gpio-keys"; 125 compatible = "gpio-keys"; 71 126 72 pinctrl-names = "default"; 127 pinctrl-names = "default"; 73 pinctrl-0 = <&gpio_hall_sensor 128 pinctrl-0 = <&gpio_hall_sensor_default>; 74 129 75 label = "GPIO Hall Effect Sens 130 label = "GPIO Hall Effect Sensor"; 76 131 77 event-hall-sensor { !! 132 hall-sensor { 78 label = "Hall Effect S 133 label = "Hall Effect Sensor"; 79 gpios = <&tlmm 52 GPIO !! 134 gpios = <&msmgpio 52 GPIO_ACTIVE_LOW>; 80 linux,input-type = <EV 135 linux,input-type = <EV_SW>; 81 linux,code = <SW_LID>; 136 linux,code = <SW_LID>; 82 linux,can-disable; 137 linux,can-disable; 83 }; 138 }; 84 }; 139 }; 85 140 86 /* << 87 * NOTE: A5 connects GPIO 76 to a regl << 88 * driver IC but A3 connects the same << 89 * the driver. << 90 */ << 91 reg_motor_vdd: regulator-motor-vdd { << 92 compatible = "regulator-fixed" << 93 regulator-name = "motor_vdd"; << 94 regulator-min-microvolt = <300 << 95 regulator-max-microvolt = <300 << 96 << 97 gpio = <&tlmm 76 GPIO_ACTIVE_H << 98 enable-active-high; << 99 << 100 pinctrl-names = "default"; << 101 pinctrl-0 = <&motor_en_default << 102 }; << 103 << 104 reg_vdd_tsp_a: regulator-vdd-tsp-a { << 105 compatible = "regulator-fixed" << 106 regulator-name = "vdd_tsp_a"; << 107 regulator-min-microvolt = <330 << 108 regulator-max-microvolt = <330 << 109 << 110 gpio = <&tlmm 73 GPIO_ACTIVE_H << 111 enable-active-high; << 112 << 113 pinctrl-names = "default"; << 114 pinctrl-0 = <&tsp_en_default>; << 115 }; << 116 << 117 i2c-muic { 141 i2c-muic { 118 compatible = "i2c-gpio"; 142 compatible = "i2c-gpio"; 119 sda-gpios = <&tlmm 105 (GPIO_A !! 143 sda-gpios = <&msmgpio 105 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 120 scl-gpios = <&tlmm 106 (GPIO_A !! 144 scl-gpios = <&msmgpio 106 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 121 << 122 pinctrl-names = "default"; << 123 pinctrl-0 = <&muic_i2c_default << 124 145 125 #address-cells = <1>; 146 #address-cells = <1>; 126 #size-cells = <0>; 147 #size-cells = <0>; 127 148 128 muic: extcon@25 { !! 149 muic: sm5502@25 { 129 compatible = "siliconm 150 compatible = "siliconmitus,sm5502-muic"; 130 151 131 reg = <0x25>; 152 reg = <0x25>; 132 interrupt-parent = <&t !! 153 interrupt-parent = <&msmgpio>; 133 interrupts = <12 IRQ_T 154 interrupts = <12 IRQ_TYPE_EDGE_FALLING>; 134 155 135 pinctrl-names = "defau 156 pinctrl-names = "default"; 136 pinctrl-0 = <&muic_int 157 pinctrl-0 = <&muic_int_default>; 137 << 138 usb_con: connector { << 139 compatible = " << 140 label = "micro << 141 type = "micro" << 142 }; << 143 }; 158 }; 144 }; 159 }; >> 160 }; 145 161 146 i2c-tkey { !! 162 &msmgpio { 147 compatible = "i2c-gpio"; !! 163 gpio_keys_default: gpio_keys_default { 148 sda-gpios = <&tlmm 16 (GPIO_AC !! 164 pinmux { 149 scl-gpios = <&tlmm 17 (GPIO_AC !! 165 function = "gpio"; 150 !! 166 pins = "gpio107", "gpio109"; 151 pinctrl-names = "default"; << 152 pinctrl-0 = <&tkey_i2c_default << 153 << 154 #address-cells = <1>; << 155 #size-cells = <0>; << 156 << 157 touchkey: touchkey@20 { << 158 /* Note: Actually an A << 159 compatible = "corerive << 160 reg = <0x20>; << 161 << 162 interrupt-parent = <&t << 163 interrupts = <98 IRQ_T << 164 << 165 /* vcc/vdd-supply are << 166 vddio-supply = <&pm891 << 167 << 168 linux,keycodes = <KEY_ << 169 << 170 pinctrl-names = "defau << 171 pinctrl-0 = <&tkey_def << 172 }; 167 }; 173 }; !! 168 pinconf { 174 !! 169 pins = "gpio107", "gpio109"; 175 i2c-nfc { !! 170 drive-strength = <2>; 176 compatible = "i2c-gpio"; !! 171 bias-pull-up; 177 sda-gpios = <&tlmm 0 (GPIO_ACT << 178 scl-gpios = <&tlmm 1 (GPIO_ACT << 179 << 180 pinctrl-names = "default"; << 181 pinctrl-0 = <&nfc_i2c_default> << 182 << 183 #address-cells = <1>; << 184 #size-cells = <0>; << 185 << 186 nfc@27 { << 187 compatible = "samsung, << 188 reg = <0x27>; << 189 << 190 interrupt-parent = <&t << 191 interrupts = <21 IRQ_T << 192 << 193 en-gpios = <&tlmm 20 G << 194 wake-gpios = <&tlmm 49 << 195 << 196 clocks = <&rpmcc RPM_S << 197 << 198 pinctrl-names = "defau << 199 pinctrl-0 = <&nfc_defa << 200 }; 172 }; 201 }; 173 }; 202 174 203 vibrator: vibrator { !! 175 gpio_hall_sensor_default: gpio_hall_sensor_default { 204 compatible = "pwm-vibrator"; !! 176 pinmux { 205 !! 177 function = "gpio"; 206 pwms = <&clk_pwm 0 100000>; !! 178 pins = "gpio52"; 207 pwm-names = "enable"; << 208 << 209 vcc-supply = <®_motor_vdd>; << 210 status = "disabled"; << 211 }; << 212 }; << 213 << 214 &blsp_i2c1 { << 215 status = "okay"; << 216 << 217 speaker_codec: audio-codec@34 { << 218 compatible = "nxp,tfa9895"; << 219 reg = <0x34>; << 220 vddd-supply = <&pm8916_l5>; << 221 sound-name-prefix = "Speaker"; << 222 #sound-dai-cells = <0>; << 223 }; << 224 }; << 225 << 226 &blsp_i2c2 { << 227 status = "okay"; << 228 << 229 accelerometer: accelerometer@10 { << 230 compatible = "bosch,bmc150_acc << 231 reg = <0x10>; << 232 interrupt-parent = <&tlmm>; << 233 interrupts = <115 IRQ_TYPE_EDG << 234 << 235 vdd-supply = <&pm8916_l17>; << 236 vddio-supply = <&pm8916_l5>; << 237 << 238 pinctrl-names = "default"; << 239 pinctrl-0 = <&accel_int_defaul << 240 }; << 241 << 242 magnetometer@12 { << 243 compatible = "bosch,bmc150_mag << 244 reg = <0x12>; << 245 << 246 vdd-supply = <&pm8916_l17>; << 247 vddio-supply = <&pm8916_l5>; << 248 }; << 249 }; << 250 << 251 &blsp_i2c4 { << 252 status = "okay"; << 253 << 254 fuel-gauge@35 { << 255 compatible = "richtek,rt5033-b << 256 reg = <0x35>; << 257 interrupt-parent = <&tlmm>; << 258 interrupts = <121 IRQ_TYPE_EDG << 259 << 260 pinctrl-names = "default"; << 261 pinctrl-0 = <&fg_alert_default << 262 << 263 power-supplies = <&charger>; << 264 }; << 265 }; << 266 << 267 &blsp_i2c6 { << 268 status = "okay"; << 269 << 270 pmic@34 { << 271 compatible = "richtek,rt5033"; << 272 reg = <0x34>; << 273 << 274 interrupts-extended = <&tlmm 6 << 275 << 276 pinctrl-0 = <&pmic_int_default << 277 pinctrl-names = "default"; << 278 << 279 regulators { << 280 rt5033_reg_safe_ldo: S << 281 regulator-min- << 282 regulator-max- << 283 regulator-alwa << 284 }; << 285 << 286 /* << 287 * Needed for camera, << 288 * Define empty nodes << 289 * regulators. << 290 */ << 291 LDO {}; << 292 BUCK {}; << 293 }; 179 }; 294 !! 180 pinconf { 295 charger: charger { !! 181 pins = "gpio52"; 296 compatible = "richtek, !! 182 drive-strength = <2>; 297 monitored-battery = <& !! 183 bias-disable; 298 richtek,usb-connector << 299 }; 184 }; 300 }; 185 }; 301 }; << 302 186 303 &blsp_uart2 { !! 187 muic_int_default: muic_int_default { 304 status = "okay"; !! 188 pinmux { 305 }; !! 189 function = "gpio"; 306 !! 190 pins = "gpio12"; 307 &gpu { !! 191 }; 308 status = "okay"; !! 192 pinconf { 309 }; !! 193 pins = "gpio12"; 310 !! 194 drive-strength = <2>; 311 /* !! 195 bias-disable; 312 * For some reason the speaker amplifier is co !! 196 }; 313 * (MI2S_2_D1) instead of the first (MI2S_2_D0 << 314 * device tree, otherwise audio will seemingly << 315 * but the speaker stays silent. << 316 * << 317 * When routing audio via QDSP6 (the default) << 318 * the definitions from &q6afedai are used. Wh << 319 * be alternatively routed directly to the LPA << 320 * The definitions for &lpass are here for com << 321 * setup with minor changes to the DT (either << 322 */ << 323 &lpass { << 324 dai-link@3 { << 325 reg = <MI2S_QUATERNARY>; << 326 qcom,playback-sd-lines = <1>; << 327 }; 197 }; 328 }; 198 }; 329 199 330 &mdss { !! 200 &smd_rpm_regulators { 331 status = "okay"; !! 201 vdd_l1_l2_l3-supply = <&pm8916_s3>; 332 }; !! 202 vdd_l4_l5_l6-supply = <&pm8916_s4>; 333 !! 203 vdd_l7-supply = <&pm8916_s4>; 334 &mdss_dsi0 { << 335 pinctrl-names = "default", "sleep"; << 336 pinctrl-0 = <&mdss_default>; << 337 pinctrl-1 = <&mdss_sleep>; << 338 }; << 339 << 340 &mpss_mem { << 341 reg = <0x0 0x86800000 0x0 0x5400000>; << 342 }; << 343 204 344 &pm8916_resin { !! 205 s1 { 345 status = "okay"; !! 206 regulator-min-microvolt = <500000>; 346 linux,code = <KEY_VOLUMEDOWN>; !! 207 regulator-max-microvolt = <1300000>; 347 }; << 348 << 349 &pm8916_rpm_regulators { << 350 pm8916_l17: l17 { << 351 regulator-min-microvolt = <285 << 352 regulator-max-microvolt = <285 << 353 }; 208 }; 354 }; << 355 209 356 &q6afedai { !! 210 s3 { 357 dai@22 { !! 211 regulator-min-microvolt = <1200000>; 358 reg = <QUATERNARY_MI2S_RX>; !! 212 regulator-max-microvolt = <1300000>; 359 qcom,sd-lines = <1>; << 360 }; 213 }; 361 }; << 362 << 363 &sdhc_1 { << 364 status = "okay"; << 365 }; << 366 << 367 &sdhc_2 { << 368 status = "okay"; << 369 << 370 pinctrl-names = "default", "sleep"; << 371 pinctrl-0 = <&sdc2_default &sdc2_cd_de << 372 pinctrl-1 = <&sdc2_sleep &sdc2_cd_defa << 373 214 374 cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; !! 215 s4 { 375 }; !! 216 regulator-min-microvolt = <1800000>; 376 !! 217 regulator-max-microvolt = <2100000>; 377 &sound { << 378 model = "samsung-a2015"; << 379 audio-routing = << 380 "AMIC1", "MIC BIAS External1", << 381 "AMIC2", "MIC BIAS Internal2", << 382 "AMIC3", "MIC BIAS External1"; << 383 << 384 pinctrl-0 = <&cdc_pdm_default &sec_mi2 << 385 pinctrl-1 = <&cdc_pdm_sleep &sec_mi2s_ << 386 pinctrl-names = "default", "sleep"; << 387 << 388 sound_link_backend2: backend2-dai-link << 389 link-name = "Quaternary MI2S"; << 390 << 391 cpu { << 392 sound-dai = <&q6afedai << 393 }; << 394 platform { << 395 sound-dai = <&q6routin << 396 }; << 397 codec { << 398 sound-dai = <&speaker_ << 399 }; << 400 }; 218 }; 401 }; << 402 << 403 &usb { << 404 status = "okay"; << 405 extcon = <&muic>, <&muic>; << 406 }; << 407 << 408 &usb_hs_phy { << 409 extcon = <&muic>; << 410 }; << 411 << 412 &venus { << 413 status = "okay"; << 414 }; << 415 << 416 &venus_mem { << 417 status = "okay"; << 418 }; << 419 << 420 &tlmm { << 421 accel_int_default: accel-int-default-s << 422 pins = "gpio115"; << 423 function = "gpio"; << 424 219 425 drive-strength = <2>; !! 220 l1 { 426 bias-disable; !! 221 regulator-min-microvolt = <1225000>; >> 222 regulator-max-microvolt = <1225000>; 427 }; 223 }; 428 224 429 fg_alert_default: fg-alert-default-sta !! 225 l2 { 430 pins = "gpio121"; !! 226 regulator-min-microvolt = <1200000>; 431 function = "gpio"; !! 227 regulator-max-microvolt = <1200000>; 432 << 433 drive-strength = <2>; << 434 bias-disable; << 435 }; 228 }; 436 229 437 gpio_keys_default: gpio-keys-default-s !! 230 l3 { 438 pins = "gpio107", "gpio109"; !! 231 regulator-min-microvolt = <500000>; 439 function = "gpio"; !! 232 regulator-max-microvolt = <1287500>; 440 << 441 drive-strength = <2>; << 442 bias-pull-up; << 443 }; 233 }; 444 234 445 gpio_hall_sensor_default: gpio-hall-se !! 235 l4 { 446 pins = "gpio52"; !! 236 regulator-min-microvolt = <2050000>; 447 function = "gpio"; !! 237 regulator-max-microvolt = <2050000>; 448 << 449 drive-strength = <2>; << 450 bias-disable; << 451 }; 238 }; 452 239 453 mdss_default: mdss-default-state { !! 240 l5 { 454 pins = "gpio25"; !! 241 regulator-min-microvolt = <1800000>; 455 function = "gpio"; !! 242 regulator-max-microvolt = <1800000>; 456 << 457 drive-strength = <8>; << 458 bias-disable; << 459 }; 243 }; 460 mdss_sleep: mdss-sleep-state { << 461 pins = "gpio25"; << 462 function = "gpio"; << 463 244 464 drive-strength = <2>; !! 245 l6 { 465 bias-pull-down; !! 246 regulator-min-microvolt = <1800000>; >> 247 regulator-max-microvolt = <1800000>; 466 }; 248 }; 467 249 468 motor_en_default: motor-en-default-sta !! 250 l7 { 469 pins = "gpio76"; !! 251 regulator-min-microvolt = <1800000>; 470 function = "gpio"; !! 252 regulator-max-microvolt = <1800000>; 471 << 472 drive-strength = <2>; << 473 bias-disable; << 474 }; 253 }; 475 254 476 motor_pwm_default: motor-pwm-default-s !! 255 l8 { 477 pins = "gpio50"; !! 256 regulator-min-microvolt = <2850000>; 478 function = "gcc_gp2_clk_a"; !! 257 regulator-max-microvolt = <2900000>; 479 }; 258 }; 480 259 481 muic_i2c_default: muic-i2c-default-sta !! 260 l9 { 482 pins = "gpio105", "gpio106"; !! 261 regulator-min-microvolt = <3300000>; 483 function = "gpio"; !! 262 regulator-max-microvolt = <3300000>; 484 << 485 drive-strength = <2>; << 486 bias-disable; << 487 }; 263 }; 488 264 489 muic_int_default: muic-int-default-sta !! 265 l10 { 490 pins = "gpio12"; !! 266 regulator-min-microvolt = <2700000>; 491 function = "gpio"; !! 267 regulator-max-microvolt = <2800000>; 492 << 493 drive-strength = <2>; << 494 bias-disable; << 495 }; 268 }; 496 269 497 nfc_default: nfc-default-state { !! 270 l11 { 498 nfc-pins { !! 271 regulator-min-microvolt = <1800000>; 499 pins = "gpio20", "gpio !! 272 regulator-max-microvolt = <2950000>; 500 function = "gpio"; !! 273 regulator-allow-set-load; 501 !! 274 regulator-system-load = <200000>; 502 drive-strength = <2>; << 503 bias-disable; << 504 }; << 505 << 506 irq-pins { << 507 pins = "gpio21"; << 508 function = "gpio"; << 509 << 510 drive-strength = <2>; << 511 bias-pull-down; << 512 }; << 513 }; 275 }; 514 276 515 nfc_i2c_default: nfc-i2c-default-state !! 277 l12 { 516 pins = "gpio0", "gpio1"; !! 278 regulator-min-microvolt = <1800000>; 517 function = "gpio"; !! 279 regulator-max-microvolt = <2950000>; 518 << 519 drive-strength = <2>; << 520 bias-disable; << 521 }; 280 }; 522 281 523 pmic_int_default: pmic-int-default-sta !! 282 l13 { 524 pins = "gpio62"; !! 283 regulator-min-microvolt = <3075000>; 525 function = "gpio"; !! 284 regulator-max-microvolt = <3075000>; 526 drive-strength = <2>; << 527 bias-disable; << 528 }; 285 }; 529 286 530 sdc2_cd_default: sdc2-cd-default-state !! 287 l14 { 531 pins = "gpio38"; !! 288 regulator-min-microvolt = <1800000>; 532 function = "gpio"; !! 289 regulator-max-microvolt = <3300000>; 533 drive-strength = <2>; << 534 bias-disable; << 535 }; 290 }; 536 291 537 tkey_default: tkey-default-state { !! 292 l15 { 538 pins = "gpio98"; !! 293 regulator-min-microvolt = <1800000>; 539 function = "gpio"; !! 294 regulator-max-microvolt = <3300000>; 540 << 541 drive-strength = <2>; << 542 bias-disable; << 543 }; 295 }; 544 296 545 tkey_i2c_default: tkey-i2c-default-sta !! 297 l16 { 546 pins = "gpio16", "gpio17"; !! 298 regulator-min-microvolt = <1800000>; 547 function = "gpio"; !! 299 regulator-max-microvolt = <3300000>; 548 << 549 drive-strength = <2>; << 550 bias-disable; << 551 }; 300 }; 552 301 553 tsp_en_default: tsp-en-default-state { !! 302 l17 { 554 pins = "gpio73"; !! 303 regulator-min-microvolt = <2850000>; 555 function = "gpio"; !! 304 regulator-max-microvolt = <2850000>; 556 << 557 drive-strength = <2>; << 558 bias-disable; << 559 }; 305 }; 560 306 561 ts_int_default: ts-int-default-state { !! 307 l18 { 562 pins = "gpio13"; !! 308 regulator-min-microvolt = <2700000>; 563 function = "gpio"; !! 309 regulator-max-microvolt = <2700000>; 564 << 565 drive-strength = <2>; << 566 bias-disable; << 567 }; 310 }; 568 }; 311 }; 569 312 570 &pm8916_gpios { !! 313 &spmi_bus { 571 nfc_clk_req: nfc-clk-req-state { !! 314 pm8916@0 { 572 pins = "gpio2"; !! 315 pon@800 { 573 function = "func1"; !! 316 volume-down { 574 !! 317 compatible = "qcom,pm8941-resin"; 575 input-enable; !! 318 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>; 576 bias-disable; !! 319 bias-pull-up; 577 power-source = <PM8916_GPIO_L2 !! 320 linux,code = <KEY_VOLUMEDOWN>; >> 321 }; >> 322 }; 578 }; 323 }; 579 }; 324 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.