1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Google Trogdor device tree source (common between revisions) 4 * 5 * Copyright 2019 Google LLC. 6 */ 7 8#include <dt-bindings/gpio/gpio.h> 9#include <dt-bindings/input/gpio-keys.h> 10#include <dt-bindings/input/input.h> 11#include <dt-bindings/leds/common.h> 12#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 13#include <dt-bindings/sound/sc7180-lpass.h> 14 15#include "sc7180.dtsi" 16/* PMICs depend on spmi_bus label and so must come after sc7180.dtsi */ 17#include "pm6150.dtsi" 18#include "pm6150l.dtsi" 19 20/ { 21 thermal-zones { 22 charger_thermal: charger-thermal { 23 polling-delay-passive = <0>; 24 polling-delay = <0>; 25 26 thermal-sensors = <&pm6150_adc_tm 0>; 27 28 trips { 29 charger-crit { 30 temperature = <125000>; 31 hysteresis = <1000>; 32 type = "critical"; 33 }; 34 }; 35 }; 36 }; 37}; 38 39/* 40 * Reserved memory changes 41 * 42 * Delete all unused memory nodes and define the peripheral memory regions 43 * required by the board dts. 44 */ 45 46/delete-node/ &hyp_mem; 47/delete-node/ &ipa_fw_mem; 48/delete-node/ &xbl_mem; 49/delete-node/ &aop_mem; 50/delete-node/ &sec_apps_mem; 51/delete-node/ &tz_mem; 52 53/* Increase the size from 2MB to 8MB */ 54&rmtfs_mem { 55 reg = <0x0 0x94600000 0x0 0x800000>; 56}; 57 58/ { 59 reserved-memory { 60 atf_mem: memory@80b00000 { 61 reg = <0x0 0x80b00000 0x0 0x100000>; 62 no-map; 63 }; 64 65 mpss_mem: memory@86000000 { 66 reg = <0x0 0x86000000 0x0 0x2000000>; 67 no-map; 68 }; 69 70 venus_mem: memory@8f600000 { 71 reg = <0 0x8f600000 0 0x500000>; 72 no-map; 73 }; 74 75 wlan_mem: memory@94100000 { 76 reg = <0x0 0x94100000 0x0 0x200000>; 77 no-map; 78 }; 79 80 mba_mem: memory@94400000 { 81 reg = <0x0 0x94400000 0x0 0x200000>; 82 no-map; 83 }; 84 85 mdata_mem: mpss-metadata { 86 alloc-ranges = <0x0 0xa0000000 0x0 0x20000000>; 87 size = <0x0 0x4000>; 88 no-map; 89 }; 90 }; 91 92 aliases { 93 bluetooth0 = &bluetooth; 94 hsuart0 = &uart3; 95 serial0 = &uart8; 96 wifi0 = &wifi; 97 }; 98 99 chosen { 100 stdout-path = "serial0:115200n8"; 101 }; 102 103 /* FIXED REGULATORS - parents above children */ 104 105 /* This is the top level supply and variable voltage */ 106 ppvar_sys: ppvar-sys-regulator { 107 compatible = "regulator-fixed"; 108 regulator-name = "ppvar_sys"; 109 regulator-always-on; 110 regulator-boot-on; 111 }; 112 113 /* This divides ppvar_sys by 2, so voltage is variable */ 114 src_vph_pwr: src-vph-pwr-regulator { 115 compatible = "regulator-fixed"; 116 regulator-name = "src_vph_pwr"; 117 118 /* EC turns on with switchcap_on; always on for AP */ 119 regulator-always-on; 120 regulator-boot-on; 121 122 vin-supply = <&ppvar_sys>; 123 }; 124 125 pp5000_a: pp5000-a-regulator { 126 compatible = "regulator-fixed"; 127 regulator-name = "pp5000_a"; 128 129 /* EC turns on with en_pp5000_a; always on for AP */ 130 regulator-always-on; 131 regulator-boot-on; 132 regulator-min-microvolt = <5000000>; 133 regulator-max-microvolt = <5000000>; 134 135 vin-supply = <&ppvar_sys>; 136 }; 137 138 pp3300_a: pp3300-a-regulator { 139 compatible = "regulator-fixed"; 140 regulator-name = "pp3300_a"; 141 142 /* EC turns on with en_pp3300_a; always on for AP */ 143 regulator-always-on; 144 regulator-boot-on; 145 regulator-min-microvolt = <3300000>; 146 regulator-max-microvolt = <3300000>; 147 148 /* 149 * Actually should be pp3300 but that's practically an alias for 150 * pp3300_a so we use pp3300's vin-supply here to avoid one more 151 * node. 152 */ 153 vin-supply = <&ppvar_sys>; 154 }; 155 156 pp1800_ec: 157 pp1800_sensors: 158 pp1800_ldo: pp1800-ldo-regulator { 159 compatible = "regulator-fixed"; 160 regulator-name = "pp1800_ldo"; 161 162 /* EC turns on with hibernate_l; always on for AP */ 163 regulator-always-on; 164 regulator-boot-on; 165 regulator-min-microvolt = <1800000>; 166 regulator-max-microvolt = <1800000>; 167 168 /* 169 * Actually should be pp1800_h1 but we don't have any need to 170 * model that so we use the parent of pp1800_h1. 171 */ 172 vin-supply = <&pp3300_a>; 173 }; 174 175 pp1800_uf_cam: pp1800-uf-cam-regulator { 176 compatible = "regulator-fixed"; 177 regulator-name = "pp1800_uf_cam"; 178 status = "disabled"; 179 180 regulator-min-microvolt = <1800000>; 181 regulator-max-microvolt = <1800000>; 182 183 gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>; 184 enable-active-high; 185 pinctrl-names = "default"; 186 pinctrl-0 = <&uf_cam_en>; 187 188 vin-supply = <&pp1800_ldo>; 189 regulator-enable-ramp-delay = <1000>; 190 }; 191 192 pp1800_wf_cam: pp1800-wf-cam-regulator { 193 compatible = "regulator-fixed"; 194 regulator-name = "pp1800_wf_cam"; 195 status = "disabled"; 196 197 regulator-min-microvolt = <1800000>; 198 regulator-max-microvolt = <1800000>; 199 200 gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>; 201 enable-active-high; 202 pinctrl-names = "default"; 203 pinctrl-0 = <&wf_cam_en>; 204 205 vin-supply = <&pp1800_ldo>; 206 regulator-enable-ramp-delay = <1000>; 207 }; 208 209 pp2800_uf_cam: pp2800-uf-cam-regulator { 210 compatible = "regulator-fixed"; 211 regulator-name = "pp2800_uf_cam"; 212 status = "disabled"; 213 214 regulator-min-microvolt = <2850000>; 215 regulator-max-microvolt = <2850000>; 216 217 gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>; 218 enable-active-high; 219 /* 220 * The pinconf can only be referenced once so we put it on the 221 * first regulator and comment it out here. 222 * pinctrl-names = "default"; 223 * pinctrl-0 = <&uf_cam_en>; 224 */ 225 226 vin-supply = <&pp3300_a>; 227 }; 228 229 pp2800_vcm_wf_cam: 230 pp2800_wf_cam: pp2800-wf-cam-regulator { 231 compatible = "regulator-fixed"; 232 regulator-name = "pp2800_wf_cam"; 233 status = "disabled"; 234 235 regulator-min-microvolt = <2850000>; 236 regulator-max-microvolt = <2850000>; 237 238 gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>; 239 enable-active-high; 240 /* 241 * The pinconf can only be referenced once so we put it on the 242 * first regulator and comment it out here. 243 * pinctrl-names = "default"; 244 * pinctrl-0 = <&wf_cam_en>; 245 */ 246 247 vin-supply = <&pp3300_a>; 248 }; 249 250 pp3300_audio: 251 pp3300_codec: pp3300-codec-regulator { 252 compatible = "regulator-fixed"; 253 regulator-name = "pp3300_codec"; 254 255 regulator-min-microvolt = <3300000>; 256 regulator-max-microvolt = <3300000>; 257 258 gpio = <&tlmm 83 GPIO_ACTIVE_HIGH>; 259 enable-active-high; 260 pinctrl-names = "default"; 261 pinctrl-0 = <&en_pp3300_codec>; 262 263 vin-supply = <&pp3300_a>; 264 }; 265 266 pp3300_dx_edp: 267 pp3300_ts: pp3300-dx-edp-regulator { 268 compatible = "regulator-fixed"; 269 regulator-name = "pp3300_dx_edp"; 270 271 regulator-min-microvolt = <3300000>; 272 regulator-max-microvolt = <3300000>; 273 274 gpio = <&tlmm 30 GPIO_ACTIVE_HIGH>; 275 enable-active-high; 276 pinctrl-names = "default"; 277 pinctrl-0 = <&en_pp3300_dx_edp>; 278 279 vin-supply = <&pp3300_a>; 280 }; 281 282 pp3300_fp_tp: pp3300-fp-tp-regulator { 283 compatible = "regulator-fixed"; 284 regulator-name = "pp3300_fp_tp"; 285 286 regulator-min-microvolt = <3300000>; 287 regulator-max-microvolt = <3300000>; 288 289 /* AP turns on with PP1800_VIO_OUT; always on for AP */ 290 regulator-always-on; 291 regulator-boot-on; 292 293 vin-supply = <&pp3300_a>; 294 }; 295 296 pp3300_hub: pp3300-hub-regulator { 297 compatible = "regulator-fixed"; 298 regulator-name = "pp3300_hub"; 299 300 regulator-min-microvolt = <3300000>; 301 regulator-max-microvolt = <3300000>; 302 303 gpio = <&tlmm 84 GPIO_ACTIVE_HIGH>; 304 enable-active-high; 305 pinctrl-names = "default"; 306 pinctrl-0 = <&en_pp3300_hub>; 307 308 /* The BIOS leaves this regulator on */ 309 regulator-boot-on; 310 311 vin-supply = <&pp3300_a>; 312 }; 313 314 /* BOARD-SPECIFIC TOP LEVEL NODES */ 315 316 backlight: backlight { 317 compatible = "pwm-backlight"; 318 319 /* The panels don't seem to like anything below ~ 5% */ 320 brightness-levels = < 321 196 256 324 400 484 576 676 784 900 1024 1156 1296 322 1444 1600 1764 1936 2116 2304 2500 2704 2916 3136 323 3364 3600 3844 4096 324 >; 325 num-interpolated-steps = <64>; 326 default-brightness-level = <951>; 327 328 pwms = <&cros_ec_pwm 1>; 329 enable-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>; 330 power-supply = <&ppvar_sys>; 331 pinctrl-names = "default"; 332 pinctrl-0 = <&ap_edp_bklten>; 333 }; 334 335 gpio_keys: gpio-keys { 336 compatible = "gpio-keys"; 337 status = "disabled"; 338 pinctrl-names = "default"; 339 pinctrl-0 = <&pen_pdct_l>; 340 341 pen_insert: switch-pen-insert { 342 label = "Pen Insert"; 343 344 /* Insert = low, eject = high */ 345 gpios = <&tlmm 52 GPIO_ACTIVE_LOW>; 346 linux,code = <SW_PEN_INSERTED>; 347 linux,input-type = <EV_SW>; 348 wakeup-event-action = <EV_ACT_DEASSERTED>; 349 wakeup-source; 350 }; 351 }; 352 353 max98360a: audio-codec-0 { 354 compatible = "maxim,max98360a"; 355 pinctrl-names = "default"; 356 pinctrl-0 = <&_en>; 357 sdmode-gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>; 358 #sound-dai-cells = <0>; 359 }; 360 361 pwmleds { 362 compatible = "pwm-leds"; 363 keyboard_backlight: led-0 { 364 status = "disabled"; 365 label = "cros_ec::kbd_backlight"; 366 function = LED_FUNCTION_KBD_BACKLIGHT; 367 pwms = <&cros_ec_pwm 0>; 368 max-brightness = <1023>; 369 }; 370 }; 371 372 sound: sound { 373 compatible = "google,sc7180-trogdor"; 374 model = "sc7180-rt5682-max98357a-1mic"; 375 376 audio-routing = 377 "Headphone Jack", "HPOL", 378 "Headphone Jack", "HPOR"; 379 380 #address-cells = <1>; 381 #size-cells = <0>; 382 383 dai-link@0 { 384 link-name = "MultiMedia0"; 385 reg = <MI2S_PRIMARY>; 386 cpu { 387 sound-dai = <&lpass_cpu MI2S_PRIMARY>; 388 }; 389 390 sound_multimedia0_codec: codec { 391 sound-dai = <&alc5682 0 /* aif1 */>; 392 }; 393 }; 394 395 dai-link@1 { 396 link-name = "MultiMedia1"; 397 reg = <MI2S_SECONDARY>; 398 cpu { 399 sound-dai = <&lpass_cpu MI2S_SECONDARY>; 400 }; 401 402 sound_multimedia1_codec: codec { 403 sound-dai = <&max98360a>; 404 }; 405 }; 406 407 dai-link@5 { 408 link-name = "MultiMedia2"; 409 reg = <LPASS_DP_RX>; 410 cpu { 411 sound-dai = <&lpass_cpu LPASS_DP_RX>; 412 }; 413 414 codec { 415 sound-dai = <&mdss_dp>; 416 }; 417 }; 418 }; 419}; 420 421&qfprom { 422 vcc-supply = <&pp1800_l11a>; 423}; 424 425&qspi { 426 status = "okay"; 427 pinctrl-names = "default", "sleep"; 428 pinctrl-0 = <&qspi_clk>, <&qspi_cs0>, <&qspi_data0>, <&qspi_data1>; 429 pinctrl-1 = <&qspi_sleep>; 430 431 flash@0 { 432 compatible = "jedec,spi-nor"; 433 reg = <0>; 434 435 spi-max-frequency = <37500000>; 436 spi-tx-bus-width = <2>; 437 spi-rx-bus-width = <2>; 438 }; 439}; 440 441&apps_rsc { 442 regulators-0 { 443 compatible = "qcom,pm6150-rpmh-regulators"; 444 qcom,pmic-id = "a"; 445 446 vddpx_1: 447 vdd2: 448 pp1125_s1a: smps1 { 449 regulator-min-microvolt = <1128000>; 450 regulator-max-microvolt = <1128000>; 451 }; 452 453 vdd_qlink_lv: 454 vdd_qlink_lv_ck: 455 vdd_qusb_hs0_core: 456 vdd_ufs1_core: 457 vdda_mipi_csi0_0p9: 458 vdda_mipi_csi1_0p9: 459 vdda_mipi_csi2_0p9: 460 vdda_mipi_csi3_0p9: 461 vdda_mipi_dsi0_pll: 462 vdda_pll_cc_ebi01: 463 vdda_qrefs_0p9: 464 vdda_usb_ss_dp_core: 465 pp900_l4a: ldo4 { 466 regulator-min-microvolt = <824000>; 467 regulator-max-microvolt = <928000>; 468 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 469 }; 470 471 vdd_cx_wlan: 472 pp800_l9a: ldo9 { 473 regulator-min-microvolt = <488000>; 474 regulator-max-microvolt = <800000>; 475 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 476 }; 477 478 vdd1: 479 vddpx_3: 480 vddpx_7: 481 vio_in: 482 pp1800_l10a: ldo10 { 483 regulator-min-microvolt = <1800000>; 484 regulator-max-microvolt = <1800000>; 485 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 486 }; 487 488 vdd_qfprom: 489 vdda_apc1_cs_1p8: 490 vdda_qrefs_1p8: 491 vdda_qusb_hs0_1p8: 492 vddpx_11: 493 vreg_bb_clk: 494 pp1800_l11a: ldo11 { 495 regulator-min-microvolt = <1800000>; 496 regulator-max-microvolt = <1800000>; 497 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 498 }; 499 500 mcp_vccq: 501 pp1800_l12a_r: ldo12 { 502 regulator-min-microvolt = <1800000>; 503 regulator-max-microvolt = <1800000>; 504 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 505 }; 506 507 /* 508 * On trogdor this needs to match l10a since we use it to 509 * give power to things like SPI flash which communicate back 510 * on lines powered by l10a. Thus we force to 1.8V. 511 */ 512 pp1800_l13a: ldo13 { 513 regulator-min-microvolt = <1800000>; 514 regulator-max-microvolt = <1800000>; 515 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 516 regulator-always-on; 517 regulator-boot-on; 518 }; 519 520 pp1800_prox: 521 pp1800_l14a: ldo14 { 522 regulator-min-microvolt = <1800000>; 523 regulator-max-microvolt = <1800000>; 524 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 525 }; 526 527 pp1800_alc5682: 528 pp1800_l15a: ldo15 { 529 regulator-min-microvolt = <1800000>; 530 regulator-max-microvolt = <1800000>; 531 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 532 }; 533 534 vdda_qusb_hs0_3p1: 535 vdd_pdphy: 536 pp3100_l17a: ldo17 { 537 regulator-min-microvolt = <2920000>; 538 regulator-max-microvolt = <3232000>; 539 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 540 }; 541 542 pp1800_pen: 543 pp1800_l18a: ldo18 { 544 regulator-min-microvolt = <1800000>; 545 regulator-max-microvolt = <1800000>; 546 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 547 }; 548 549 mcp_vcc: 550 pp2850_l19a: ldo19 { 551 regulator-min-microvolt = <2960000>; 552 regulator-max-microvolt = <2960000>; 553 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 554 }; 555 }; 556 557 regulators-1 { 558 compatible = "qcom,pm6150l-rpmh-regulators"; 559 qcom,pmic-id = "c"; 560 561 pp1300_s8c: smps8 { 562 regulator-min-microvolt = <1120000>; 563 regulator-max-microvolt = <1408000>; 564 }; 565 566 pp1800_l1c: ldo1 { 567 regulator-min-microvolt = <1616000>; 568 regulator-max-microvolt = <1984000>; 569 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 570 }; 571 572 vdd_wcss_adc_dac: 573 pp1300_l2c: ldo2 { 574 regulator-min-microvolt = <1168000>; 575 regulator-max-microvolt = <1304000>; 576 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 577 }; 578 579 pp1200_brij: 580 vdd_ufs1_1p2: 581 vdda_csi0_1p25: 582 vdda_csi1_1p25: 583 vdda_csi2_1p25: 584 vdda_csi3_1p25: 585 vdda_hv_ebi0: 586 vdda_mipi_dsi0_1p2: 587 vdda_usb_ss_dp_1p2: 588 vddpx_10: 589 pp1200_l3c: ldo3 { 590 regulator-min-microvolt = <1200000>; 591 regulator-max-microvolt = <1200000>; 592 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 593 }; 594 595 vddpx_2: 596 ppvar_l6c: ldo6 { 597 regulator-min-microvolt = <1800000>; 598 regulator-max-microvolt = <2952000>; 599 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 600 }; 601 602 pp3300_l7c: ldo7 { 603 regulator-min-microvolt = <3304000>; 604 regulator-max-microvolt = <3304000>; 605 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 606 }; 607 608 pp1800_brij_vccio: 609 pp1800_edp_vpll: 610 pp1800_l8c: ldo8 { 611 regulator-min-microvolt = <1800000>; 612 regulator-max-microvolt = <1800000>; 613 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 614 }; 615 616 pp2950_l9c: ldo9 { 617 regulator-min-microvolt = <2952000>; 618 regulator-max-microvolt = <2952000>; 619 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 620 }; 621 622 pp3300_l10c: ldo10 { 623 regulator-min-microvolt = <3000000>; 624 regulator-max-microvolt = <3400000>; 625 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 626 }; 627 628 pp3300_l11c: ldo11 { 629 regulator-min-microvolt = <3000000>; 630 regulator-max-microvolt = <3400000>; 631 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 632 }; 633 634 src_vreg_bob: bob { 635 regulator-min-microvolt = <3008000>; 636 regulator-max-microvolt = <3960000>; 637 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 638 }; 639 }; 640}; 641 642ap_ec_spi: &spi6 { 643 status = "okay"; 644 cros_ec: ec@0 { 645 compatible = "google,cros-ec-spi"; 646 reg = <0>; 647 interrupt-parent = <&tlmm>; 648 interrupts = <94 IRQ_TYPE_LEVEL_LOW>; 649 pinctrl-names = "default"; 650 pinctrl-0 = <&ap_ec_int_l>; 651 spi-max-frequency = <3000000>; 652 653 cros_ec_pwm: pwm { 654 compatible = "google,cros-ec-pwm"; 655 #pwm-cells = <1>; 656 }; 657 658 i2c_tunnel: i2c-tunnel { 659 compatible = "google,cros-ec-i2c-tunnel"; 660 google,remote-bus = <0>; 661 #address-cells = <1>; 662 #size-cells = <0>; 663 }; 664 665 typec { 666 compatible = "google,cros-ec-typec"; 667 #address-cells = <1>; 668 #size-cells = <0>; 669 670 usb_c0: connector@0 { 671 compatible = "usb-c-connector"; 672 reg = <0>; 673 label = "left"; 674 power-role = "dual"; 675 data-role = "host"; 676 try-power-role = "source"; 677 }; 678 679 usb_c1: connector@1 { 680 compatible = "usb-c-connector"; 681 reg = <1>; 682 label = "right"; 683 power-role = "dual"; 684 data-role = "host"; 685 try-power-role = "source"; 686 }; 687 }; 688 }; 689}; 690 691ap_h1_spi: &spi0 { 692 status = "okay"; 693 cr50: tpm@0 { 694 compatible = "google,cr50"; 695 reg = <0>; 696 pinctrl-names = "default"; 697 pinctrl-0 = <&h1_ap_int_odl>; 698 spi-max-frequency = <800000>; 699 interrupt-parent = <&tlmm>; 700 interrupts = <42 IRQ_TYPE_EDGE_RISING>; 701 }; 702}; 703 704&camcc { 705 status = "disabled"; 706}; 707 708&dsi0 { 709 status = "okay"; 710 vdda-supply = <&vdda_mipi_dsi0_1p2>; 711}; 712 713&dsi0_out { 714 data-lanes = <0 1 2 3>; 715}; 716 717&dsi_phy { 718 status = "okay"; 719 vdds-supply = <&vdda_mipi_dsi0_pll>; 720}; 721 722ap_sar_sensor_i2c: &i2c5 { 723 clock-frequency = <400000>; 724 725 ap_sar_sensor: proximity@28 { 726 compatible = "semtech,sx9310"; 727 reg = <0x28>; 728 #io-channel-cells = <1>; 729 pinctrl-names = "default"; 730 pinctrl-0 = <&p_sensor_int_l>; 731 732 interrupt-parent = <&tlmm>; 733 interrupts = <24 IRQ_TYPE_LEVEL_LOW>; 734 735 vdd-supply = <&pp3300_a>; 736 svdd-supply = <&pp1800_prox>; 737 738 label = "proximity-wifi"; 739 }; 740}; 741 742ap_tp_i2c: &i2c7 { 743 clock-frequency = <400000>; 744 745 trackpad: trackpad@15 { 746 compatible = "elan,ekth3000"; 747 reg = <0x15>; 748 pinctrl-names = "default"; 749 pinctrl-0 = <&tp_int_odl>; 750 751 interrupt-parent = <&tlmm>; 752 interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 753 754 vcc-supply = <&pp3300_fp_tp>; 755 756 wakeup-source; 757 }; 758}; 759 760hp_i2c: &i2c9 { 761 status = "okay"; 762 clock-frequency = <400000>; 763 764 alc5682: codec@1a { 765 compatible = "realtek,rt5682i"; 766 reg = <0x1a>; 767 pinctrl-names = "default"; 768 pinctrl-0 = <&hp_irq>; 769 770 #sound-dai-cells = <1>; 771 772 interrupt-parent = <&tlmm>; 773 /* 774 * This will get ignored because the interrupt type 775 * is set in rt5682.c. 776 */ 777 interrupts = <28 IRQ_TYPE_EDGE_BOTH>; 778 779 AVDD-supply = <&pp1800_alc5682>; 780 DBVDD-supply = <&pp1800_alc5682>; 781 LDO1-IN-supply = <&pp1800_alc5682>; 782 MICVDD-supply = <&pp3300_codec>; 783 VBAT-supply = <&pp3300_audio>; 784 785 realtek,dmic1-data-pin = <1>; 786 realtek,dmic1-clk-pin = <1>; 787 realtek,jd-src = <1>; 788 }; 789}; 790 791&lpass_cpu { 792 status = "okay"; 793 794 pinctrl-names = "default"; 795 pinctrl-0 = <&sec_mi2s_active>, <&pri_mi2s_active>, <&pri_mi2s_mclk_active>; 796 797 #address-cells = <1>; 798 #size-cells = <0>; 799 800 dai-link@0 { 801 reg = <MI2S_PRIMARY>; 802 qcom,playback-sd-lines = <1>; 803 qcom,capture-sd-lines = <0>; 804 }; 805 806 secondary_mi2s: dai-link@1 { 807 reg = <MI2S_SECONDARY>; 808 qcom,playback-sd-lines = <0>; 809 }; 810 811 dai-link@5 { 812 reg = <LPASS_DP_RX>; 813 }; 814}; 815 816&mdp { 817 status = "okay"; 818}; 819 820&mdss { 821 status = "okay"; 822}; 823 824&mdss_dp { 825 status = "okay"; 826 pinctrl-names = "default"; 827 pinctrl-0 = <&dp_hot_plug_det>; 828}; 829 830&mdss_dp_out { 831 data-lanes = <0 1>; 832 link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000>; 833}; 834 835&pm6150_adc { 836 charger-thermistor@4f { 837 reg = <ADC5_AMUX_THM3_100K_PU>; 838 qcom,ratiometric; 839 qcom,hw-settle-time = <200>; 840 }; 841}; 842 843&pm6150_adc_tm { 844 status = "okay"; 845 846 charger-thermistor@0 { 847 reg = <0>; 848 io-channels = <&pm6150_adc ADC5_AMUX_THM3_100K_PU>; 849 qcom,ratiometric; 850 qcom,hw-settle-time-us = <200>; 851 }; 852}; 853 854&pm6150_pon { 855 status = "disabled"; 856}; 857 858&qupv3_id_0 { 859 status = "okay"; 860}; 861 862&qupv3_id_1 { 863 status = "okay"; 864}; 865 866&remoteproc_mpss { 867 status = "okay"; 868 compatible = "qcom,sc7180-mss-pil"; 869 reg = <0 0x04080000 0 0x4040>, <0 0x04180000 0 0x48>; 870 reg-names = "qdsp6", "rmb"; 871 872 clocks = <&gcc GCC_MSS_CFG_AHB_CLK>, 873 <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>, 874 <&gcc GCC_MSS_NAV_AXI_CLK>, 875 <&gcc GCC_MSS_SNOC_AXI_CLK>, 876 <&gcc GCC_MSS_MFAB_AXIS_CLK>, 877 <&rpmhcc RPMH_CXO_CLK>; 878 clock-names = "iface", "bus", "nav", "snoc_axi", "mnoc_axi", "xo"; 879 880 iommus = <&apps_smmu 0x461 0x0>, <&apps_smmu 0x444 0x3>; 881 memory-region = <&mba_mem>, <&mpss_mem>, <&mdata_mem>; 882 883 /* This gets overridden for SKUs with LTE support. */ 884 firmware-name = "qcom/sc7180-trogdor/modem-nolte/mba.mbn", 885 "qcom/sc7180-trogdor/modem-nolte/qdsp6sw.mbn"; 886 887 resets = <&aoss_reset AOSS_CC_MSS_RESTART>, 888 <&pdc_reset PDC_MODEM_SYNC_RESET>; 889 reset-names = "mss_restart", "pdc_reset"; 890 891 qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>; 892 qcom,spare-regs = <&tcsr_regs_2 0xb3e4>; 893}; 894 895&sdhc_1 { 896 status = "okay"; 897 898 pinctrl-names = "default", "sleep"; 899 pinctrl-0 = <&sdc1_on>; 900 pinctrl-1 = <&sdc1_off>; 901 vmmc-supply = <&mcp_vcc>; 902 vqmmc-supply = <&mcp_vccq>; 903}; 904 905&sdhc_2 { 906 pinctrl-names = "default", "sleep"; 907 pinctrl-0 = <&sdc2_on>; 908 pinctrl-1 = <&sdc2_off>; 909 vmmc-supply = <&pp2950_l9c>; 910 vqmmc-supply = <&ppvar_l6c>; 911 912 cd-gpios = <&tlmm 69 GPIO_ACTIVE_LOW>; 913}; 914 915&spi0 { 916 pinctrl-0 = <&qup_spi0_spi>, <&qup_spi0_cs_gpio>; 917 cs-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>; 918}; 919 920&spi6 { 921 pinctrl-0 = <&qup_spi6_spi>, <&qup_spi6_cs_gpio>; 922 cs-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>; 923}; 924 925ap_spi_fp: &spi10 { 926 pinctrl-0 = <&qup_spi10_spi>, <&qup_spi10_cs_gpio>; 927 cs-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>; 928 929 cros_ec_fp: ec@0 { 930 compatible = "google,cros-ec-fp", "google,cros-ec-spi"; 931 reg = <0>; 932 interrupt-parent = <&tlmm>; 933 interrupts = <4 IRQ_TYPE_LEVEL_LOW>; 934 pinctrl-names = "default"; 935 pinctrl-0 = <&fp_to_ap_irq_l>, <&fp_rst_l>, <&fpmcu_boot0>; 936 boot0-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>; 937 reset-gpios = <&tlmm 22 GPIO_ACTIVE_LOW>; 938 spi-max-frequency = <3000000>; 939 vdd-supply = <&pp3300_fp_tp>; 940 }; 941}; 942 943#include <arm/cros-ec-sbs.dtsi> 944 945&uart3 { 946 status = "okay"; 947 948 /delete-property/interrupts; 949 interrupts-extended = <&intc GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>, 950 <&tlmm 41 IRQ_TYPE_EDGE_FALLING>; 951 952 pinctrl-names = "default", "sleep"; 953 pinctrl-1 = <&qup_uart3_sleep>; 954 955 bluetooth: bluetooth { 956 compatible = "qcom,wcn3991-bt"; 957 vddio-supply = <&pp1800_l10a>; 958 vddxo-supply = <&pp1800_l1c>; 959 vddrf-supply = <&pp1300_l2c>; 960 vddch0-supply = <&pp3300_l10c>; 961 max-speed = <3200000>; 962 }; 963}; 964 965&uart8 { 966 status = "okay"; 967}; 968 969&usb_1 { 970 status = "okay"; 971}; 972 973&usb_1_dwc3 { 974 dr_mode = "host"; 975 #address-cells = <1>; 976 #size-cells = <0>; 977 978 /* 2.x hub on port 1 */ 979 usb_hub_2_x: hub@1 { 980 compatible = "usbbda,5411"; 981 reg = <1>; 982 vdd-supply = <&pp3300_hub>; 983 peer-hub = <&usb_hub_3_x>; 984 }; 985 986 /* 3.x hub on port 2 */ 987 usb_hub_3_x: hub@2 { 988 compatible = "usbbda,411"; 989 reg = <2>; 990 vdd-supply = <&pp3300_hub>; 991 peer-hub = <&usb_hub_2_x>; 992 }; 993}; 994 995&usb_1_hsphy { 996 status = "okay"; 997 vdd-supply = <&vdd_qusb_hs0_core>; 998 vdda-pll-supply = <&vdda_qusb_hs0_1p8>; 999 vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>; 1000 qcom,imp-res-offset-value = <8>; 1001 qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_15_PERCENT>; 1002 qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>; 1003 qcom,bias-ctrl-value = <0x22>; 1004 qcom,charge-ctrl-value = <3>; 1005 qcom,hsdisc-trim-value = <0>; 1006}; 1007 1008&usb_1_qmpphy { 1009 status = "okay"; 1010 vdda-phy-supply = <&vdda_usb_ss_dp_1p2>; 1011 vdda-pll-supply = <&vdda_usb_ss_dp_core>; 1012}; 1013 1014&venus { 1015 video-firmware { 1016 iommus = <&apps_smmu 0x0c42 0x0>; 1017 }; 1018}; 1019 1020&wifi { 1021 status = "okay"; 1022 vdd-0.8-cx-mx-supply = <&vdd_cx_wlan>; 1023 vdd-1.8-xo-supply = <&pp1800_l1c>; 1024 vdd-1.3-rfa-supply = <&pp1300_l2c>; 1025 vdd-3.3-ch0-supply = <&pp3300_l10c>; 1026 vdd-3.3-ch1-supply = <&pp3300_l11c>; 1027 1028 wifi-firmware { 1029 iommus = <&apps_smmu 0xc2 0x1>; 1030 }; 1031}; 1032 1033/* PINCTRL - additions to nodes defined in sc7180.dtsi */ 1034 1035&dp_hot_plug_det { 1036 bias-disable; 1037}; 1038 1039&pri_mi2s_active { 1040 drive-strength = <2>; 1041 bias-pull-down; 1042}; 1043 1044&pri_mi2s_mclk_active { 1045 drive-strength = <2>; 1046 bias-pull-down; 1047}; 1048 1049&qspi_cs0 { 1050 bias-disable; /* External pullup */ 1051}; 1052 1053&qspi_clk { 1054 drive-strength = <8>; 1055 bias-disable; /* Rely on Cr50 internal pulldown */ 1056}; 1057 1058&qspi_data0 { 1059 bias-disable; /* Rely on Cr50 internal pulldown */ 1060}; 1061 1062&qspi_data1 { 1063 bias-pull-down; 1064}; 1065 1066&qup_i2c2_default { 1067 drive-strength = <2>; 1068 1069 /* Has external pullup */ 1070 bias-disable; 1071}; 1072 1073&qup_i2c4_default { 1074 drive-strength = <2>; 1075 1076 /* Has external pullup */ 1077 bias-disable; 1078}; 1079 1080&qup_i2c5_default { 1081 drive-strength = <2>; 1082 1083 /* Has external pullup */ 1084 bias-disable; 1085}; 1086 1087&qup_i2c7_default { 1088 drive-strength = <2>; 1089 1090 /* Has external pullup */ 1091 bias-disable; 1092}; 1093 1094&qup_i2c9_default { 1095 drive-strength = <2>; 1096 1097 /* Has external pullup */ 1098 bias-disable; 1099}; 1100 1101&qup_spi0_spi { 1102 drive-strength = <2>; 1103 bias-disable; 1104}; 1105 1106&qup_spi0_cs_gpio { 1107 drive-strength = <2>; 1108 bias-disable; 1109}; 1110 1111&qup_spi6_spi { 1112 drive-strength = <2>; 1113 bias-disable; 1114}; 1115 1116&qup_spi6_cs_gpio { 1117 drive-strength = <2>; 1118 bias-disable; 1119}; 1120 1121&qup_spi10_spi { 1122 drive-strength = <2>; 1123 bias-disable; 1124}; 1125 1126&qup_spi10_cs_gpio { 1127 drive-strength = <2>; 1128 bias-disable; 1129}; 1130 1131&qup_uart3_cts { 1132 /* 1133 * Configure a pull-down on CTS to match the pull of 1134 * the Bluetooth module. 1135 */ 1136 bias-pull-down; 1137}; 1138 1139&qup_uart3_rts { 1140 /* We'll drive RTS, so no pull */ 1141 drive-strength = <2>; 1142 bias-disable; 1143}; 1144 1145&qup_uart3_tx { 1146 /* We'll drive TX, so no pull */ 1147 drive-strength = <2>; 1148 bias-disable; 1149}; 1150 1151&qup_uart3_rx { 1152 /* 1153 * Configure a pull-up on RX. This is needed to avoid 1154 * garbage data when the TX pin of the Bluetooth module is 1155 * in tri-state (module powered off or not driving the 1156 * signal yet). 1157 */ 1158 bias-pull-up; 1159}; 1160 1161&qup_uart8_tx { 1162 drive-strength = <2>; 1163 bias-disable; 1164}; 1165 1166&qup_uart8_rx { 1167 drive-strength = <2>; 1168 bias-pull-up; 1169}; 1170 1171&sec_mi2s_active { 1172 drive-strength = <2>; 1173 bias-pull-down; 1174}; 1175 1176/* PINCTRL - board-specific pinctrl */ 1177 1178&pm6150_gpios { 1179 status = "disabled"; /* No GPIOs are connected */ 1180}; 1181 1182&pm6150l_gpios { 1183 gpio-line-names = "AP_SUSPEND", 1184 "", 1185 "", 1186 "", 1187 "", 1188 "", 1189 "", 1190 "", 1191 "", 1192 "", 1193 "", 1194 ""; 1195}; 1196 1197&tlmm { 1198 /* 1199 * pinctrl settings for pins that have no real owners. 1200 */ 1201 pinctrl-names = "default"; 1202 pinctrl-0 = <&bios_flash_wp_l>, <&ap_suspend_l_neuter>; 1203 1204 amp_en: amp-en-state { 1205 pins = "gpio23"; 1206 function = "gpio"; 1207 bias-pull-down; 1208 }; 1209 1210 ap_ec_int_l: ap-ec-int-l-state { 1211 pins = "gpio94"; 1212 function = "gpio"; 1213 bias-pull-up; 1214 }; 1215 1216 ap_edp_bklten: ap-edp-bklten-state { 1217 pins = "gpio12"; 1218 function = "gpio"; 1219 drive-strength = <2>; 1220 bias-disable; 1221 1222 /* Force backlight to be disabled to match state at boot. */ 1223 output-low; 1224 }; 1225 1226 ap_suspend_l_neuter: ap-suspend-l-neuter-state { 1227 pins = "gpio27"; 1228 function = "gpio"; 1229 bias-disable; 1230 }; 1231 1232 bios_flash_wp_l: bios-flash-wp-l-state { 1233 pins = "gpio66"; 1234 function = "gpio"; 1235 bias-disable; 1236 }; 1237 1238 edp_brij_en: edp-brij-en-state { 1239 pins = "gpio104"; 1240 function = "gpio"; 1241 drive-strength = <2>; 1242 bias-disable; 1243 }; 1244 1245 en_pp3300_codec: en-pp3300-codec-state { 1246 pins = "gpio83"; 1247 function = "gpio"; 1248 drive-strength = <2>; 1249 bias-disable; 1250 }; 1251 1252 en_pp3300_dx_edp: en-pp3300-dx-edp-state { 1253 pins = "gpio30"; 1254 function = "gpio"; 1255 drive-strength = <2>; 1256 bias-disable; 1257 }; 1258 1259 en_pp3300_hub: en-pp3300-hub-state { 1260 pins = "gpio84"; 1261 function = "gpio"; 1262 drive-strength = <2>; 1263 bias-disable; 1264 }; 1265 1266 fp_rst_l: fp-rst-l-state { 1267 pins = "gpio22"; 1268 function = "gpio"; 1269 bias-disable; 1270 drive-strength = <2>; 1271 }; 1272 1273 fp_to_ap_irq_l: fp-to-ap-irq-l-state { 1274 pins = "gpio4"; 1275 function = "gpio"; 1276 1277 /* Has external pullup */ 1278 bias-disable; 1279 }; 1280 1281 fpmcu_boot0: fpmcu-boot0-state { 1282 pins = "gpio10"; 1283 function = "gpio"; 1284 bias-disable; 1285 }; 1286 1287 h1_ap_int_odl: h1-ap-int-odl-state { 1288 pins = "gpio42"; 1289 function = "gpio"; 1290 bias-pull-up; 1291 }; 1292 1293 hp_irq: hp-irq-state { 1294 pins = "gpio28"; 1295 function = "gpio"; 1296 bias-pull-up; 1297 }; 1298 1299 pen_irq_l: pen-irq-l-state { 1300 pins = "gpio21"; 1301 function = "gpio"; 1302 1303 /* Has external pullup */ 1304 bias-disable; 1305 }; 1306 1307 pen_pdct_l: pen-pdct-l-state-state { 1308 pins = "gpio52"; 1309 function = "gpio"; 1310 1311 /* Has external pullup */ 1312 bias-disable; 1313 }; 1314 1315 pen_rst_odl: pen-rst-odl-state { 1316 pins = "gpio18"; 1317 function = "gpio"; 1318 bias-disable; 1319 drive-strength = <2>; 1320 1321 /* 1322 * The pen driver doesn't currently support 1323 * driving this reset line. By specifying 1324 * output-high here we're relying on the fact 1325 * that this pin has a default pulldown at boot 1326 * (which makes sure the pen was in reset if it 1327 * was powered) and then we set it high here to 1328 * take it out of reset. Better would be if the 1329 * pen driver could control this and we could 1330 * remove "output-high" here. 1331 */ 1332 output-high; /* TODO: Remove this? */ 1333 }; 1334 1335 p_sensor_int_l: p-sensor-int-l-state { 1336 pins = "gpio24"; 1337 function = "gpio"; 1338 1339 /* Has external pullup */ 1340 bias-disable; 1341 }; 1342 1343 qspi_sleep: qspi-sleep-state { 1344 pins = "gpio63", "gpio64", "gpio65", "gpio68"; 1345 1346 /* 1347 * When we're not actively transferring we want pins as GPIOs 1348 * with output disabled so that the quad SPI IP block stops 1349 * driving them. We rely on the normal pulls configured in 1350 * the active state and don't redefine them here. Also note 1351 * that we don't need the reverse (output-enable) in the 1352 * normal mode since the "output-enable" only matters for 1353 * GPIO function. 1354 */ 1355 function = "gpio"; 1356 output-disable; 1357 }; 1358 1359 qup_uart3_sleep: qup-uart3-sleep-state { 1360 cts-pins { 1361 /* 1362 * Configure a pull-down on CTS to match the pull of 1363 * the Bluetooth module. 1364 */ 1365 pins = "gpio38"; 1366 function = "gpio"; 1367 bias-pull-down; 1368 }; 1369 1370 rts-pins { 1371 /* 1372 * Configure pull-down on RTS. As RTS is active low 1373 * signal, pull it low to indicate the BT SoC that it 1374 * can wakeup the system anytime from suspend state by 1375 * pulling RX low (by sending wakeup bytes). 1376 */ 1377 pins = "gpio39"; 1378 function = "gpio"; 1379 bias-pull-down; 1380 }; 1381 1382 tx-pins { 1383 /* 1384 * Configure pull-up on TX when it isn't actively driven 1385 * to prevent BT SoC from receiving garbage during sleep. 1386 */ 1387 pins = "gpio40"; 1388 function = "gpio"; 1389 bias-pull-up; 1390 }; 1391 1392 rx-pins { 1393 /* 1394 * Configure a pull-up on RX. This is needed to avoid 1395 * garbage data when the TX pin of the Bluetooth module 1396 * is floating which may cause spurious wakeups. 1397 */ 1398 pins = "gpio41"; 1399 function = "gpio"; 1400 bias-pull-up; 1401 }; 1402 }; 1403 1404 /* Named trackpad_int_1v8_odl on earlier revision schematics */ 1405 trackpad_int_1v8_odl: 1406 tp_int_odl: tp-int-odl-state { 1407 pins = "gpio0"; 1408 function = "gpio"; 1409 1410 /* Has external pullup */ 1411 bias-disable; 1412 }; 1413 1414 ts_int_l: ts-int-l-state { 1415 pins = "gpio9"; 1416 function = "gpio"; 1417 bias-pull-up; 1418 }; 1419 1420 ts_reset_l: ts-reset-l-state { 1421 pins = "gpio8"; 1422 function = "gpio"; 1423 bias-disable; 1424 1425 /* 1426 * The reset GPIO to the touchscreen takes almost 2ms to drop 1427 * at the default drive strength. When we bump it up to 8mA it 1428 * falls in under 500us. We want this to be fast since the Elan 1429 * datasheet (and any drivers written based on it) talk about using 1430 * a 500 us reset pulse. 1431 */ 1432 drive-strength = <8>; 1433 }; 1434 1435 sdc1_on: sdc1-on-state { 1436 clk-pins { 1437 pins = "sdc1_clk"; 1438 bias-disable; 1439 drive-strength = <16>; 1440 }; 1441 1442 cmd-pins { 1443 pins = "sdc1_cmd"; 1444 bias-pull-up; 1445 drive-strength = <16>; 1446 }; 1447 1448 data-pins { 1449 pins = "sdc1_data"; 1450 bias-pull-up; 1451 drive-strength = <16>; 1452 }; 1453 1454 rclk-pins { 1455 pins = "sdc1_rclk"; 1456 bias-pull-down; 1457 }; 1458 }; 1459 1460 sdc1_off: sdc1-off-state { 1461 clk-pins { 1462 pins = "sdc1_clk"; 1463 bias-disable; 1464 drive-strength = <2>; 1465 }; 1466 1467 cmd-pins { 1468 pins = "sdc1_cmd"; 1469 bias-pull-up; 1470 drive-strength = <2>; 1471 }; 1472 1473 data-pins { 1474 pins = "sdc1_data"; 1475 bias-pull-up; 1476 drive-strength = <2>; 1477 }; 1478 1479 rclk-pins { 1480 pins = "sdc1_rclk"; 1481 bias-pull-down; 1482 }; 1483 }; 1484 1485 sdc2_on: sdc2-on-state { 1486 clk-pins { 1487 pins = "sdc2_clk"; 1488 bias-disable; 1489 drive-strength = <16>; 1490 }; 1491 1492 cmd-pins { 1493 pins = "sdc2_cmd"; 1494 bias-pull-up; 1495 drive-strength = <10>; 1496 }; 1497 1498 data-pins { 1499 pins = "sdc2_data"; 1500 bias-pull-up; 1501 drive-strength = <10>; 1502 }; 1503 1504 sd-cd-pins { 1505 pins = "gpio69"; 1506 function = "gpio"; 1507 bias-pull-up; 1508 drive-strength = <2>; 1509 }; 1510 }; 1511 1512 sdc2_off: sdc2-off-state { 1513 clk-pins { 1514 pins = "sdc2_clk"; 1515 bias-disable; 1516 drive-strength = <2>; 1517 }; 1518 1519 cmd-pins { 1520 pins = "sdc2_cmd"; 1521 bias-pull-up; 1522 drive-strength = <2>; 1523 }; 1524 1525 data-pins { 1526 pins = "sdc2_data"; 1527 bias-pull-up; 1528 drive-strength = <2>; 1529 }; 1530 1531 sd-cd-pins { 1532 pins = "gpio69"; 1533 function = "gpio"; 1534 bias-pull-up; 1535 drive-strength = <2>; 1536 }; 1537 }; 1538 1539 uf_cam_en: uf-cam-en-state { 1540 pins = "gpio6"; 1541 function = "gpio"; 1542 drive-strength = <2>; 1543 1544 /* External pull down */ 1545 bias-disable; 1546 }; 1547 1548 wf_cam_en: wf-cam-en-state { 1549 pins = "gpio7"; 1550 function = "gpio"; 1551 drive-strength = <2>; 1552 1553 /* External pull down */ 1554 bias-disable; 1555 }; 1556}; 1557