blob: d144a564450984fb71df989c2619f9a06dcbb94f [file] [log] [blame]
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +03001// SPDX-License-Identifier: GPL-2.0
2
3#include <dt-bindings/input/input.h>
4
5#include "tegra30.dtsi"
6
7/ {
8 chosen {
9 stdout-path = &uarta;
10 };
11
12 aliases {
13 i2c0 = &pwr_i2c;
14 i2c1 = &gen1_i2c;
15
16 mmc0 = &sdmmc4; /* eMMC */
17 mmc1 = &sdmmc1; /* uSD slot */
18
19 rtc0 = &pmic;
20 rtc1 = "/rtc@7000e000";
21
22 usb0 = &usb1;
23 usb1 = &usb3; /* Dock USB */
24 };
25
26 memory {
27 device_type = "memory";
28 reg = <0x80000000 0x40000000>;
29 };
30
31 host1x@50000000 {
32 dc@54200000 {
33 rgb {
34 status = "okay";
35
36 nvidia,panel = <&panel>;
37 };
38 };
39 };
40
41 uarta: serial@70006000 {
42 status = "okay";
43 };
44
45 pwm: pwm@7000a000 {
46 status = "okay";
47 };
48
49 gen1_i2c: i2c@7000c000 {
50 status = "okay";
51 clock-frequency = <100000>;
52 };
53
54 pwr_i2c: i2c@7000d000 {
55 status = "okay";
56 clock-frequency = <400000>;
57
58 /* Texas Instruments TPS659110 PMIC */
59 pmic: tps65911@2d {
60 compatible = "ti,tps65911";
61 reg = <0x2d>;
62
63 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
64 #interrupt-cells = <2>;
65 interrupt-controller;
66
67 ti,system-power-controller;
68
69 #gpio-cells = <2>;
70 gpio-controller;
71
72 regulators {
73 /* eMMC VDD */
74 vcore_emmc: ldo1 {
75 regulator-name = "vdd_emmc_core";
76 regulator-min-microvolt = <1000000>;
77 regulator-max-microvolt = <3300000>;
78 regulator-always-on;
79 };
80
81 /* uSD slot VDD */
82 vdd_usd: ldo2 {
83 regulator-name = "vdd_usd";
84 regulator-min-microvolt = <3100000>;
85 regulator-max-microvolt = <3100000>;
86 };
87
88 /* uSD slot VDDIO */
89 vddio_usd: ldo3 {
90 regulator-name = "vddio_usd";
91 regulator-min-microvolt = <1800000>;
92 regulator-max-microvolt = <3100000>;
93 };
94 };
95 };
96 };
97
98 sdmmc1: sdhci@78000000 {
99 status = "okay";
100 bus-width = <4>;
101
102 cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
103 power-gpios = <&gpio TEGRA_GPIO(D, 7) GPIO_ACTIVE_HIGH>;
104
105 vmmc-supply = <&vdd_usd>;
106 vqmmc-supply = <&vddio_usd>;
107 };
108
109 sdmmc4: sdhci@78000600 {
110 status = "okay";
111 bus-width = <8>;
112 non-removable;
113 };
114
115 /* USB via ASUS connector */
116 usb1: usb@7d000000 {
117 status = "okay";
118 dr_mode = "otg";
119 };
120
121 /* Dock's USB port */
122 usb3: usb@7d008000 {
123 status = "okay";
124 };
125
Svyatoslav Ryhelb97e5a82023-10-03 09:36:35 +0300126 usb-phy@7d008000 {
127 status = "okay";
128 };
129
Svyatoslav Ryhel7a25c382023-06-30 10:29:03 +0300130 backlight: backlight {
131 compatible = "pwm-backlight";
132
133 enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
134 power-supply = <&vdd_5v0_bl>;
135 pwms = <&pwm 0 4000000>;
136
137 brightness-levels = <1 35 70 105 140 175 210 255>;
138 default-brightness-level = <5>;
139 };
140
141 /* PMIC has a built-in 32KHz oscillator which is used by PMC */
142 clk32k_in: clock-32k {
143 compatible = "fixed-clock";
144 #clock-cells = <0>;
145 clock-frequency = <32768>;
146 clock-output-names = "pmic-oscillator";
147 };
148
149 gpio-keys {
150 compatible = "gpio-keys";
151
152 key-power {
153 label = "Power";
154 gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
155 linux,code = <KEY_ENTER>;
156 };
157
158 key-volume-up {
159 label = "Volume Up";
160 gpios = <&gpio TEGRA_GPIO(Q, 2) GPIO_ACTIVE_LOW>;
161 linux,code = <KEY_UP>;
162 };
163
164 key-volume-down {
165 label = "Volume Down";
166 gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>;
167 linux,code = <KEY_DOWN>;
168 };
169 };
170
171 panel: panel {
172 compatible = "simple-panel";
173
174 power-supply = <&vdd_pnl_reg>;
175 enable-gpios = <&gpio TEGRA_GPIO(N, 6) GPIO_ACTIVE_HIGH>;
176
177 backlight = <&backlight>;
178
179 display-timings {
180 timing@0 {
181 /* 1280x800@60Hz */
182 clock-frequency = <68000000>;
183
184 hactive = <1280>;
185 hfront-porch = <48>;
186 hback-porch = <18>;
187 hsync-len = <30>;
188
189 vactive = <800>;
190 vfront-porch = <3>;
191 vback-porch = <12>;
192 vsync-len = <5>;
193 };
194 };
195 };
196
197 vdd_pnl_reg: regulator-pnl {
198 compatible = "regulator-fixed";
199 regulator-name = "vdd_panel";
200 regulator-min-microvolt = <3300000>;
201 regulator-max-microvolt = <3300000>;
202 gpio = <&gpio TEGRA_GPIO(W, 1) GPIO_ACTIVE_HIGH>;
203 enable-active-high;
204 };
205
206 vdd_5v0_bl: regulator-bl {
207 compatible = "regulator-fixed";
208 regulator-name = "vdd_5v0_bl";
209 regulator-min-microvolt = <5000000>;
210 regulator-max-microvolt = <5000000>;
211 regulator-boot-on;
212 gpio = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
213 enable-active-high;
214 };
215};