blob: 4fa980f24f99447895d5ed8d97cd8752e7fc8794 [file] [log] [blame]
Svyatoslav Ryhel88fd1562023-06-30 10:29:04 +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
15 mmc0 = &sdmmc4; /* eMMC */
16
17 rtc0 = &pmic;
18 rtc1 = "/rtc@7000e000";
19
20 usb0 = &usb1;
21 };
22
23 memory {
24 device_type = "memory";
25 reg = <0x80000000 0x40000000>;
26 };
27
28 host1x@50000000 {
29 dc@54200000 {
30 nvidia,180-rotation;
31 rgb {
32 status = "okay";
33
34 nvidia,panel = <&panel>;
35 };
36 };
37 };
38
39 gpio@6000d000 {
40 volume-buttons-hog {
41 gpio-hog;
42 gpios = <TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>,
43 <TEGRA_GPIO(Q, 0) GPIO_ACTIVE_HIGH>;
44 output-low;
45 };
46 };
47
48 uarta: serial@70006000 {
49 status = "okay";
50 };
51
52 pwm: pwm@7000a000 {
53 status = "okay";
54 };
55
56 pwr_i2c: i2c@7000d000 {
57 status = "okay";
58 clock-frequency = <400000>;
59 };
60
61 sdmmc4: sdhci@78000600 {
62 status = "okay";
63 bus-width = <8>;
64 non-removable;
65 };
66
67 usb1: usb@7d000000 {
68 status = "okay";
69 dr_mode = "otg";
70 };
71
72 backlight: backlight {
73 compatible = "pwm-backlight";
74
75 enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
76 power-supply = <&vdd_5v0_bl>;
77 pwms = <&pwm 0 50000>;
78
79 brightness-levels = <1 35 70 105 140 175 210 255>;
80 default-brightness-level = <5>;
81 };
82
83 /* PMIC has a built-in 32KHz oscillator which is used by PMC */
84 clk32k_in: clock-32k {
85 compatible = "fixed-clock";
86 #clock-cells = <0>;
87 clock-frequency = <32768>;
88 clock-output-names = "pmic-oscillator";
89 };
90
91 gpio-keys {
92 compatible = "gpio-keys";
93
94 key-power {
95 label = "Power";
96 gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
97 linux,code = <KEY_ENTER>;
98 };
99
100 key-volume-up {
101 label = "Volume Up";
102 gpios = <&gpio TEGRA_GPIO(Q, 2) GPIO_ACTIVE_LOW>;
103 linux,code = <KEY_UP>;
104 };
105
106 key-volume-down {
107 label = "Volume Down";
108 gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>;
109 linux,code = <KEY_DOWN>;
110 };
111 };
112
113 panel: panel {
114 compatible = "simple-panel";
115
116 power-supply = <&vdd_pnl_reg>;
117 enable-gpios = <&gpio TEGRA_GPIO(N, 6) GPIO_ACTIVE_HIGH>;
118
119 backlight = <&backlight>;
120
121 display-timings {
122 timing@0 {
123 /* 1280x800@60Hz */
124 clock-frequency = <68000000>;
125
126 hactive = <800>;
127 hfront-porch = <24>;
128 hback-porch = <32>;
129 hsync-len = <24>;
130
131 vactive = <1280>;
132 vfront-porch = <5>;
133 vback-porch = <32>;
134 vsync-len = <1>;
135 };
136 };
137 };
138
139 vdd_pnl_reg: regulator-pnl {
140 compatible = "regulator-fixed";
141 regulator-name = "vdd_panel";
142 regulator-min-microvolt = <3300000>;
143 regulator-max-microvolt = <3300000>;
144 gpio = <&gpio TEGRA_GPIO(W, 1) GPIO_ACTIVE_HIGH>;
145 enable-active-high;
146 };
147
148 vdd_5v0_bl: regulator-bl {
149 compatible = "regulator-fixed";
150 regulator-name = "vdd_5v0_bl";
151 regulator-min-microvolt = <5000000>;
152 regulator-max-microvolt = <5000000>;
153 regulator-boot-on;
154 gpio = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
155 enable-active-high;
156 };
157};