Lines Matching +full:fw +full:- +full:gpios

1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
8 /dts-v1/;
10 #include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
11 #include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
12 #include <dt-bindings/input/gpio-keys.h>
13 #include <dt-bindings/input/input.h>
14 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
15 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
24 #include "sc7280-chrome-common.dtsi"
28 compatible = "google,herobrine-rev0", "qcom,sc7280";
38 stdout-path = "serial0:115200n8";
41 /* FIXED REGULATORS - parents above children */
44 ppvar_sys: ppvar-sys-regulator {
45 compatible = "regulator-fixed";
46 regulator-name = "ppvar_sys";
47 regulator-always-on;
48 regulator-boot-on;
52 src_vph_pwr: src-vph-pwr-regulator {
53 compatible = "regulator-fixed";
54 regulator-name = "src_vph_pwr";
57 regulator-always-on;
58 regulator-boot-on;
60 vin-supply = <&ppvar_sys>;
63 pp5000_s3: pp5000-s3-regulator {
64 compatible = "regulator-fixed";
65 regulator-name = "pp5000_s3";
68 regulator-always-on;
69 regulator-boot-on;
70 regulator-min-microvolt = <5000000>;
71 regulator-max-microvolt = <5000000>;
73 vin-supply = <&ppvar_sys>;
76 pp3300_z1: pp3300-z1-regulator {
77 compatible = "regulator-fixed";
78 regulator-name = "pp3300_z1";
81 regulator-always-on;
82 regulator-boot-on;
83 regulator-min-microvolt = <3300000>;
84 regulator-max-microvolt = <3300000>;
86 vin-supply = <&ppvar_sys>;
90 pp3300_codec: pp3300-codec-regulator {
91 compatible = "regulator-fixed";
92 regulator-name = "pp3300_codec";
94 regulator-min-microvolt = <3300000>;
95 regulator-max-microvolt = <3300000>;
98 enable-active-high;
99 pinctrl-names = "default";
100 pinctrl-0 = <&en_pp3300_codec>;
102 vin-supply = <&pp3300_z1>;
107 pp3300_ts: pp3300-edp-regulator {
108 compatible = "regulator-fixed";
109 regulator-name = "pp3300_edp";
111 regulator-min-microvolt = <3300000>;
112 regulator-max-microvolt = <3300000>;
115 enable-active-high;
116 pinctrl-names = "default";
117 pinctrl-0 = <&en_pp3300_dx_edp>;
119 vin-supply = <&pp3300_z1>;
124 pp3300_mcu: pp3300-fp-regulator {
125 compatible = "regulator-fixed";
126 regulator-name = "pp3300_fp";
128 regulator-min-microvolt = <3300000>;
129 regulator-max-microvolt = <3300000>;
131 regulator-boot-on;
132 regulator-always-on;
137 * needs to control the FP regulators during a FW update,
141 pinctrl-names = "default";
142 pinctrl-0 = <&en_fp_rails>;
144 vin-supply = <&pp3300_z1>;
147 pp3300_hub: pp3300-hub-regulator {
148 compatible = "regulator-fixed";
149 regulator-name = "pp3300_hub";
151 regulator-min-microvolt = <3300000>;
152 regulator-max-microvolt = <3300000>;
154 regulator-boot-on;
155 regulator-always-on;
158 enable-active-high;
159 pinctrl-names = "default";
160 pinctrl-0 = <&en_pp3300_hub>;
162 vin-supply = <&pp3300_z1>;
165 pp3300_tp: pp3300-tp-regulator {
166 compatible = "regulator-fixed";
167 regulator-name = "pp3300_tp";
169 regulator-min-microvolt = <3300000>;
170 regulator-max-microvolt = <3300000>;
173 regulator-always-on;
174 regulator-boot-on;
176 vin-supply = <&pp3300_z1>;
179 pp2850_uf_cam: pp2850-uf-cam-regulator {
180 compatible = "regulator-fixed";
181 regulator-name = "pp2850_uf_cam";
183 regulator-min-microvolt = <2850000>;
184 regulator-max-microvolt = <2850000>;
187 enable-active-high;
188 pinctrl-names = "default";
189 pinctrl-0 = <&uf_cam_en>;
191 vin-supply = <&pp3300_cam>;
194 pp2850_vcm_wf_cam: pp2850-vcm-wf-cam-regulator {
195 compatible = "regulator-fixed";
196 regulator-name = "pp2850_vcm_wf_cam";
198 regulator-min-microvolt = <2850000>;
199 regulator-max-microvolt = <2850000>;
202 enable-active-high;
203 pinctrl-names = "default";
204 pinctrl-0 = <&wf_cam_en>;
206 vin-supply = <&pp3300_cam>;
209 pp2850_wf_cam: pp2850-wf-cam-regulator {
210 compatible = "regulator-fixed";
211 regulator-name = "pp2850_wf_cam";
213 regulator-min-microvolt = <2850000>;
214 regulator-max-microvolt = <2850000>;
217 enable-active-high;
222 * pinctrl-names = "default";
223 * pinctrl-0 = <&wf_cam_en>;
226 vin-supply = <&pp3300_cam>;
229 pp1800_fp: pp1800-fp-regulator {
230 compatible = "regulator-fixed";
231 regulator-name = "pp1800_fp";
233 regulator-min-microvolt = <1800000>;
234 regulator-max-microvolt = <1800000>;
236 regulator-boot-on;
237 regulator-always-on;
242 * needs to control the FP regulators during a FW update,
246 pinctrl-names = "default";
247 pinctrl-0 = <&en_fp_rails>;
249 vin-supply = <&pp1800_l18b_s0>;
253 pp1800_uf_cam: pp1800-uf-cam-regulator {
254 compatible = "regulator-fixed";
255 regulator-name = "pp1800_uf_cam";
257 regulator-min-microvolt = <1800000>;
258 regulator-max-microvolt = <1800000>;
261 enable-active-high;
266 * pinctrl-names = "default";
267 * pinctrl-0 = <&uf_cam_en>;
270 vin-supply = <&pp1800_l19b>;
273 pp1800_wf_cam: pp1800-wf-cam-regulator {
274 compatible = "regulator-fixed";
275 regulator-name = "pp1800_wf_cam";
277 regulator-min-microvolt = <1800000>;
278 regulator-max-microvolt = <1800000>;
281 enable-active-high;
286 * pinctrl-names = "default";
287 * pinctrl-0 = <&wf_cam_en>;
290 vin-supply = <&pp1800_l19b>;
293 pp1200_wf_cam: pp1200-wf-cam-regulator {
294 compatible = "regulator-fixed";
295 regulator-name = "pp1200_wf_cam";
297 regulator-min-microvolt = <1200000>;
298 regulator-max-microvolt = <1200000>;
301 enable-active-high;
306 * pinctrl-names = "default";
307 * pinctrl-0 = <&wf_cam_en>;
310 vin-supply = <&pp1200_l6b>;
313 /* BOARD-SPECIFIC TOP LEVEL NODES */
315 gpio_keys: gpio-keys {
316 compatible = "gpio-keys";
318 pinctrl-names = "default";
319 pinctrl-0 = <&pen_pdct_l>;
321 pen_insert: pen-insert {
325 gpios = <&tlmm 39 GPIO_ACTIVE_LOW>;
327 linux,input-type = <EV_SW>;
328 wakeup-event-action = <EV_ACT_DEASSERTED>;
329 wakeup-source;
334 compatible = "pwm-leds";
336 keyboard_backlight: keyboard-backlight {
340 max-brightness = <1023>;
346 pm7325-regulators {
347 compatible = "qcom,pm7325-rpmh-regulators";
348 qcom,pmic-id = "b";
354 regulator-min-microvolt = <1856000>;
355 regulator-max-microvolt = <2040000>;
361 regulator-min-microvolt = <535000>;
362 regulator-max-microvolt = <1120000>;
369 regulator-min-microvolt = <1256000>;
370 regulator-max-microvolt = <1500000>;
375 regulator-min-microvolt = <825000>;
376 regulator-max-microvolt = <925000>;
377 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
382 regulator-min-microvolt = <2700000>;
383 regulator-max-microvolt = <3544000>;
384 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
401 regulator-min-microvolt = <1120000>;
402 regulator-max-microvolt = <1408000>;
403 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
408 regulator-min-microvolt = <2960000>;
409 regulator-max-microvolt = <2960000>;
410 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
421 regulator-min-microvolt = <1800000>;
422 regulator-max-microvolt = <2000000>;
423 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
430 regulator-min-microvolt = <1800000>;
431 regulator-max-microvolt = <1800000>;
432 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
436 pm8350c-regulators {
437 compatible = "qcom,pm8350c-rpmh-regulators";
438 qcom,pmic-id = "c";
441 regulator-min-microvolt = <2190000>;
442 regulator-max-microvolt = <2210000>;
447 regulator-min-microvolt = <1010000>;
448 regulator-max-microvolt = <1170000>;
461 regulator-min-microvolt = <1800000>;
462 regulator-max-microvolt = <1980000>;
463 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
471 regulator-min-microvolt = <1620000>;
472 regulator-max-microvolt = <1980000>;
473 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
479 regulator-min-microvolt = <2800000>;
480 regulator-max-microvolt = <3540000>;
481 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
487 regulator-min-microvolt = <1620000>;
488 regulator-max-microvolt = <3300000>;
489 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
496 regulator-min-microvolt = <1620000>;
497 regulator-max-microvolt = <3300000>;
498 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
504 regulator-min-microvolt = <1800000>;
505 regulator-max-microvolt = <2950000>;
506 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
510 regulator-min-microvolt = <3000000>;
511 regulator-max-microvolt = <3544000>;
512 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
518 regulator-min-microvolt = <1620000>;
519 regulator-max-microvolt = <2000000>;
520 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
525 regulator-min-microvolt = <2960000>;
526 regulator-max-microvolt = <2960000>;
527 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
548 regulator-min-microvolt = <720000>;
549 regulator-max-microvolt = <1050000>;
550 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
555 regulator-min-microvolt = <2800000>;
556 regulator-max-microvolt = <3544000>;
557 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
562 regulator-min-microvolt = <1650000>;
563 regulator-max-microvolt = <2000000>;
564 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
569 regulator-min-microvolt = <2700000>;
570 regulator-max-microvolt = <3544000>;
571 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
575 regulator-min-microvolt = <3008000>;
576 regulator-max-microvolt = <3960000>;
577 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
584 clock-frequency = <400000>;
589 pinctrl-names = "default";
590 pinctrl-0 = <&tp_int_odl>;
592 interrupt-parent = <&tlmm>;
595 vcc-supply = <&pp3300_z1>;
597 wakeup-source;
603 clock-frequency = <400000>;
609 pinctrl-names = "default";
610 pinctrl-0 = <&h1_ap_int_odl>;
612 interrupt-parent = <&tlmm>;
619 clock-frequency = <400000>;
622 compatible = "hid-over-i2c";
624 pinctrl-names = "default";
625 pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
627 interrupt-parent = <&tlmm>;
630 post-power-on-delay-ms = <20>;
631 hid-descr-addr = <0x0001>;
633 vdd-supply = <&pp3300_ts>;
638 status = "disabled"; /* No GPIOs are connected */
642 status = "disabled"; /* No GPIOs are connected */
653 qcom,pre-scaling = <1 1>;
659 qcom,pre-scaling = <1 1>;
664 vcc-supply = <&vdd_qfprom>;
678 vmmc-supply = <&pp2950_l7b>;
679 vqmmc-supply = <&pp1800_l19b>;
685 pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>, <&sd_cd>;
686 pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>, <&sd_cd>;
687 vmmc-supply = <&pp2950_l9c>;
688 vqmmc-supply = <&ppvar_l6c>;
690 cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>;
696 pinctrl-0 = <&qup_spi8_data_clk>, <&qup_spi8_cs_gpio_init_high>, <&qup_spi8_cs_gpio>;
697 cs-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
700 compatible = "google,cros-ec-spi";
702 interrupt-parent = <&tlmm>;
704 pinctrl-names = "default";
705 pinctrl-0 = <&ap_ec_int_l>;
706 spi-max-frequency = <3000000>;
709 compatible = "google,cros-ec-pwm";
710 #pwm-cells = <1>;
713 i2c_tunnel: i2c-tunnel {
714 compatible = "google,cros-ec-i2c-tunnel";
715 google,remote-bus = <0>;
716 #address-cells = <1>;
717 #size-cells = <0>;
721 compatible = "google,cros-ec-typec";
722 #address-cells = <1>;
723 #size-cells = <0>;
726 compatible = "usb-c-connector";
729 power-role = "dual";
730 data-role = "host";
731 try-power-role = "source";
735 compatible = "usb-c-connector";
738 power-role = "dual";
739 data-role = "host";
740 try-power-role = "source";
746 #include <arm/cros-ec-keyboard.dtsi>
747 #include <arm/cros-ec-sbs.dtsi>
750 function-row-physmap = <
779 compatible = "qcom,geni-debug-uart";
798 vdda-pll-supply = <&vdd_usb_hs0_core>;
799 vdda33-supply = <&vdda_usb_hs0_3p1>;
800 vdda18-supply = <&vdda_usb_hs0_1p8>;
806 vdda-phy-supply = <&vdda_usb_ss_dp_1p2>;
807 vdda-pll-supply = <&vdda_usb_ss_dp_core>;
821 vdda-pll-supply = <&vdd_usb_hs0_core>;
822 vdda33-supply = <&vdda_usb_hs0_3p1>;
823 vdda18-supply = <&vdda_usb_hs0_1p8>;
826 /* PINCTRL - additions to nodes defined in sc7280.dtsi */
829 bias-disable;
833 bias-pull-up;
834 drive-strength = <2>;
838 bias-disable;
842 bias-disable;
846 /* High-Z when no transfers; nice to park the lines */
847 bias-pull-up;
851 drive-strength = <2>;
852 bias-pull-up;
856 drive-strength = <2>;
857 bias-disable;
862 * Configure a pull-down on CTS to match the pull of
865 bias-pull-down;
870 drive-strength = <2>;
871 bias-disable;
876 drive-strength = <2>;
877 bias-disable;
882 * Configure a pull-up on RX. This is needed to avoid
884 * in tri-state (module powered off or not driving the
887 bias-pull-up;
891 bias-disable;
892 drive-strength = <16>;
896 bias-pull-up;
897 drive-strength = <10>;
901 bias-pull-up;
902 drive-strength = <10>;
906 bias-pull-down;
910 bias-disable;
911 drive-strength = <16>;
915 bias-pull-up;
916 drive-strength = <10>;
920 bias-pull-up;
921 drive-strength = <10>;
924 /* PINCTRL - board-specific pinctrl */
927 gpio-line-names = "AP_SUSPEND",
937 ap_bl_en: ap-bl-en {
940 qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
941 bias-disable;
944 output-low;
949 gpio-line-names = "HP_I2C_SDA", /* 0 */
1150 pinctrl-names = "default";
1151 pinctrl-0 = <&bios_flash_wp_l>;
1153 amp_en: amp-en {
1156 bias-pull-down;
1159 ap_ec_int_l: ap-ec-int-l {
1161 input-enable;
1162 bias-pull-up;
1165 bios_flash_wp_l: bios-flash-wp-l {
1168 input-enable;
1169 bias-disable;
1172 bt_en: bt-en {
1175 drive-strength = <2>;
1176 output-low;
1177 bias-pull-down;
1180 en_fp_rails: en-fp-rails {
1182 drive-strength = <2>;
1183 output-high;
1184 bias-disable;
1187 en_pp3300_codec: en-pp3300-codec {
1189 drive-strength = <2>;
1190 bias-disable;
1193 en_pp3300_dx_edp: en-pp3300-dx-edp {
1196 drive-strength = <2>;
1198 bias-disable;
1201 en_pp3300_hub: en-pp3300-hub {
1204 drive-strength = <2>;
1206 bias-disable;
1209 fp_to_ap_irq_l: fp-to-ap-irq-l {
1212 input-enable;
1214 bias-disable;
1217 h1_ap_int_odl: h1-ap-int-odl {
1220 input-enable;
1221 bias-pull-up;
1224 hp_irq: hp-irq {
1227 bias-pull-up;
1230 p_sensor_int_l: p-sensor-int-l {
1233 input-enable;
1234 bias-pull-up;
1237 pen_irq_l: pen-irq-l {
1241 bias-disable;
1244 pen_pdct_l: pen-pdct-l {
1248 bias-disable;
1251 qup_spi8_cs_gpio_init_high: qup-spi8-cs-gpio-init-high {
1253 output-high;
1256 qup_spi11_cs_gpio_init_high: qup-spi11-cs-gpio-init-high {
1258 output-high;
1261 qup_spi12_cs_gpio_init_high: qup-spi12-cs-gpio-init-high {
1263 output-high;
1266 qup_uart7_sleep_cts: qup-uart7-sleep-cts {
1270 * Configure a pull-down on CTS to match the pull of
1273 bias-pull-down;
1276 qup_uart7_sleep_rts: qup-uart7-sleep-rts {
1280 * Configure pull-down on RTS. As RTS is active low
1285 bias-pull-down;
1288 qup_uart7_sleep_rx: qup-uart7-sleep-rx {
1292 * Configure a pull-up on RX. This is needed to avoid
1296 bias-pull-up;
1299 qup_uart7_sleep_tx: qup-uart7-sleep-tx {
1303 * Configure pull-up on TX when it isn't actively driven
1306 bias-pull-up;
1309 sd_cd: sd-cd {
1312 bias-pull-up;
1315 tp_int_odl: tp-int-odl {
1319 bias-disable;
1322 ts_int_l: ts-int-l {
1326 bias-pull-up;
1329 ts_reset_l: ts-reset-l {
1333 bias-disable;
1334 drive-strength = <2>;
1337 uf_cam_en: uf-cam-en {
1340 drive-strength = <2>;
1342 bias-disable;
1345 wf_cam_en: wf-cam-en {
1348 drive-strength = <2>;
1350 bias-disable;