blob: fd9d11ca19c968eda48cc2575bb6df0f1c27c982 [file] [log] [blame]
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +03001// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +03004#include <dt-bindings/input/input.h>
5#include "tegra30.dtsi"
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +03006
7/ {
8 model = "ASUS VivoTab RT TF600T";
9 compatible = "asus,tf600t", "nvidia,tegra30";
10
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030011 chosen {
12 stdout-path = &uarta;
13 };
14
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030015 aliases {
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030016 i2c0 = &pwr_i2c;
17
18 mmc0 = &sdmmc4; /* eMMC */
19 mmc1 = &sdmmc1; /* uSD slot */
20
21 rtc0 = &pmic;
22 rtc1 = "/rtc@7000e000";
23
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030024 spi0 = &spi4;
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030025
26 usb0 = &usb1;
27 usb1 = &usb3; /* Dock USB */
28 };
29
30 memory {
31 device_type = "memory";
32 reg = <0x80000000 0x80000000>;
33 };
34
35 host1x@50000000 {
36 dc@54200000 {
37 clocks = <&tegra_car TEGRA30_CLK_DISP1>,
38 <&tegra_car TEGRA30_CLK_PLL_D_OUT0>;
39
40 rgb {
41 status = "okay";
42
43 nvidia,panel = <&dsia>;
44 };
45 };
46
47 dsia: dsi@54300000 {
48 status = "okay";
49
50 avdd-dsi-csi-supply = <&avdd_dsi_csi>;
51
52 panel = <&panel>;
53 };
54 };
55
56 uarta: serial@70006000 {
57 status = "okay";
58 };
59
60 pwm: pwm@7000a000 {
61 status = "okay";
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030062 };
63
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030064 pwr_i2c: i2c@7000d000 {
65 status = "okay";
66 clock-frequency = <400000>;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030067
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030068 /* Texas Instruments TPS659110 PMIC */
69 pmic: tps65911@2d {
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030070 compatible = "ti,tps65911";
71 reg = <0x2d>;
72
73 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
74 #interrupt-cells = <2>;
75 interrupt-controller;
76
77 ti,system-power-controller;
78
79 #gpio-cells = <2>;
80 gpio-controller;
81
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030082 regulators {
83 vdd_1v2_bl: vdd1 {
84 regulator-name = "vdd_1v2_backlight";
85 regulator-min-microvolt = <1200000>;
86 regulator-max-microvolt = <1200000>;
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +030087 };
88
89 vcore_lcd: vdd2 {
90 regulator-name = "vcore_lcd";
91 regulator-min-microvolt = <1500000>;
92 regulator-max-microvolt = <1500000>;
93 };
94
95 vdd_1v8_vio: vddio {
96 regulator-name = "vdd_1v8_gen";
97 regulator-min-microvolt = <1800000>;
98 regulator-max-microvolt = <1800000>;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +030099 regulator-always-on;
100 regulator-boot-on;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300101 };
102
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300103 /* eMMC VDD */
104 vcore_emmc: ldo1 {
105 regulator-name = "vdd_emmc_core";
106 regulator-min-microvolt = <3300000>;
107 regulator-max-microvolt = <3300000>;
108 };
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300109
110 /* uSD slot VDDIO */
111 vddio_usd: ldo5 {
112 regulator-name = "vddio_sdmmc";
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300113 regulator-min-microvolt = <3300000>;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300114 regulator-max-microvolt = <3300000>;
115 regulator-always-on;
116 };
117
118 avdd_dsi_csi: ldo6 {
119 regulator-name = "avdd_dsi_csi";
120 regulator-min-microvolt = <1200000>;
121 regulator-max-microvolt = <1200000>;
122 };
123 };
124 };
125 };
126
127 spi4: spi@7000da00 {
128 status = "okay";
129 spi-max-frequency = <25000000>;
130
131 spi-flash@1 {
132 compatible = "winbond,w25q32", "jedec,spi-nor";
133 reg = <1>;
134 spi-max-frequency = <20000000>;
135 };
136 };
137
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300138 sdmmc1: sdhci@78000000 {
139 status = "okay";
140 bus-width = <4>;
141
142 cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
143 power-gpios = <&gpio TEGRA_GPIO(D, 7) GPIO_ACTIVE_HIGH>;
144
145 vmmc-supply = <&vdd_usd>;
146 vqmmc-supply = <&vddio_usd>;
147 };
148
149 sdmmc4: sdhci@78000600 {
150 status = "okay";
151 bus-width = <8>;
152 non-removable;
153
154 vmmc-supply = <&vcore_emmc>;
155 vqmmc-supply = <&vdd_1v8_vio>;
156 };
157
158 /* USB via ASUS connector */
159 usb1: usb@7d000000 {
160 status = "okay";
161 dr_mode = "otg";
162 };
163
164 /* Dock's USB port */
165 usb3: usb@7d008000 {
166 status = "okay";
167 };
168
169 backlight: backlight {
170 compatible = "pwm-backlight";
171
172 enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300173 power-supply = <&vdd_1v2_bl>;
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300174 pwms = <&pwm 0 71428>;
175
176 brightness-levels = <1 35 70 105 140 175 210 255>;
177 default-brightness-level = <5>;
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300178 };
179
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300180 /* PMIC has a built-in 32KHz oscillator which is used by PMC */
181 clk32k_in: clock-32k {
182 compatible = "fixed-clock";
183 #clock-cells = <0>;
184 clock-frequency = <32768>;
185 clock-output-names = "pmic-oscillator";
186 };
187
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300188 gpio-keys {
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300189 compatible = "gpio-keys";
190
191 key-power {
192 label = "Power";
193 gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
194 linux,code = <KEY_ENTER>;
195 };
196
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300197 key-volume-up {
198 label = "Volume Up";
199 gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>;
200 linux,code = <KEY_UP>;
201 };
202
203 key-volume-down {
204 label = "Volume Down";
205 gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>;
206 linux,code = <KEY_DOWN>;
207 };
208 };
209
Svyatoslav Ryhelb5e3b352023-10-03 09:36:33 +0300210 panel: panel {
211 compatible = "hydis,hv101hd1";
212
213 vdd-supply = <&vcore_lcd>;
214 enable-gpios = <&gpio TEGRA_GPIO(L, 4) GPIO_ACTIVE_HIGH>;
215
216 backlight = <&backlight>;
217 };
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300218
219 vdd_usd: regulator-usd {
220 compatible = "regulator-fixed";
221 regulator-name = "vdd_usd";
222 regulator-min-microvolt = <3300000>;
223 regulator-max-microvolt = <3300000>;
224 };
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300225};