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}; 159