162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Google Herobrine baseboard device tree source 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * The set of things in this file is a bit loosely defined. It's roughly 662306a36Sopenharmony_ci * defined as the set of things that the child boards happen to have in 762306a36Sopenharmony_ci * common. Since all of the child boards started from the same original 862306a36Sopenharmony_ci * design this is hopefully a large set of things but as more derivatives 962306a36Sopenharmony_ci * appear things may "bubble down" out of this file. For things that are 1062306a36Sopenharmony_ci * part of the reference design but might not exist on child nodes we will 1162306a36Sopenharmony_ci * follow the lead of the SoC dtsi files and leave their status as "disabled". 1262306a36Sopenharmony_ci * 1362306a36Sopenharmony_ci * Copyright 2022 Google LLC. 1462306a36Sopenharmony_ci */ 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci#include <dt-bindings/input/gpio-keys.h> 1762306a36Sopenharmony_ci#include <dt-bindings/input/input.h> 1862306a36Sopenharmony_ci#include <dt-bindings/leds/common.h> 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci#include "sc7280-qcard.dtsi" 2162306a36Sopenharmony_ci#include "sc7280-chrome-common.dtsi" 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci/ { 2462306a36Sopenharmony_ci chosen { 2562306a36Sopenharmony_ci stdout-path = "serial0:115200n8"; 2662306a36Sopenharmony_ci }; 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci /* 2962306a36Sopenharmony_ci * FIXED REGULATORS 3062306a36Sopenharmony_ci * 3162306a36Sopenharmony_ci * Sort order: 3262306a36Sopenharmony_ci * 1. parents above children. 3362306a36Sopenharmony_ci * 2. higher voltage above lower voltage. 3462306a36Sopenharmony_ci * 3. alphabetically by node name. 3562306a36Sopenharmony_ci */ 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci /* This is the top level supply and variable voltage */ 3862306a36Sopenharmony_ci ppvar_sys: ppvar-sys-regulator { 3962306a36Sopenharmony_ci compatible = "regulator-fixed"; 4062306a36Sopenharmony_ci regulator-name = "ppvar_sys"; 4162306a36Sopenharmony_ci regulator-always-on; 4262306a36Sopenharmony_ci regulator-boot-on; 4362306a36Sopenharmony_ci }; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci /* This divides ppvar_sys by 2, so voltage is variable */ 4662306a36Sopenharmony_ci src_vph_pwr: src-vph-pwr-regulator { 4762306a36Sopenharmony_ci compatible = "regulator-fixed"; 4862306a36Sopenharmony_ci regulator-name = "src_vph_pwr"; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci /* EC turns on with switchcap_on; always on for AP */ 5162306a36Sopenharmony_ci regulator-always-on; 5262306a36Sopenharmony_ci regulator-boot-on; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci vin-supply = <&ppvar_sys>; 5562306a36Sopenharmony_ci }; 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci pp5000_s5: pp5000-s5-regulator { 5862306a36Sopenharmony_ci compatible = "regulator-fixed"; 5962306a36Sopenharmony_ci regulator-name = "pp5000_s5"; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci /* EC turns on with en_pp5000_s5; always on for AP */ 6262306a36Sopenharmony_ci regulator-always-on; 6362306a36Sopenharmony_ci regulator-boot-on; 6462306a36Sopenharmony_ci regulator-min-microvolt = <5000000>; 6562306a36Sopenharmony_ci regulator-max-microvolt = <5000000>; 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci vin-supply = <&ppvar_sys>; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci pp3300_z1: pp3300-z1-regulator { 7162306a36Sopenharmony_ci compatible = "regulator-fixed"; 7262306a36Sopenharmony_ci regulator-name = "pp3300_z1"; 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci /* EC turns on with en_pp3300_z1; always on for AP */ 7562306a36Sopenharmony_ci regulator-always-on; 7662306a36Sopenharmony_ci regulator-boot-on; 7762306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 7862306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci vin-supply = <&ppvar_sys>; 8162306a36Sopenharmony_ci }; 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci pp3300_codec: pp3300-codec-regulator { 8462306a36Sopenharmony_ci compatible = "regulator-fixed"; 8562306a36Sopenharmony_ci regulator-name = "pp3300_codec"; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 8862306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci gpio = <&tlmm 105 GPIO_ACTIVE_HIGH>; 9162306a36Sopenharmony_ci enable-active-high; 9262306a36Sopenharmony_ci pinctrl-names = "default"; 9362306a36Sopenharmony_ci pinctrl-0 = <&en_pp3300_codec>; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 9662306a36Sopenharmony_ci status = "disabled"; 9762306a36Sopenharmony_ci }; 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci pp3300_left_in_mlb: pp3300-left-in-mlb-regulator { 10062306a36Sopenharmony_ci compatible = "regulator-fixed"; 10162306a36Sopenharmony_ci regulator-name = "pp3300_left_in_mlb"; 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 10462306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 10562306a36Sopenharmony_ci 10662306a36Sopenharmony_ci gpio = <&tlmm 80 GPIO_ACTIVE_HIGH>; 10762306a36Sopenharmony_ci enable-active-high; 10862306a36Sopenharmony_ci pinctrl-names = "default"; 10962306a36Sopenharmony_ci pinctrl-0 = <&en_pp3300_dx_edp>; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci regulator-enable-ramp-delay = <3000>; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci /* 11462306a36Sopenharmony_ci * eDP panel specs nearly always have a spec that says you 11562306a36Sopenharmony_ci * shouldn't turn them off an on again without waiting 500ms. 11662306a36Sopenharmony_ci * Add this as a board constraint since this rail is shared 11762306a36Sopenharmony_ci * between the panel and touchscreen. 11862306a36Sopenharmony_ci */ 11962306a36Sopenharmony_ci off-on-delay-us = <500000>; 12062306a36Sopenharmony_ci 12162306a36Sopenharmony_ci /* 12262306a36Sopenharmony_ci * Stat the regulator on. This has the advantage of starting 12362306a36Sopenharmony_ci * the slow process of powering the panel on as soon as we 12462306a36Sopenharmony_ci * probe the regulator. It also avoids tripping the 12562306a36Sopenharmony_ci * off-on-delay immediately on every bootup. 12662306a36Sopenharmony_ci */ 12762306a36Sopenharmony_ci regulator-boot-on; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 13062306a36Sopenharmony_ci }; 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci pp3300_mcu_fp: 13362306a36Sopenharmony_ci pp3300_fp_ls: 13462306a36Sopenharmony_ci pp3300_fp_mcu: pp3300-fp-regulator { 13562306a36Sopenharmony_ci compatible = "regulator-fixed"; 13662306a36Sopenharmony_ci regulator-name = "pp3300_fp"; 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 13962306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ci regulator-boot-on; 14262306a36Sopenharmony_ci regulator-always-on; 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci /* 14562306a36Sopenharmony_ci * WARNING: it is intentional that GPIO 77 isn't listed here. 14662306a36Sopenharmony_ci * The userspace script for updating the fingerprint firmware 14762306a36Sopenharmony_ci * needs to control the FP regulators during a FW update, 14862306a36Sopenharmony_ci * hence the signal can't be owned by the kernel regulator. 14962306a36Sopenharmony_ci */ 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci pinctrl-names = "default"; 15262306a36Sopenharmony_ci pinctrl-0 = <&en_fp_rails>; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 15562306a36Sopenharmony_ci status = "disabled"; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ci pp3300_hub: pp3300-hub-regulator { 15962306a36Sopenharmony_ci compatible = "regulator-fixed"; 16062306a36Sopenharmony_ci regulator-name = "pp3300_hub"; 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 16362306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci /* The BIOS leaves this regulator on */ 16662306a36Sopenharmony_ci regulator-boot-on; 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_ci gpio = <&tlmm 157 GPIO_ACTIVE_HIGH>; 16962306a36Sopenharmony_ci enable-active-high; 17062306a36Sopenharmony_ci pinctrl-names = "default"; 17162306a36Sopenharmony_ci pinctrl-0 = <&hub_en>; 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci pp3300_tp: pp3300-tp-regulator { 17762306a36Sopenharmony_ci compatible = "regulator-fixed"; 17862306a36Sopenharmony_ci regulator-name = "pp3300_tp"; 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 18162306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 18262306a36Sopenharmony_ci 18362306a36Sopenharmony_ci /* AP turns on with PP1800_L18B_S0; always on for AP */ 18462306a36Sopenharmony_ci regulator-always-on; 18562306a36Sopenharmony_ci regulator-boot-on; 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 18862306a36Sopenharmony_ci }; 18962306a36Sopenharmony_ci 19062306a36Sopenharmony_ci pp3300_ssd: pp3300-ssd-regulator { 19162306a36Sopenharmony_ci compatible = "regulator-fixed"; 19262306a36Sopenharmony_ci regulator-name = "pp3300_ssd"; 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 19562306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ci gpio = <&tlmm 51 GPIO_ACTIVE_HIGH>; 19862306a36Sopenharmony_ci enable-active-high; 19962306a36Sopenharmony_ci pinctrl-names = "default"; 20062306a36Sopenharmony_ci pinctrl-0 = <&ssd_en>; 20162306a36Sopenharmony_ci 20262306a36Sopenharmony_ci /* 20362306a36Sopenharmony_ci * The bootloaer may have left PCIe configured. Powering this 20462306a36Sopenharmony_ci * off while the PCIe clocks are still running isn't great, 20562306a36Sopenharmony_ci * so it's better to default to this regulator being on. 20662306a36Sopenharmony_ci */ 20762306a36Sopenharmony_ci regulator-boot-on; 20862306a36Sopenharmony_ci 20962306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 21062306a36Sopenharmony_ci }; 21162306a36Sopenharmony_ci 21262306a36Sopenharmony_ci pp2850_vcm_wf_cam: pp2850-vcm-wf-cam-regulator { 21362306a36Sopenharmony_ci compatible = "regulator-fixed"; 21462306a36Sopenharmony_ci regulator-name = "pp2850_vcm_wf_cam"; 21562306a36Sopenharmony_ci 21662306a36Sopenharmony_ci regulator-min-microvolt = <2850000>; 21762306a36Sopenharmony_ci regulator-max-microvolt = <2850000>; 21862306a36Sopenharmony_ci 21962306a36Sopenharmony_ci gpio = <&tlmm 119 GPIO_ACTIVE_HIGH>; 22062306a36Sopenharmony_ci enable-active-high; 22162306a36Sopenharmony_ci pinctrl-names = "default"; 22262306a36Sopenharmony_ci pinctrl-0 = <&wf_cam_en>; 22362306a36Sopenharmony_ci 22462306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 22562306a36Sopenharmony_ci status = "disabled"; 22662306a36Sopenharmony_ci }; 22762306a36Sopenharmony_ci 22862306a36Sopenharmony_ci pp2850_wf_cam: pp2850-wf-cam-regulator { 22962306a36Sopenharmony_ci compatible = "regulator-fixed"; 23062306a36Sopenharmony_ci regulator-name = "pp2850_wf_cam"; 23162306a36Sopenharmony_ci 23262306a36Sopenharmony_ci regulator-min-microvolt = <2850000>; 23362306a36Sopenharmony_ci regulator-max-microvolt = <2850000>; 23462306a36Sopenharmony_ci 23562306a36Sopenharmony_ci gpio = <&tlmm 119 GPIO_ACTIVE_HIGH>; 23662306a36Sopenharmony_ci enable-active-high; 23762306a36Sopenharmony_ci /* 23862306a36Sopenharmony_ci * The pinconf can only be referenced once so we put it on the 23962306a36Sopenharmony_ci * first regulator and comment it out here. 24062306a36Sopenharmony_ci * 24162306a36Sopenharmony_ci * pinctrl-names = "default"; 24262306a36Sopenharmony_ci * pinctrl-0 = <&wf_cam_en>; 24362306a36Sopenharmony_ci */ 24462306a36Sopenharmony_ci 24562306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 24662306a36Sopenharmony_ci status = "disabled"; 24762306a36Sopenharmony_ci }; 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_ci pp1800_fp: pp1800-fp-regulator { 25062306a36Sopenharmony_ci compatible = "regulator-fixed"; 25162306a36Sopenharmony_ci regulator-name = "pp1800_fp"; 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 25462306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 25562306a36Sopenharmony_ci 25662306a36Sopenharmony_ci regulator-boot-on; 25762306a36Sopenharmony_ci regulator-always-on; 25862306a36Sopenharmony_ci 25962306a36Sopenharmony_ci /* 26062306a36Sopenharmony_ci * WARNING: it is intentional that GPIO 77 isn't listed here. 26162306a36Sopenharmony_ci * The userspace script for updating the fingerprint firmware 26262306a36Sopenharmony_ci * needs to control the FP regulators during a FW update, 26362306a36Sopenharmony_ci * hence the signal can't be owned by the kernel regulator. 26462306a36Sopenharmony_ci */ 26562306a36Sopenharmony_ci 26662306a36Sopenharmony_ci pinctrl-names = "default"; 26762306a36Sopenharmony_ci pinctrl-0 = <&en_fp_rails>; 26862306a36Sopenharmony_ci 26962306a36Sopenharmony_ci vin-supply = <&pp1800_l18b_s0>; 27062306a36Sopenharmony_ci status = "disabled"; 27162306a36Sopenharmony_ci }; 27262306a36Sopenharmony_ci 27362306a36Sopenharmony_ci pp1800_wf_cam: pp1800-wf-cam-regulator { 27462306a36Sopenharmony_ci compatible = "regulator-fixed"; 27562306a36Sopenharmony_ci regulator-name = "pp1800_wf_cam"; 27662306a36Sopenharmony_ci 27762306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 27862306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 27962306a36Sopenharmony_ci 28062306a36Sopenharmony_ci gpio = <&tlmm 119 GPIO_ACTIVE_HIGH>; 28162306a36Sopenharmony_ci enable-active-high; 28262306a36Sopenharmony_ci /* 28362306a36Sopenharmony_ci * The pinconf can only be referenced once so we put it on the 28462306a36Sopenharmony_ci * first regulator and comment it out here. 28562306a36Sopenharmony_ci * 28662306a36Sopenharmony_ci * pinctrl-names = "default"; 28762306a36Sopenharmony_ci * pinctrl-0 = <&wf_cam_en>; 28862306a36Sopenharmony_ci */ 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ci vin-supply = <&vreg_l19b_s0>; 29162306a36Sopenharmony_ci status = "disabled"; 29262306a36Sopenharmony_ci }; 29362306a36Sopenharmony_ci 29462306a36Sopenharmony_ci pp1200_wf_cam: pp1200-wf-cam-regulator { 29562306a36Sopenharmony_ci compatible = "regulator-fixed"; 29662306a36Sopenharmony_ci regulator-name = "pp1200_wf_cam"; 29762306a36Sopenharmony_ci 29862306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 29962306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ci gpio = <&tlmm 119 GPIO_ACTIVE_HIGH>; 30262306a36Sopenharmony_ci enable-active-high; 30362306a36Sopenharmony_ci /* 30462306a36Sopenharmony_ci * The pinconf can only be referenced once so we put it on the 30562306a36Sopenharmony_ci * first regulator and comment it out here. 30662306a36Sopenharmony_ci * 30762306a36Sopenharmony_ci * pinctrl-names = "default"; 30862306a36Sopenharmony_ci * pinctrl-0 = <&wf_cam_en>; 30962306a36Sopenharmony_ci */ 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ci vin-supply = <&pp3300_z1>; 31262306a36Sopenharmony_ci status = "disabled"; 31362306a36Sopenharmony_ci }; 31462306a36Sopenharmony_ci 31562306a36Sopenharmony_ci /* BOARD-SPECIFIC TOP LEVEL NODES */ 31662306a36Sopenharmony_ci 31762306a36Sopenharmony_ci max98360a: audio-codec-0 { 31862306a36Sopenharmony_ci compatible = "maxim,max98360a"; 31962306a36Sopenharmony_ci pinctrl-names = "default"; 32062306a36Sopenharmony_ci pinctrl-0 = <&_en>; 32162306a36Sopenharmony_ci sdmode-gpios = <&tlmm 63 GPIO_ACTIVE_HIGH>; 32262306a36Sopenharmony_ci #sound-dai-cells = <0>; 32362306a36Sopenharmony_ci }; 32462306a36Sopenharmony_ci 32562306a36Sopenharmony_ci pwmleds: pwmleds { 32662306a36Sopenharmony_ci compatible = "pwm-leds"; 32762306a36Sopenharmony_ci status = "disabled"; 32862306a36Sopenharmony_ci keyboard_backlight: led-0 { 32962306a36Sopenharmony_ci label = "cros_ec::kbd_backlight"; 33062306a36Sopenharmony_ci function = LED_FUNCTION_KBD_BACKLIGHT; 33162306a36Sopenharmony_ci pwms = <&cros_ec_pwm 0>; 33262306a36Sopenharmony_ci max-brightness = <1023>; 33362306a36Sopenharmony_ci }; 33462306a36Sopenharmony_ci }; 33562306a36Sopenharmony_ci}; 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ci/* 33862306a36Sopenharmony_ci * ADJUSTMENTS TO QCARD REGULATORS 33962306a36Sopenharmony_ci * 34062306a36Sopenharmony_ci * Mostly this is just board-local names for regulators that come from 34162306a36Sopenharmony_ci * Qcard, but this also has some minor regulator overrides. 34262306a36Sopenharmony_ci * 34362306a36Sopenharmony_ci * Names are only listed here if regulators go somewhere other than a 34462306a36Sopenharmony_ci * testpoint. 34562306a36Sopenharmony_ci */ 34662306a36Sopenharmony_ci 34762306a36Sopenharmony_ci/* From Qcard to our board; ordered by PMIC-ID / rail number */ 34862306a36Sopenharmony_ci 34962306a36Sopenharmony_cipp1256_s8b: &vreg_s8b_1p256 {}; 35062306a36Sopenharmony_ci 35162306a36Sopenharmony_cipp1800_l18b_s0: &vreg_l18b_1p8 {}; 35262306a36Sopenharmony_cipp1800_l18b: &vreg_l18b_1p8 {}; 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_civreg_l19b_s0: &vreg_l19b_1p8 {}; 35562306a36Sopenharmony_ci 35662306a36Sopenharmony_cipp1800_alc5682: &vreg_l2c_1p8 {}; 35762306a36Sopenharmony_cipp1800_l2c: &vreg_l2c_1p8 {}; 35862306a36Sopenharmony_ci 35962306a36Sopenharmony_civreg_l4c: &vreg_l4c_1p8_3p0 {}; 36062306a36Sopenharmony_ci 36162306a36Sopenharmony_cippvar_l6c: &vreg_l6c_2p96 {}; 36262306a36Sopenharmony_ci 36362306a36Sopenharmony_cipp3000_l7c: &vreg_l7c_3p0 {}; 36462306a36Sopenharmony_ci 36562306a36Sopenharmony_cipp1800_prox: &vreg_l8c_1p8 {}; 36662306a36Sopenharmony_cipp1800_l8c: &vreg_l8c_1p8 {}; 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_cipp2950_l9c: &vreg_l9c_2p96 {}; 36962306a36Sopenharmony_ci 37062306a36Sopenharmony_cipp1800_lcm: &vreg_l12c_1p8 {}; 37162306a36Sopenharmony_cipp1800_mipi: &vreg_l12c_1p8 {}; 37262306a36Sopenharmony_cipp1800_l12c: &vreg_l12c_1p8 {}; 37362306a36Sopenharmony_ci 37462306a36Sopenharmony_cipp3300_lcm: &vreg_l13c_3p0 {}; 37562306a36Sopenharmony_cipp3300_mipi: &vreg_l13c_3p0 {}; 37662306a36Sopenharmony_cipp3300_l13c: &vreg_l13c_3p0 {}; 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ci/* From our board to Qcard; ordered same as node definition above */ 37962306a36Sopenharmony_ci 38062306a36Sopenharmony_civreg_edp_bl: &ppvar_sys {}; 38162306a36Sopenharmony_ci 38262306a36Sopenharmony_cits_avdd: &pp3300_left_in_mlb {}; 38362306a36Sopenharmony_civreg_edp_3p3: &pp3300_left_in_mlb {}; 38462306a36Sopenharmony_ci 38562306a36Sopenharmony_ci/* Regulator overrides from Qcard */ 38662306a36Sopenharmony_ci 38762306a36Sopenharmony_ci/* 38862306a36Sopenharmony_ci * Herobrine boards only use l2c to power an external audio codec (like 38962306a36Sopenharmony_ci * alc5682) and we want that to be at 1.8V, not at some slightly lower voltage. 39062306a36Sopenharmony_ci */ 39162306a36Sopenharmony_ci&vreg_l2c_1p8 { 39262306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 39362306a36Sopenharmony_ci}; 39462306a36Sopenharmony_ci 39562306a36Sopenharmony_ci/* ADDITIONS TO NODES DEFINED IN PARENT DEVICE TREE FILES */ 39662306a36Sopenharmony_ci 39762306a36Sopenharmony_ci&edp_panel { 39862306a36Sopenharmony_ci /* Our board provides power to the qcard for the eDP panel. */ 39962306a36Sopenharmony_ci power-supply = <&vreg_edp_3p3>; 40062306a36Sopenharmony_ci}; 40162306a36Sopenharmony_ci 40262306a36Sopenharmony_ciap_sar_sensor_i2c: &i2c1 { 40362306a36Sopenharmony_ci clock-frequency = <400000>; 40462306a36Sopenharmony_ci status = "disabled"; 40562306a36Sopenharmony_ci 40662306a36Sopenharmony_ci ap_sar_sensor0: proximity@28 { 40762306a36Sopenharmony_ci compatible = "semtech,sx9324"; 40862306a36Sopenharmony_ci reg = <0x28>; 40962306a36Sopenharmony_ci #io-channel-cells = <1>; 41062306a36Sopenharmony_ci pinctrl-names = "default"; 41162306a36Sopenharmony_ci pinctrl-0 = <&sar0_irq_odl>; 41262306a36Sopenharmony_ci 41362306a36Sopenharmony_ci interrupt-parent = <&tlmm>; 41462306a36Sopenharmony_ci interrupts = <141 IRQ_TYPE_LEVEL_LOW>; 41562306a36Sopenharmony_ci 41662306a36Sopenharmony_ci vdd-supply = <&pp1800_prox>; 41762306a36Sopenharmony_ci 41862306a36Sopenharmony_ci label = "proximity-wifi_cellular-0"; 41962306a36Sopenharmony_ci status = "disabled"; 42062306a36Sopenharmony_ci }; 42162306a36Sopenharmony_ci 42262306a36Sopenharmony_ci ap_sar_sensor1: proximity@2c { 42362306a36Sopenharmony_ci compatible = "semtech,sx9324"; 42462306a36Sopenharmony_ci reg = <0x2c>; 42562306a36Sopenharmony_ci #io-channel-cells = <1>; 42662306a36Sopenharmony_ci pinctrl-names = "default"; 42762306a36Sopenharmony_ci pinctrl-0 = <&sar1_irq_odl>; 42862306a36Sopenharmony_ci 42962306a36Sopenharmony_ci interrupt-parent = <&tlmm>; 43062306a36Sopenharmony_ci interrupts = <140 IRQ_TYPE_LEVEL_LOW>; 43162306a36Sopenharmony_ci 43262306a36Sopenharmony_ci vdd-supply = <&pp1800_prox>; 43362306a36Sopenharmony_ci 43462306a36Sopenharmony_ci label = "proximity-wifi_cellular-1"; 43562306a36Sopenharmony_ci status = "disabled"; 43662306a36Sopenharmony_ci }; 43762306a36Sopenharmony_ci}; 43862306a36Sopenharmony_ci 43962306a36Sopenharmony_ciap_i2c_tpm: &i2c14 { 44062306a36Sopenharmony_ci status = "okay"; 44162306a36Sopenharmony_ci clock-frequency = <400000>; 44262306a36Sopenharmony_ci 44362306a36Sopenharmony_ci tpm@50 { 44462306a36Sopenharmony_ci compatible = "google,cr50"; 44562306a36Sopenharmony_ci reg = <0x50>; 44662306a36Sopenharmony_ci 44762306a36Sopenharmony_ci pinctrl-names = "default"; 44862306a36Sopenharmony_ci pinctrl-0 = <&gsc_ap_int_odl>; 44962306a36Sopenharmony_ci 45062306a36Sopenharmony_ci interrupt-parent = <&tlmm>; 45162306a36Sopenharmony_ci interrupts = <104 IRQ_TYPE_EDGE_RISING>; 45262306a36Sopenharmony_ci }; 45362306a36Sopenharmony_ci}; 45462306a36Sopenharmony_ci 45562306a36Sopenharmony_ci&mdss { 45662306a36Sopenharmony_ci status = "okay"; 45762306a36Sopenharmony_ci}; 45862306a36Sopenharmony_ci 45962306a36Sopenharmony_ci&mdss_dp { 46062306a36Sopenharmony_ci status = "okay"; 46162306a36Sopenharmony_ci pinctrl-names = "default"; 46262306a36Sopenharmony_ci pinctrl-0 = <&dp_hot_plug_det>; 46362306a36Sopenharmony_ci}; 46462306a36Sopenharmony_ci 46562306a36Sopenharmony_ci&mdss_dp_out { 46662306a36Sopenharmony_ci data-lanes = <0 1>; 46762306a36Sopenharmony_ci link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000>; 46862306a36Sopenharmony_ci}; 46962306a36Sopenharmony_ci 47062306a36Sopenharmony_ci/* NVMe drive, enabled on a per-board basis */ 47162306a36Sopenharmony_ci&pcie1 { 47262306a36Sopenharmony_ci pinctrl-names = "default"; 47362306a36Sopenharmony_ci pinctrl-0 = <&pcie1_clkreq_n>, <&ssd_rst_l>, <&pe_wake_odl>; 47462306a36Sopenharmony_ci 47562306a36Sopenharmony_ci perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW>; 47662306a36Sopenharmony_ci vddpe-3v3-supply = <&pp3300_ssd>; 47762306a36Sopenharmony_ci}; 47862306a36Sopenharmony_ci 47962306a36Sopenharmony_ci&pm8350c_pwm { 48062306a36Sopenharmony_ci status = "okay"; 48162306a36Sopenharmony_ci}; 48262306a36Sopenharmony_ci 48362306a36Sopenharmony_ci&pm8350c_pwm_backlight { 48462306a36Sopenharmony_ci status = "okay"; 48562306a36Sopenharmony_ci 48662306a36Sopenharmony_ci /* Our board provides power to the qcard for the backlight */ 48762306a36Sopenharmony_ci power-supply = <&vreg_edp_bl>; 48862306a36Sopenharmony_ci}; 48962306a36Sopenharmony_ci 49062306a36Sopenharmony_ci&pmk8350_rtc { 49162306a36Sopenharmony_ci status = "disabled"; 49262306a36Sopenharmony_ci}; 49362306a36Sopenharmony_ci 49462306a36Sopenharmony_ci&qupv3_id_0 { 49562306a36Sopenharmony_ci status = "okay"; 49662306a36Sopenharmony_ci}; 49762306a36Sopenharmony_ci 49862306a36Sopenharmony_ci&qupv3_id_1 { 49962306a36Sopenharmony_ci status = "okay"; 50062306a36Sopenharmony_ci}; 50162306a36Sopenharmony_ci 50262306a36Sopenharmony_ci/* SD Card, enabled on a per-board basis */ 50362306a36Sopenharmony_ci&sdhc_2 { 50462306a36Sopenharmony_ci pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>, <&sd_cd_odl>; 50562306a36Sopenharmony_ci pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>, <&sd_cd_odl>; 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci vmmc-supply = <&pp2950_l9c>; 50862306a36Sopenharmony_ci vqmmc-supply = <&ppvar_l6c>; 50962306a36Sopenharmony_ci 51062306a36Sopenharmony_ci cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>; 51162306a36Sopenharmony_ci}; 51262306a36Sopenharmony_ci 51362306a36Sopenharmony_ci&spi_flash { 51462306a36Sopenharmony_ci spi-max-frequency = <50000000>; 51562306a36Sopenharmony_ci}; 51662306a36Sopenharmony_ci 51762306a36Sopenharmony_ci/* Fingerprint, enabled on a per-board basis */ 51862306a36Sopenharmony_ciap_spi_fp: &spi9 { 51962306a36Sopenharmony_ci pinctrl-0 = <&qup_spi9_data_clk>, <&qup_spi9_cs_gpio_init_high>, <&qup_spi9_cs_gpio>; 52062306a36Sopenharmony_ci 52162306a36Sopenharmony_ci cs-gpios = <&tlmm 39 GPIO_ACTIVE_LOW>; 52262306a36Sopenharmony_ci 52362306a36Sopenharmony_ci cros_ec_fp: ec@0 { 52462306a36Sopenharmony_ci compatible = "google,cros-ec-fp", "google,cros-ec-spi"; 52562306a36Sopenharmony_ci reg = <0>; 52662306a36Sopenharmony_ci interrupt-parent = <&tlmm>; 52762306a36Sopenharmony_ci interrupts = <61 IRQ_TYPE_LEVEL_LOW>; 52862306a36Sopenharmony_ci pinctrl-names = "default"; 52962306a36Sopenharmony_ci pinctrl-0 = <&fp_to_ap_irq_l>, <&fp_rst_l>, <&fpmcu_boot0>; 53062306a36Sopenharmony_ci boot0-gpios = <&tlmm 68 GPIO_ACTIVE_HIGH>; 53162306a36Sopenharmony_ci reset-gpios = <&tlmm 78 GPIO_ACTIVE_LOW>; 53262306a36Sopenharmony_ci spi-max-frequency = <3000000>; 53362306a36Sopenharmony_ci vdd-supply = <&pp3300_fp_mcu>; 53462306a36Sopenharmony_ci }; 53562306a36Sopenharmony_ci}; 53662306a36Sopenharmony_ci 53762306a36Sopenharmony_ciap_ec_spi: &spi10 { 53862306a36Sopenharmony_ci status = "okay"; 53962306a36Sopenharmony_ci pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs_gpio_init_high>, <&qup_spi10_cs_gpio>; 54062306a36Sopenharmony_ci 54162306a36Sopenharmony_ci cs-gpios = <&tlmm 43 GPIO_ACTIVE_LOW>; 54262306a36Sopenharmony_ci 54362306a36Sopenharmony_ci cros_ec: ec@0 { 54462306a36Sopenharmony_ci compatible = "google,cros-ec-spi"; 54562306a36Sopenharmony_ci reg = <0>; 54662306a36Sopenharmony_ci interrupt-parent = <&tlmm>; 54762306a36Sopenharmony_ci interrupts = <18 IRQ_TYPE_LEVEL_LOW>; 54862306a36Sopenharmony_ci pinctrl-names = "default"; 54962306a36Sopenharmony_ci pinctrl-0 = <&ap_ec_int_l>; 55062306a36Sopenharmony_ci spi-max-frequency = <3000000>; 55162306a36Sopenharmony_ci 55262306a36Sopenharmony_ci cros_ec_pwm: pwm { 55362306a36Sopenharmony_ci compatible = "google,cros-ec-pwm"; 55462306a36Sopenharmony_ci #pwm-cells = <1>; 55562306a36Sopenharmony_ci }; 55662306a36Sopenharmony_ci 55762306a36Sopenharmony_ci i2c_tunnel: i2c-tunnel { 55862306a36Sopenharmony_ci compatible = "google,cros-ec-i2c-tunnel"; 55962306a36Sopenharmony_ci google,remote-bus = <0>; 56062306a36Sopenharmony_ci #address-cells = <1>; 56162306a36Sopenharmony_ci #size-cells = <0>; 56262306a36Sopenharmony_ci }; 56362306a36Sopenharmony_ci 56462306a36Sopenharmony_ci typec { 56562306a36Sopenharmony_ci compatible = "google,cros-ec-typec"; 56662306a36Sopenharmony_ci #address-cells = <1>; 56762306a36Sopenharmony_ci #size-cells = <0>; 56862306a36Sopenharmony_ci 56962306a36Sopenharmony_ci usb_c0: connector@0 { 57062306a36Sopenharmony_ci compatible = "usb-c-connector"; 57162306a36Sopenharmony_ci reg = <0>; 57262306a36Sopenharmony_ci label = "left"; 57362306a36Sopenharmony_ci power-role = "dual"; 57462306a36Sopenharmony_ci data-role = "host"; 57562306a36Sopenharmony_ci try-power-role = "source"; 57662306a36Sopenharmony_ci }; 57762306a36Sopenharmony_ci 57862306a36Sopenharmony_ci usb_c1: connector@1 { 57962306a36Sopenharmony_ci compatible = "usb-c-connector"; 58062306a36Sopenharmony_ci reg = <1>; 58162306a36Sopenharmony_ci label = "right"; 58262306a36Sopenharmony_ci power-role = "dual"; 58362306a36Sopenharmony_ci data-role = "host"; 58462306a36Sopenharmony_ci try-power-role = "source"; 58562306a36Sopenharmony_ci }; 58662306a36Sopenharmony_ci }; 58762306a36Sopenharmony_ci }; 58862306a36Sopenharmony_ci}; 58962306a36Sopenharmony_ci 59062306a36Sopenharmony_ci#include <arm/cros-ec-keyboard.dtsi> 59162306a36Sopenharmony_ci#include <arm/cros-ec-sbs.dtsi> 59262306a36Sopenharmony_ci 59362306a36Sopenharmony_ci&keyboard_controller { 59462306a36Sopenharmony_ci function-row-physmap = < 59562306a36Sopenharmony_ci MATRIX_KEY(0x00, 0x02, 0) /* T1 */ 59662306a36Sopenharmony_ci MATRIX_KEY(0x03, 0x02, 0) /* T2 */ 59762306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x02, 0) /* T3 */ 59862306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x02, 0) /* T4 */ 59962306a36Sopenharmony_ci MATRIX_KEY(0x03, 0x04, 0) /* T5 */ 60062306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x04, 0) /* T6 */ 60162306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x04, 0) /* T7 */ 60262306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x09, 0) /* T8 */ 60362306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x09, 0) /* T9 */ 60462306a36Sopenharmony_ci MATRIX_KEY(0x00, 0x04, 0) /* T10 */ 60562306a36Sopenharmony_ci >; 60662306a36Sopenharmony_ci linux,keymap = < 60762306a36Sopenharmony_ci MATRIX_KEY(0x00, 0x02, KEY_BACK) 60862306a36Sopenharmony_ci MATRIX_KEY(0x03, 0x02, KEY_REFRESH) 60962306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x02, KEY_ZOOM) 61062306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x02, KEY_SCALE) 61162306a36Sopenharmony_ci MATRIX_KEY(0x03, 0x04, KEY_SYSRQ) 61262306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN) 61362306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP) 61462306a36Sopenharmony_ci MATRIX_KEY(0x02, 0x09, KEY_MUTE) 61562306a36Sopenharmony_ci MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) 61662306a36Sopenharmony_ci MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) 61762306a36Sopenharmony_ci 61862306a36Sopenharmony_ci CROS_STD_MAIN_KEYMAP 61962306a36Sopenharmony_ci >; 62062306a36Sopenharmony_ci}; 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_ci&usb_1 { 62362306a36Sopenharmony_ci status = "okay"; 62462306a36Sopenharmony_ci}; 62562306a36Sopenharmony_ci 62662306a36Sopenharmony_ci&usb_1_dwc3 { 62762306a36Sopenharmony_ci dr_mode = "host"; 62862306a36Sopenharmony_ci 62962306a36Sopenharmony_ci #address-cells = <1>; 63062306a36Sopenharmony_ci #size-cells = <0>; 63162306a36Sopenharmony_ci 63262306a36Sopenharmony_ci /* 2.x hub on port 1 */ 63362306a36Sopenharmony_ci usb_hub_2_x: hub@1 { 63462306a36Sopenharmony_ci compatible = "usbbda,5411"; 63562306a36Sopenharmony_ci reg = <1>; 63662306a36Sopenharmony_ci vdd-supply = <&pp3300_hub>; 63762306a36Sopenharmony_ci peer-hub = <&usb_hub_3_x>; 63862306a36Sopenharmony_ci }; 63962306a36Sopenharmony_ci 64062306a36Sopenharmony_ci /* 3.x hub on port 2 */ 64162306a36Sopenharmony_ci usb_hub_3_x: hub@2 { 64262306a36Sopenharmony_ci compatible = "usbbda,411"; 64362306a36Sopenharmony_ci reg = <2>; 64462306a36Sopenharmony_ci vdd-supply = <&pp3300_hub>; 64562306a36Sopenharmony_ci peer-hub = <&usb_hub_2_x>; 64662306a36Sopenharmony_ci }; 64762306a36Sopenharmony_ci}; 64862306a36Sopenharmony_ci 64962306a36Sopenharmony_ci&usb_1_hsphy { 65062306a36Sopenharmony_ci status = "okay"; 65162306a36Sopenharmony_ci 65262306a36Sopenharmony_ci qcom,hs-rise-fall-time-bp = <0>; 65362306a36Sopenharmony_ci qcom,squelch-detector-bp = <(-2090)>; 65462306a36Sopenharmony_ci qcom,hs-disconnect-bp = <1743>; 65562306a36Sopenharmony_ci qcom,hs-amplitude-bp = <1780>; 65662306a36Sopenharmony_ci qcom,hs-crossover-voltage-microvolt = <(-31000)>; 65762306a36Sopenharmony_ci qcom,hs-output-impedance-micro-ohms = <2600000>; 65862306a36Sopenharmony_ci}; 65962306a36Sopenharmony_ci 66062306a36Sopenharmony_ci&usb_1_qmpphy { 66162306a36Sopenharmony_ci status = "okay"; 66262306a36Sopenharmony_ci}; 66362306a36Sopenharmony_ci 66462306a36Sopenharmony_ci/* PINCTRL - ADDITIONS TO NODES IN PARENT DEVICE TREE FILES */ 66562306a36Sopenharmony_ci 66662306a36Sopenharmony_ci&dp_hot_plug_det { 66762306a36Sopenharmony_ci bias-disable; 66862306a36Sopenharmony_ci}; 66962306a36Sopenharmony_ci 67062306a36Sopenharmony_ci&mi2s1_data0 { 67162306a36Sopenharmony_ci drive-strength = <6>; 67262306a36Sopenharmony_ci bias-disable; 67362306a36Sopenharmony_ci}; 67462306a36Sopenharmony_ci 67562306a36Sopenharmony_ci&mi2s1_sclk { 67662306a36Sopenharmony_ci drive-strength = <6>; 67762306a36Sopenharmony_ci bias-disable; 67862306a36Sopenharmony_ci}; 67962306a36Sopenharmony_ci 68062306a36Sopenharmony_ci&mi2s1_ws { 68162306a36Sopenharmony_ci drive-strength = <6>; 68262306a36Sopenharmony_ci bias-disable; 68362306a36Sopenharmony_ci}; 68462306a36Sopenharmony_ci 68562306a36Sopenharmony_ci&pcie1_clkreq_n { 68662306a36Sopenharmony_ci bias-pull-up; 68762306a36Sopenharmony_ci drive-strength = <2>; 68862306a36Sopenharmony_ci}; 68962306a36Sopenharmony_ci 69062306a36Sopenharmony_ci&qspi_cs0 { 69162306a36Sopenharmony_ci bias-disable; /* External pullup */ 69262306a36Sopenharmony_ci drive-strength = <8>; 69362306a36Sopenharmony_ci}; 69462306a36Sopenharmony_ci 69562306a36Sopenharmony_ci&qspi_clk { 69662306a36Sopenharmony_ci bias-pull-down; /* No external pulls */ 69762306a36Sopenharmony_ci drive-strength = <8>; 69862306a36Sopenharmony_ci}; 69962306a36Sopenharmony_ci 70062306a36Sopenharmony_ci&qspi_data0 { 70162306a36Sopenharmony_ci bias-pull-down; /* No external pulls */ 70262306a36Sopenharmony_ci drive-strength = <8>; 70362306a36Sopenharmony_ci}; 70462306a36Sopenharmony_ci 70562306a36Sopenharmony_ci&qspi_data1 { 70662306a36Sopenharmony_ci bias-disable; /* External pulldown */ 70762306a36Sopenharmony_ci drive-strength = <8>; 70862306a36Sopenharmony_ci}; 70962306a36Sopenharmony_ci 71062306a36Sopenharmony_ci/* For ap_tp_i2c */ 71162306a36Sopenharmony_ci&qup_i2c0_data_clk { 71262306a36Sopenharmony_ci /* Has external pull */ 71362306a36Sopenharmony_ci bias-disable; 71462306a36Sopenharmony_ci drive-strength = <2>; 71562306a36Sopenharmony_ci}; 71662306a36Sopenharmony_ci 71762306a36Sopenharmony_ci/* For ap_i2c_tpm */ 71862306a36Sopenharmony_ci&qup_i2c14_data_clk { 71962306a36Sopenharmony_ci /* Has external pull */ 72062306a36Sopenharmony_ci bias-disable; 72162306a36Sopenharmony_ci drive-strength = <2>; 72262306a36Sopenharmony_ci}; 72362306a36Sopenharmony_ci 72462306a36Sopenharmony_ci/* For ap_spi_fp */ 72562306a36Sopenharmony_ci&qup_spi9_data_clk { 72662306a36Sopenharmony_ci bias-disable; 72762306a36Sopenharmony_ci drive-strength = <2>; 72862306a36Sopenharmony_ci}; 72962306a36Sopenharmony_ci 73062306a36Sopenharmony_ci/* For ap_spi_fp */ 73162306a36Sopenharmony_ci&qup_spi9_cs_gpio { 73262306a36Sopenharmony_ci bias-disable; 73362306a36Sopenharmony_ci drive-strength = <2>; 73462306a36Sopenharmony_ci}; 73562306a36Sopenharmony_ci 73662306a36Sopenharmony_ci/* For ap_ec_spi */ 73762306a36Sopenharmony_ci&qup_spi10_data_clk { 73862306a36Sopenharmony_ci bias-disable; 73962306a36Sopenharmony_ci drive-strength = <2>; 74062306a36Sopenharmony_ci}; 74162306a36Sopenharmony_ci 74262306a36Sopenharmony_ci/* For ap_ec_spi */ 74362306a36Sopenharmony_ci&qup_spi10_cs_gpio { 74462306a36Sopenharmony_ci bias-disable; 74562306a36Sopenharmony_ci drive-strength = <2>; 74662306a36Sopenharmony_ci}; 74762306a36Sopenharmony_ci 74862306a36Sopenharmony_ci/* For uart_dbg */ 74962306a36Sopenharmony_ci&qup_uart5_rx { 75062306a36Sopenharmony_ci bias-pull-up; 75162306a36Sopenharmony_ci}; 75262306a36Sopenharmony_ci 75362306a36Sopenharmony_ci/* For uart_dbg */ 75462306a36Sopenharmony_ci&qup_uart5_tx { 75562306a36Sopenharmony_ci bias-disable; 75662306a36Sopenharmony_ci drive-strength = <2>; 75762306a36Sopenharmony_ci}; 75862306a36Sopenharmony_ci 75962306a36Sopenharmony_ci&sdc2_clk { 76062306a36Sopenharmony_ci bias-disable; 76162306a36Sopenharmony_ci drive-strength = <16>; 76262306a36Sopenharmony_ci}; 76362306a36Sopenharmony_ci 76462306a36Sopenharmony_ci&sdc2_cmd { 76562306a36Sopenharmony_ci bias-pull-up; 76662306a36Sopenharmony_ci drive-strength = <10>; 76762306a36Sopenharmony_ci}; 76862306a36Sopenharmony_ci 76962306a36Sopenharmony_ci&sdc2_data { 77062306a36Sopenharmony_ci bias-pull-up; 77162306a36Sopenharmony_ci drive-strength = <10>; 77262306a36Sopenharmony_ci}; 77362306a36Sopenharmony_ci 77462306a36Sopenharmony_ci/* PINCTRL - board-specific pinctrl */ 77562306a36Sopenharmony_ci 77662306a36Sopenharmony_ci&pm7325_gpios { 77762306a36Sopenharmony_ci /* 77862306a36Sopenharmony_ci * On a quick glance it might look like KYPD_VOL_UP_N is used, but 77962306a36Sopenharmony_ci * that only passes through to a debug connector and not to the actual 78062306a36Sopenharmony_ci * volume up key. 78162306a36Sopenharmony_ci */ 78262306a36Sopenharmony_ci status = "disabled"; /* No GPIOs are connected */ 78362306a36Sopenharmony_ci}; 78462306a36Sopenharmony_ci 78562306a36Sopenharmony_ci&pmk8350_gpios { 78662306a36Sopenharmony_ci status = "disabled"; /* No GPIOs are connected */ 78762306a36Sopenharmony_ci}; 78862306a36Sopenharmony_ci 78962306a36Sopenharmony_ci&tlmm { 79062306a36Sopenharmony_ci /* pinctrl settings for pins that have no real owners. */ 79162306a36Sopenharmony_ci pinctrl-names = "default"; 79262306a36Sopenharmony_ci pinctrl-0 = <&bios_flash_wp_od>; 79362306a36Sopenharmony_ci 79462306a36Sopenharmony_ci amp_en: amp-en-state { 79562306a36Sopenharmony_ci pins = "gpio63"; 79662306a36Sopenharmony_ci function = "gpio"; 79762306a36Sopenharmony_ci bias-disable; 79862306a36Sopenharmony_ci drive-strength = <2>; 79962306a36Sopenharmony_ci }; 80062306a36Sopenharmony_ci 80162306a36Sopenharmony_ci ap_ec_int_l: ap-ec-int-l-state { 80262306a36Sopenharmony_ci pins = "gpio18"; 80362306a36Sopenharmony_ci function = "gpio"; 80462306a36Sopenharmony_ci bias-pull-up; 80562306a36Sopenharmony_ci }; 80662306a36Sopenharmony_ci 80762306a36Sopenharmony_ci bios_flash_wp_od: bios-flash-wp-od-state { 80862306a36Sopenharmony_ci pins = "gpio16"; 80962306a36Sopenharmony_ci function = "gpio"; 81062306a36Sopenharmony_ci /* Has external pull */ 81162306a36Sopenharmony_ci bias-disable; 81262306a36Sopenharmony_ci }; 81362306a36Sopenharmony_ci 81462306a36Sopenharmony_ci en_fp_rails: en-fp-rails-state { 81562306a36Sopenharmony_ci pins = "gpio77"; 81662306a36Sopenharmony_ci function = "gpio"; 81762306a36Sopenharmony_ci bias-disable; 81862306a36Sopenharmony_ci drive-strength = <2>; 81962306a36Sopenharmony_ci output-high; 82062306a36Sopenharmony_ci }; 82162306a36Sopenharmony_ci 82262306a36Sopenharmony_ci en_pp3300_codec: en-pp3300-codec-state { 82362306a36Sopenharmony_ci pins = "gpio105"; 82462306a36Sopenharmony_ci function = "gpio"; 82562306a36Sopenharmony_ci bias-disable; 82662306a36Sopenharmony_ci drive-strength = <2>; 82762306a36Sopenharmony_ci }; 82862306a36Sopenharmony_ci 82962306a36Sopenharmony_ci en_pp3300_dx_edp: en-pp3300-dx-edp-state { 83062306a36Sopenharmony_ci pins = "gpio80"; 83162306a36Sopenharmony_ci function = "gpio"; 83262306a36Sopenharmony_ci bias-disable; 83362306a36Sopenharmony_ci drive-strength = <2>; 83462306a36Sopenharmony_ci }; 83562306a36Sopenharmony_ci 83662306a36Sopenharmony_ci fp_rst_l: fp-rst-l-state { 83762306a36Sopenharmony_ci pins = "gpio78"; 83862306a36Sopenharmony_ci function = "gpio"; 83962306a36Sopenharmony_ci bias-disable; 84062306a36Sopenharmony_ci drive-strength = <2>; 84162306a36Sopenharmony_ci }; 84262306a36Sopenharmony_ci 84362306a36Sopenharmony_ci fp_to_ap_irq_l: fp-to-ap-irq-l-state { 84462306a36Sopenharmony_ci pins = "gpio61"; 84562306a36Sopenharmony_ci function = "gpio"; 84662306a36Sopenharmony_ci /* Has external pullup */ 84762306a36Sopenharmony_ci bias-disable; 84862306a36Sopenharmony_ci }; 84962306a36Sopenharmony_ci 85062306a36Sopenharmony_ci fpmcu_boot0: fpmcu-boot0-state { 85162306a36Sopenharmony_ci pins = "gpio68"; 85262306a36Sopenharmony_ci function = "gpio"; 85362306a36Sopenharmony_ci bias-disable; 85462306a36Sopenharmony_ci }; 85562306a36Sopenharmony_ci 85662306a36Sopenharmony_ci gsc_ap_int_odl: gsc-ap-int-odl-state { 85762306a36Sopenharmony_ci pins = "gpio104"; 85862306a36Sopenharmony_ci function = "gpio"; 85962306a36Sopenharmony_ci bias-pull-up; 86062306a36Sopenharmony_ci }; 86162306a36Sopenharmony_ci 86262306a36Sopenharmony_ci hp_irq: hp-irq-state { 86362306a36Sopenharmony_ci pins = "gpio101"; 86462306a36Sopenharmony_ci function = "gpio"; 86562306a36Sopenharmony_ci bias-pull-up; 86662306a36Sopenharmony_ci }; 86762306a36Sopenharmony_ci 86862306a36Sopenharmony_ci hub_en: hub-en-state { 86962306a36Sopenharmony_ci pins = "gpio157"; 87062306a36Sopenharmony_ci function = "gpio"; 87162306a36Sopenharmony_ci bias-disable; 87262306a36Sopenharmony_ci drive-strength = <2>; 87362306a36Sopenharmony_ci }; 87462306a36Sopenharmony_ci 87562306a36Sopenharmony_ci pe_wake_odl: pe-wake-odl-state { 87662306a36Sopenharmony_ci pins = "gpio3"; 87762306a36Sopenharmony_ci function = "gpio"; 87862306a36Sopenharmony_ci /* Has external pull */ 87962306a36Sopenharmony_ci bias-disable; 88062306a36Sopenharmony_ci drive-strength = <2>; 88162306a36Sopenharmony_ci }; 88262306a36Sopenharmony_ci 88362306a36Sopenharmony_ci /* For ap_spi_fp */ 88462306a36Sopenharmony_ci qup_spi9_cs_gpio_init_high: qup-spi9-cs-gpio-init-high-state { 88562306a36Sopenharmony_ci pins = "gpio39"; 88662306a36Sopenharmony_ci function = "gpio"; 88762306a36Sopenharmony_ci output-high; 88862306a36Sopenharmony_ci }; 88962306a36Sopenharmony_ci 89062306a36Sopenharmony_ci /* For ap_ec_spi */ 89162306a36Sopenharmony_ci qup_spi10_cs_gpio_init_high: qup-spi10-cs-gpio-init-high-state { 89262306a36Sopenharmony_ci pins = "gpio43"; 89362306a36Sopenharmony_ci function = "gpio"; 89462306a36Sopenharmony_ci output-high; 89562306a36Sopenharmony_ci }; 89662306a36Sopenharmony_ci 89762306a36Sopenharmony_ci sar0_irq_odl: sar0-irq-odl-state { 89862306a36Sopenharmony_ci pins = "gpio141"; 89962306a36Sopenharmony_ci function = "gpio"; 90062306a36Sopenharmony_ci bias-pull-up; 90162306a36Sopenharmony_ci }; 90262306a36Sopenharmony_ci 90362306a36Sopenharmony_ci sar1_irq_odl: sar1-irq-odl-state { 90462306a36Sopenharmony_ci pins = "gpio140"; 90562306a36Sopenharmony_ci function = "gpio"; 90662306a36Sopenharmony_ci bias-pull-up; 90762306a36Sopenharmony_ci }; 90862306a36Sopenharmony_ci 90962306a36Sopenharmony_ci sd_cd_odl: sd-cd-odl-state { 91062306a36Sopenharmony_ci pins = "gpio91"; 91162306a36Sopenharmony_ci function = "gpio"; 91262306a36Sopenharmony_ci bias-pull-up; 91362306a36Sopenharmony_ci }; 91462306a36Sopenharmony_ci 91562306a36Sopenharmony_ci ssd_en: ssd-en-state { 91662306a36Sopenharmony_ci pins = "gpio51"; 91762306a36Sopenharmony_ci function = "gpio"; 91862306a36Sopenharmony_ci bias-disable; 91962306a36Sopenharmony_ci drive-strength = <2>; 92062306a36Sopenharmony_ci }; 92162306a36Sopenharmony_ci 92262306a36Sopenharmony_ci ssd_rst_l: ssd-rst-l-state { 92362306a36Sopenharmony_ci pins = "gpio2"; 92462306a36Sopenharmony_ci function = "gpio"; 92562306a36Sopenharmony_ci bias-disable; 92662306a36Sopenharmony_ci drive-strength = <2>; 92762306a36Sopenharmony_ci output-low; 92862306a36Sopenharmony_ci }; 92962306a36Sopenharmony_ci 93062306a36Sopenharmony_ci tp_int_odl: tp-int-odl-state { 93162306a36Sopenharmony_ci pins = "gpio7"; 93262306a36Sopenharmony_ci function = "gpio"; 93362306a36Sopenharmony_ci /* Has external pullup */ 93462306a36Sopenharmony_ci bias-disable; 93562306a36Sopenharmony_ci }; 93662306a36Sopenharmony_ci 93762306a36Sopenharmony_ci wf_cam_en: wf-cam-en-state { 93862306a36Sopenharmony_ci pins = "gpio119"; 93962306a36Sopenharmony_ci function = "gpio"; 94062306a36Sopenharmony_ci /* Has external pulldown */ 94162306a36Sopenharmony_ci bias-disable; 94262306a36Sopenharmony_ci drive-strength = <2>; 94362306a36Sopenharmony_ci }; 94462306a36Sopenharmony_ci}; 945