]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/gnu/dts/arm64/rockchip/rk3399-nanopc-t4.dts
Import libxo-1.3.0:
[FreeBSD/FreeBSD.git] / sys / gnu / dts / arm64 / 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                 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 &gpu_thermal {
98         trips {
99                 gpu_warm: gpu_warm {
100                         temperature = <55000>;
101                         hysteresis = <2000>;
102                         type = "active";
103                 };
104
105                 gpu_hot: gpu_hot {
106                         temperature = <65000>;
107                         hysteresis = <2000>;
108                         type = "active";
109                 };
110         };
111         cooling-maps {
112                 map1 {
113                         trip = <&gpu_warm>;
114                         cooling-device = <&fan THERMAL_NO_LIMIT 1>;
115                 };
116
117                 map2 {
118                         trip = <&gpu_hot>;
119                         cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
120                 };
121         };
122 };
123
124 &pinctrl {
125         ir {
126                 ir_rx: ir-rx {
127                         /* external pullup to VCC3V3_SYS, despite being 1.8V :/ */
128                         rockchip,pins = <0 RK_PA6 1 &pcfg_pull_none>;
129                 };
130         };
131 };
132
133 &sdhci {
134         mmc-hs400-1_8v;
135         mmc-hs400-enhanced-strobe;
136 };
137
138 &u2phy0_host {
139         phy-supply = <&vcc5v0_host0>;
140 };
141
142 &u2phy1_host {
143         phy-supply = <&vcc5v0_host0>;
144 };
145
146 &vcc5v0_sys {
147         vin-supply = <&vcc12v0_sys>;
148 };
149
150 &vcc3v3_sys {
151         vin-supply = <&vcc12v0_sys>;
152 };
153
154 &vbus_typec {
155         enable-active-high;
156         gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
157         vin-supply = <&vcc5v0_sys>;
158 };