Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / boot / dts / rockchip / rk3399-nanopc-t4.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * FriendlyElec NanoPC-T4 board device tree source
4  *
5  * Copyright (c) 2018 FriendlyElec Computer Tech. Co., Ltd.
6  * (http://www.friendlyarm.com)
7  *
8  * Copyright (c) 2018 Collabora Ltd.
9  */
10
11 /dts-v1/;
12 #include "rk3399-nanopi4.dtsi"
13
14 / {
15         model = "FriendlyElec NanoPC-T4";
16         compatible = "friendlyarm,nanopc-t4", "rockchip,rk3399";
17
18         vcc12v0_sys: vcc12v0-sys {
19                 compatible = "regulator-fixed";
20                 regulator-always-on;
21                 regulator-boot-on;
22                 regulator-max-microvolt = <12000000>;
23                 regulator-min-microvolt = <12000000>;
24                 regulator-name = "vcc12v0_sys";
25         };
26
27         vcc5v0_host0: vcc5v0-host0 {
28                 compatible = "regulator-fixed";
29                 regulator-always-on;
30                 regulator-boot-on;
31                 regulator-name = "vcc5v0_host0";
32                 vin-supply = <&vcc5v0_sys>;
33         };
34
35         adc-keys {
36                 compatible = "adc-keys";
37                 io-channels = <&saradc 1>;
38                 io-channel-names = "buttons";
39                 keyup-threshold-microvolt = <1800000>;
40                 poll-interval = <100>;
41
42                 button-recovery {
43                         label = "Recovery";
44                         linux,code = <KEY_VENDOR>;
45                         press-threshold-microvolt = <18000>;
46                 };
47         };
48
49         ir-receiver {
50                 compatible = "gpio-ir-receiver";
51                 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
52                 pinctrl-names = "default";
53                 pinctrl-0 = <&ir_rx>;
54         };
55
56         fan: pwm-fan {
57                 compatible = "pwm-fan";
58                 /*
59                  * With 20KHz PWM and an EVERCOOL EC4007H12SA fan, these levels
60                  * work out to 0, ~1200, ~3000, and 5000RPM respectively.
61                  */
62                 cooling-levels = <0 12 18 255>;
63                 #cooling-cells = <2>;
64                 fan-supply = <&vcc12v0_sys>;
65                 pwms = <&pwm1 0 50000 0>;
66         };
67 };
68
69 &cpu_thermal {
70         trips {
71                 cpu_warm: cpu_warm {
72                         temperature = <55000>;
73                         hysteresis = <2000>;
74                         type = "active";
75                 };
76
77                 cpu_hot: cpu_hot {
78                         temperature = <65000>;
79                         hysteresis = <2000>;
80                         type = "active";
81                 };
82         };
83
84         cooling-maps {
85                 map2 {
86                         trip = <&cpu_warm>;
87                         cooling-device = <&fan THERMAL_NO_LIMIT 1>;
88                 };
89
90                 map3 {
91                         trip = <&cpu_hot>;
92                         cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
93                 };
94         };
95 };
96
97 &pcie0 {
98         ep-gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_HIGH>;
99         num-lanes = <4>;
100         vpcie3v3-supply = <&vcc3v3_sys>;
101 };
102
103 &pinctrl {
104         ir {
105                 ir_rx: ir-rx {
106                         /* external pullup to VCC3V3_SYS, despite being 1.8V :/ */
107                         rockchip,pins = <0 RK_PA6 1 &pcfg_pull_none>;
108                 };
109         };
110 };
111
112 &sdhci {
113         mmc-hs400-1_8v;
114         mmc-hs400-enhanced-strobe;
115 };
116
117 &u2phy0_host {
118         phy-supply = <&vcc5v0_host0>;
119 };
120
121 &u2phy1_host {
122         phy-supply = <&vcc5v0_host0>;
123 };
124
125 &vcc5v0_sys {
126         vin-supply = <&vcc12v0_sys>;
127 };
128
129 &vcc3v3_sys {
130         vin-supply = <&vcc12v0_sys>;
131 };
132
133 &vbus_typec {
134         enable-active-high;
135         gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
136         vin-supply = <&vcc5v0_sys>;
137 };