123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310 |
- // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
- /*
- * Google Gru-Kevin Rev 6+ board device tree source
- *
- * Copyright 2016-2017 Google, Inc
- */
- /dts-v1/;
- #include "rk3399-gru-chromebook.dtsi"
- #include <dt-bindings/input/linux-event-codes.h>
- /*
- * Kevin-specific things
- *
- * Things in this section should use names from Kevin schematic since no
- * equivalent exists in Gru schematic. If referring to signals that exist
- * in Gru we use the Gru names, though. Confusing enough for you?
- */
- / {
- model = "Google Kevin";
- compatible = "google,kevin-rev15", "google,kevin-rev14",
- "google,kevin-rev13", "google,kevin-rev12",
- "google,kevin-rev11", "google,kevin-rev10",
- "google,kevin-rev9", "google,kevin-rev8",
- "google,kevin-rev7", "google,kevin-rev6",
- "google,kevin", "google,gru", "rockchip,rk3399";
- /* Power tree */
- p3_3v_dig: p3-3v-dig {
- compatible = "regulator-fixed";
- regulator-name = "p3.3v_dig";
- pinctrl-names = "default";
- pinctrl-0 = <&cpu3_pen_pwr_en>;
- enable-active-high;
- gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>;
- vin-supply = <&pp3300>;
- };
- edp_panel: edp-panel {
- compatible = "sharp,lq123p1jx31", "simple-panel";
- backlight = <&backlight>;
- power-supply = <&pp3300_disp>;
- port {
- panel_in_edp: endpoint {
- remote-endpoint = <&edp_out_panel>;
- };
- };
- };
- thermistor_ppvar_bigcpu: thermistor-ppvar-bigcpu {
- compatible = "murata,ncp15wb473";
- pullup-uv = <1800000>;
- pullup-ohm = <25500>;
- pulldown-ohm = <0>;
- io-channels = <&saradc 2>;
- #thermal-sensor-cells = <0>;
- };
- thermistor_ppvar_litcpu: thermistor-ppvar-litcpu {
- compatible = "murata,ncp15wb473";
- pullup-uv = <1800000>;
- pullup-ohm = <25500>;
- pulldown-ohm = <0>;
- io-channels = <&saradc 3>;
- #thermal-sensor-cells = <0>;
- };
- };
- &backlight {
- pwms = <&cros_ec_pwm 1>;
- };
- &gpio_keys {
- pinctrl-names = "default";
- pinctrl-0 = <&bt_host_wake_l>, <&cpu1_pen_eject>;
- pen-insert {
- label = "Pen Insert";
- /* Insert = low, eject = high */
- gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
- linux,code = <SW_PEN_INSERTED>;
- linux,input-type = <EV_SW>;
- wakeup-source;
- };
- };
- &thermal_zones {
- bigcpu_reg_thermal: bigcpu-reg-thermal {
- polling-delay-passive = <100>; /* milliseconds */
- polling-delay = <1000>; /* milliseconds */
- thermal-sensors = <&thermistor_ppvar_bigcpu 0>;
- sustainable-power = <4000>;
- ppvar_bigcpu_trips: trips {
- ppvar_bigcpu_on: ppvar-bigcpu-on {
- temperature = <40000>; /* millicelsius */
- hysteresis = <2000>; /* millicelsius */
- type = "passive";
- };
- ppvar_bigcpu_alert: ppvar-bigcpu-alert {
- temperature = <50000>; /* millicelsius */
- hysteresis = <2000>; /* millicelsius */
- type = "passive";
- };
- ppvar_bigcpu_crit: ppvar-bigcpu-crit {
- temperature = <90000>; /* millicelsius */
- hysteresis = <0>; /* millicelsius */
- type = "critical";
- };
- };
- cooling-maps {
- map0 {
- trip = <&ppvar_bigcpu_alert>;
- cooling-device =
- <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
- contribution = <4096>;
- };
- map1 {
- trip = <&ppvar_bigcpu_alert>;
- cooling-device =
- <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
- contribution = <1024>;
- };
- };
- };
- litcpu_reg_thermal: litcpu-reg-thermal {
- polling-delay-passive = <100>; /* milliseconds */
- polling-delay = <1000>; /* milliseconds */
- thermal-sensors = <&thermistor_ppvar_litcpu 0>;
- sustainable-power = <4000>;
- ppvar_litcpu_trips: trips {
- ppvar_litcpu_on: ppvar-litcpu-on {
- temperature = <40000>; /* millicelsius */
- hysteresis = <2000>; /* millicelsius */
- type = "passive";
- };
- ppvar_litcpu_alert: ppvar-litcpu-alert {
- temperature = <50000>; /* millicelsius */
- hysteresis = <2000>; /* millicelsius */
- type = "passive";
- };
- ppvar_litcpu_crit: ppvar-litcpu-crit {
- temperature = <90000>; /* millicelsius */
- hysteresis = <0>; /* millicelsius */
- type = "critical";
- };
- };
- };
- };
- ap_i2c_tpm: &i2c0 {
- status = "okay";
- clock-frequency = <400000>;
- /* These are relatively safe rise/fall times. */
- i2c-scl-falling-time-ns = <50>;
- i2c-scl-rising-time-ns = <300>;
- tpm: tpm@20 {
- compatible = "infineon,slb9645tt";
- reg = <0x20>;
- powered-while-suspended;
- };
- };
- ap_i2c_dig: &i2c2 {
- status = "okay";
- clock-frequency = <400000>;
- /* These are relatively safe rise/fall times. */
- i2c-scl-falling-time-ns = <50>;
- i2c-scl-rising-time-ns = <300>;
- digitizer: digitizer@9 {
- /* wacom,w9013 */
- compatible = "hid-over-i2c";
- reg = <0x9>;
- pinctrl-names = "default";
- pinctrl-0 = <&cpu1_dig_irq_l &cpu1_dig_pdct_l>;
- vdd-supply = <&p3_3v_dig>;
- post-power-on-delay-ms = <100>;
- interrupt-parent = <&gpio2>;
- interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
- hid-descr-addr = <0x1>;
- };
- };
- /* Adjustments to things in the gru baseboard */
- &ap_i2c_tp {
- trackpad@4a {
- compatible = "atmel,maxtouch";
- reg = <0x4a>;
- pinctrl-names = "default";
- pinctrl-0 = <&trackpad_int_l>;
- interrupt-parent = <&gpio1>;
- interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
- linux,gpio-keymap = <KEY_RESERVED
- KEY_RESERVED
- KEY_RESERVED
- BTN_LEFT>;
- wakeup-source;
- };
- };
- &ap_i2c_ts {
- touchscreen@4b {
- compatible = "atmel,maxtouch";
- reg = <0x4b>;
- pinctrl-names = "default";
- pinctrl-0 = <&touch_int_l>;
- interrupt-parent = <&gpio3>;
- interrupts = <13 IRQ_TYPE_LEVEL_LOW>;
- };
- };
- &ppvar_bigcpu_pwm {
- regulator-min-microvolt = <798674>;
- regulator-max-microvolt = <1302172>;
- };
- &ppvar_bigcpu {
- regulator-min-microvolt = <798674>;
- regulator-max-microvolt = <1302172>;
- ctrl-voltage-range = <798674 1302172>;
- };
- &ppvar_litcpu_pwm {
- regulator-min-microvolt = <799065>;
- regulator-max-microvolt = <1303738>;
- };
- &ppvar_litcpu {
- regulator-min-microvolt = <799065>;
- regulator-max-microvolt = <1303738>;
- ctrl-voltage-range = <799065 1303738>;
- };
- &ppvar_gpu_pwm {
- regulator-min-microvolt = <785782>;
- regulator-max-microvolt = <1217729>;
- };
- &ppvar_gpu {
- regulator-min-microvolt = <785782>;
- regulator-max-microvolt = <1217729>;
- ctrl-voltage-range = <785782 1217729>;
- };
- &ppvar_centerlogic_pwm {
- regulator-min-microvolt = <800069>;
- regulator-max-microvolt = <1049692>;
- };
- &ppvar_centerlogic {
- regulator-min-microvolt = <800069>;
- regulator-max-microvolt = <1049692>;
- ctrl-voltage-range = <800069 1049692>;
- };
- &saradc {
- status = "okay";
- vref-supply = <&pp1800_ap_io>;
- };
- &mvl_wifi {
- marvell,wakeup-pin = <14>; /* GPIO_14 on Marvell */
- };
- &pinctrl {
- digitizer {
- /* Has external pullup */
- cpu1_dig_irq_l: cpu1-dig-irq-l {
- rockchip,pins = <2 4 RK_FUNC_GPIO &pcfg_pull_none>;
- };
- /* Has external pullup */
- cpu1_dig_pdct_l: cpu1-dig-pdct-l {
- rockchip,pins = <2 5 RK_FUNC_GPIO &pcfg_pull_none>;
- };
- };
- discrete-regulators {
- cpu3_pen_pwr_en: cpu3-pen-pwr-en {
- rockchip,pins = <4 30 RK_FUNC_GPIO &pcfg_pull_none>;
- };
- };
- pen {
- cpu1_pen_eject: cpu1-pen-eject {
- rockchip,pins = <0 13 RK_FUNC_GPIO &pcfg_pull_up>;
- };
- };
- };
|