Skip to content

Commit 9c5a544

Browse files
committed
Merge tag 'tegra-for-7.1-arm-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt
ARM: tegra: Device tree changes for v7.1-rc1 Various improvements for Tegra114 boards, as well as some legacy cleanup for PAZ00 and Transformers devices. * tag 'tegra-for-7.1-arm-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: ARM: tegra: paz00: Configure WiFi rfkill switch through device tree ARM: tegra: transformers: Add connector node ARM: tegra: Add External Memory Controller node on Tegra114 ARM: tegra: Add ACTMON node to Tegra114 device tree ARM: tegra: lg-x3: Add node for capacitive buttons ARM: tegra: lg-x3: Add USB and power related nodes ARM: tegra: lg-x3: Add panel and bridge nodes ARM: tn7: Adjust panel node ARM: tegra: Add SOCTHERM support on Tegra114 Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2 parents 8366b60 + ce74a6c commit 9c5a544

11 files changed

Lines changed: 482 additions & 75 deletions

File tree

arch/arm/boot/dts/nvidia/tegra114-tn7.dts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@
4343
compatible = "lg,ld070wx3-sl01";
4444
reg = <0>;
4545

46-
power-supply = <&vdd_lcd>;
46+
vdd-supply = <&avdd_lcd>;
47+
vcc-supply = <&dvdd_lcd>;
48+
4749
backlight = <&backlight>;
4850
};
4951
};
@@ -101,11 +103,10 @@
101103
regulator-boot-on;
102104
};
103105

104-
smps6 {
106+
avdd_lcd: smps6 {
105107
regulator-name = "va-lcd-hv";
106-
regulator-min-microvolt = <3000000>;
107-
regulator-max-microvolt = <3000000>;
108-
regulator-always-on;
108+
regulator-min-microvolt = <3160000>;
109+
regulator-max-microvolt = <3160000>;
109110
regulator-boot-on;
110111
};
111112

@@ -325,7 +326,7 @@
325326
regulator-boot-on;
326327
};
327328

328-
vdd_lcd: regulator-lcd {
329+
dvdd_lcd: regulator-lcd {
329330
compatible = "regulator-fixed";
330331
regulator-name = "VD_LCD_1V8";
331332
regulator-min-microvolt = <1800000>;

arch/arm/boot/dts/nvidia/tegra114.dtsi

Lines changed: 221 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include <dt-bindings/interrupt-controller/arm-gic.h>
77
#include <dt-bindings/reset/nvidia,tegra114-car.h>
88
#include <dt-bindings/soc/tegra-pmc.h>
9+
#include <dt-bindings/thermal/tegra114-soctherm.h>
910

1011
/ {
1112
compatible = "nvidia,tegra114";
@@ -258,6 +259,8 @@
258259
reg = <0x60006000 0x1000>;
259260
#clock-cells = <1>;
260261
#reset-cells = <1>;
262+
263+
nvidia,external-memory-controller = <&emc>;
261264
};
262265

263266
flow-controller@60007000 {
@@ -311,6 +314,18 @@
311314
reg = <0x6000c000 0x150>;
312315
};
313316

317+
actmon: actmon@6000c800 {
318+
compatible = "nvidia,tegra114-actmon";
319+
reg = <0x6000c800 0x400>;
320+
interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
321+
clocks = <&tegra_car TEGRA114_CLK_ACTMON>,
322+
<&tegra_car TEGRA114_CLK_EMC>;
323+
clock-names = "actmon", "emc";
324+
resets = <&tegra_car TEGRA114_CLK_ACTMON>;
325+
reset-names = "actmon";
326+
#cooling-cells = <2>;
327+
};
328+
314329
gpio: gpio@6000d000 {
315330
compatible = "nvidia,tegra114-gpio", "nvidia,tegra30-gpio";
316331
reg = <0x6000d000 0x1000>;
@@ -642,6 +657,16 @@
642657
#iommu-cells = <1>;
643658
};
644659

660+
emc: external-memory-controller@7001b000 {
661+
compatible = "nvidia,tegra114-emc";
662+
reg = <0x7001b000 0x800>;
663+
interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
664+
clocks = <&tegra_car TEGRA114_CLK_EMC>;
665+
clock-names = "emc";
666+
667+
nvidia,memory-controller = <&mc>;
668+
};
669+
645670
hda@70030000 {
646671
compatible = "nvidia,tegra114-hda", "nvidia,tegra30-hda";
647672
reg = <0x70030000 0x10000>;
@@ -751,6 +776,46 @@
751776
};
752777
};
753778

779+
soctherm: thermal-sensor@700e2000 {
780+
compatible = "nvidia,tegra114-soctherm";
781+
reg = <0x700e2000 0x600>, /* SOC_THERM reg_base */
782+
<0x60006000 0x400>; /* CAR reg_base */
783+
reg-names = "soctherm-reg", "car-reg";
784+
interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>,
785+
<GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
786+
interrupt-names = "thermal", "edp";
787+
clocks = <&tegra_car TEGRA114_CLK_TSENSOR>,
788+
<&tegra_car TEGRA114_CLK_SOC_THERM>;
789+
clock-names = "tsensor", "soctherm";
790+
resets = <&tegra_car 78>;
791+
reset-names = "soctherm";
792+
793+
assigned-clocks = <&tegra_car TEGRA114_CLK_TSENSOR>,
794+
<&tegra_car TEGRA114_CLK_SOC_THERM>;
795+
assigned-clock-rates = <500000>, <51000000>;
796+
797+
assigned-clock-parents = <&tegra_car TEGRA114_CLK_CLK_M>,
798+
<&tegra_car TEGRA114_CLK_PLL_P>;
799+
800+
#thermal-sensor-cells = <1>;
801+
802+
throttle-cfgs {
803+
throttle_heavy: heavy {
804+
nvidia,priority = <100>;
805+
nvidia,cpu-throt-percent = <80>;
806+
nvidia,gpu-throt-level = <TEGRA114_SOCTHERM_THROT_LEVEL_HIGH>;
807+
#cooling-cells = <2>;
808+
};
809+
810+
throttle_light: light {
811+
nvidia,priority = <80>;
812+
nvidia,cpu-throt-percent = <50>;
813+
nvidia,gpu-throt-level = <TEGRA114_SOCTHERM_THROT_LEVEL_MED>;
814+
#cooling-cells = <2>;
815+
};
816+
};
817+
};
818+
754819
mipi: mipi@700e3000 {
755820
compatible = "nvidia,tegra114-mipi";
756821
reg = <0x700e3000 0x100>;
@@ -921,24 +986,28 @@
921986
clock-names = "cpu_g", "cpu_lp", "pll_x", "pll_p", "dfll";
922987
/* FIXME: what's the actual transition time? */
923988
clock-latency = <300000>;
989+
#cooling-cells = <2>;
924990
};
925991

926992
cpu1: cpu@1 {
927993
device_type = "cpu";
928994
compatible = "arm,cortex-a15";
929995
reg = <1>;
996+
#cooling-cells = <2>;
930997
};
931998

932999
cpu2: cpu@2 {
9331000
device_type = "cpu";
9341001
compatible = "arm,cortex-a15";
9351002
reg = <2>;
1003+
#cooling-cells = <2>;
9361004
};
9371005

9381006
cpu3: cpu@3 {
9391007
device_type = "cpu";
9401008
compatible = "arm,cortex-a15";
9411009
reg = <3>;
1010+
#cooling-cells = <2>;
9421011
};
9431012
};
9441013

@@ -951,6 +1020,158 @@
9511020
interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
9521021
};
9531022

1023+
thermal-zones {
1024+
cpu-thermal {
1025+
polling-delay-passive = <1000>;
1026+
polling-delay = <1000>;
1027+
1028+
thermal-sensors =
1029+
<&soctherm TEGRA114_SOCTHERM_SENSOR_CPU>;
1030+
1031+
trips {
1032+
cpu-shutdown-trip {
1033+
temperature = <102000>;
1034+
hysteresis = <0>;
1035+
type = "critical";
1036+
};
1037+
1038+
cpu_throttle_trip: cpu-throttle-trip {
1039+
temperature = <100000>;
1040+
hysteresis = <1000>;
1041+
type = "hot";
1042+
};
1043+
1044+
cpu_balanced_trip: cpu-balanced-trip {
1045+
temperature = <90000>;
1046+
hysteresis = <1000>;
1047+
type = "passive";
1048+
};
1049+
};
1050+
1051+
cooling-maps {
1052+
map0 {
1053+
trip = <&cpu_throttle_trip>;
1054+
cooling-device = <&throttle_heavy 1 1>;
1055+
};
1056+
1057+
map1 {
1058+
trip = <&cpu_balanced_trip>;
1059+
cooling-device = <&throttle_light 1 1>;
1060+
};
1061+
};
1062+
};
1063+
1064+
mem-thermal {
1065+
polling-delay-passive = <1000>;
1066+
polling-delay = <1000>;
1067+
1068+
thermal-sensors =
1069+
<&soctherm TEGRA114_SOCTHERM_SENSOR_MEM>;
1070+
1071+
trips {
1072+
mem-shutdown-trip {
1073+
temperature = <102000>;
1074+
hysteresis = <0>;
1075+
type = "critical";
1076+
};
1077+
1078+
mem_throttle_trip: mem-throttle-trip {
1079+
temperature = <100000>;
1080+
hysteresis = <1000>;
1081+
type = "hot";
1082+
};
1083+
1084+
mem_balanced_trip: mem-balanced-trip {
1085+
temperature = <90000>;
1086+
hysteresis = <1000>;
1087+
type = "passive";
1088+
};
1089+
};
1090+
1091+
cooling-maps {
1092+
/*
1093+
* There are currently no cooling maps,
1094+
* because there are no cooling devices.
1095+
*/
1096+
};
1097+
};
1098+
1099+
gpu-thermal {
1100+
polling-delay-passive = <1000>;
1101+
polling-delay = <1000>;
1102+
1103+
thermal-sensors =
1104+
<&soctherm TEGRA114_SOCTHERM_SENSOR_GPU>;
1105+
1106+
trips {
1107+
gpu-shutdown-trip {
1108+
temperature = <102000>;
1109+
hysteresis = <0>;
1110+
type = "critical";
1111+
};
1112+
1113+
gpu_throttle_trip: gpu-throttle-trip {
1114+
temperature = <100000>;
1115+
hysteresis = <1000>;
1116+
type = "hot";
1117+
};
1118+
1119+
gpu_balanced_trip: gpu-balanced-trip {
1120+
temperature = <90000>;
1121+
hysteresis = <1000>;
1122+
type = "passive";
1123+
};
1124+
};
1125+
1126+
cooling-maps {
1127+
map0 {
1128+
trip = <&gpu_throttle_trip>;
1129+
cooling-device = <&throttle_heavy 1 1>;
1130+
};
1131+
1132+
map1 {
1133+
trip = <&gpu_balanced_trip>;
1134+
cooling-device = <&throttle_light 1 1>;
1135+
};
1136+
};
1137+
};
1138+
1139+
pllx-thermal {
1140+
polling-delay-passive = <1000>;
1141+
polling-delay = <1000>;
1142+
1143+
thermal-sensors =
1144+
<&soctherm TEGRA114_SOCTHERM_SENSOR_PLLX>;
1145+
1146+
trips {
1147+
pllx-shutdown-trip {
1148+
temperature = <102000>;
1149+
hysteresis = <0>;
1150+
type = "critical";
1151+
};
1152+
1153+
pllx_throttle_trip: pllx-throttle-trip {
1154+
temperature = <100000>;
1155+
hysteresis = <1000>;
1156+
type = "hot";
1157+
};
1158+
1159+
pllx_balanced_trip: pllx-balanced-trip {
1160+
temperature = <90000>;
1161+
hysteresis = <1000>;
1162+
type = "passive";
1163+
};
1164+
};
1165+
1166+
cooling-maps {
1167+
/*
1168+
* There are currently no cooling maps,
1169+
* because there are no cooling devices.
1170+
*/
1171+
};
1172+
};
1173+
};
1174+
9541175
timer {
9551176
compatible = "arm,armv7-timer";
9561177
interrupts =

arch/arm/boot/dts/nvidia/tegra20-paz00.dts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -706,6 +706,14 @@
706706
enable-active-high;
707707
};
708708

709+
rfkill {
710+
compatible = "rfkill-gpio";
711+
label = "wifi_rfkill";
712+
radio-type = "wlan";
713+
reset-gpios = <&gpio TEGRA_GPIO(D, 1) GPIO_ACTIVE_HIGH>;
714+
shutdown-gpios = <&gpio TEGRA_GPIO(K, 5) GPIO_ACTIVE_HIGH>;
715+
};
716+
709717
sound {
710718
compatible = "nvidia,tegra-audio-alc5632-paz00",
711719
"nvidia,tegra-audio-alc5632";

arch/arm/boot/dts/nvidia/tegra30-asus-tf600t.dts

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,11 @@
6262
pll-supply = <&vdd_1v8_vio>;
6363
vdd-supply = <&vdd_3v3_sys>;
6464

65-
nvidia,hpd-gpio = <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
66-
nvidia,ddc-i2c-bus = <&hdmi_ddc>;
65+
port {
66+
hdmi_out: endpoint {
67+
remote-endpoint = <&hdmi_connector_in>;
68+
};
69+
};
6770
};
6871
};
6972

@@ -2174,6 +2177,20 @@
21742177
clock-output-names = "pmic-oscillator";
21752178
};
21762179

2180+
hdmi-connector {
2181+
compatible = "hdmi-connector";
2182+
type = "d";
2183+
2184+
hpd-gpios = <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
2185+
ddc-i2c-bus = <&hdmi_ddc>;
2186+
2187+
port {
2188+
hdmi_connector_in: endpoint {
2189+
remote-endpoint = <&hdmi_out>;
2190+
};
2191+
};
2192+
};
2193+
21772194
cpus {
21782195
cpu0: cpu@0 {
21792196
cpu-supply = <&vdd_cpu>;

0 commit comments

Comments
 (0)