Linux 5.6.13
[linux/fpc-iii.git] / arch / arm / boot / dts / tegra20-colibri-iris.dts
blobd8004d68efa0d422fb2e3214b9d39a62f25571ad
1 // SPDX-License-Identifier: GPL-2.0
2 /dts-v1/;
4 #include <dt-bindings/input/input.h>
5 #include "tegra20-colibri.dtsi"
7 / {
8         model = "Toradex Colibri T20 on Iris";
9         compatible = "toradex,colibri_t20-iris", "toradex,colibri_t20",
10                      "nvidia,tegra20";
12         aliases {
13                 rtc0 = "/i2c@7000c000/rtc@68";
14                 rtc1 = "/i2c@7000d000/pmic@34";
15                 rtc2 = "/rtc@7000e000";
16                 serial0 = &uarta;
17                 serial1 = &uartd;
18                 serial2 = &uartb;
19         };
21         chosen {
22                 stdout-path = "serial0:115200n8";
23         };
25         host1x@50000000 {
26                 dc@54200000 {
27                         rgb {
28                                 status = "okay";
29                                 nvidia,panel = <&panel>;
30                         };
31                 };
33                 hdmi@54280000 {
34                         status = "okay";
35                         hdmi-supply = <&reg_5v0>;
36                 };
37         };
39         pinmux@70000014 {
40                 state_default: pinmux {
41                         bl-on {
42                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
43                         };
45                         ddc {
46                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
47                         };
49                         hotplug-detect {
50                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
51                         };
53                         i2c {
54                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
55                         };
57                         lcd {
58                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
59                         };
61                         lm1 {
62                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
63                         };
65                         mmc {
66                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
67                         };
69                         mmccd {
70                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
71                         };
73                         pwm-a-b {
74                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
75                         };
77                         pwm-c-d {
78                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
79                         };
81                         ssp {
82                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
83                         };
85                         uart-a {
86                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
87                         };
89                         uart-b {
90                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
91                         };
93                         uart-c {
94                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
95                         };
97                         usbh-pen {
98                                 nvidia,tristate = <TEGRA_PIN_DISABLE>;
99                         };
100                 };
101         };
103         /* Colibri UART-A */
104         serial@70006000 {
105                 status = "okay";
106         };
108         /* Colibri UART-C */
109         serial@70006040 {
110                 status = "okay";
111         };
113         /* Colibri UART-B */
114         serial@70006300 {
115                 status = "okay";
116         };
118         pwm@7000a000 {
119                 status = "okay";
120         };
122         /*
123          * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
124          * board)
125          */
126         i2c@7000c000 {
127                 status = "okay";
128                 clock-frequency = <400000>;
130                 /* M41T0M6 real time clock on carrier board */
131                 rtc@68 {
132                         compatible = "st,m41t0";
133                         reg = <0x68>;
134                 };
135         };
137         /* GEN2_I2C: unused */
139         /* CAM_I2C (I2C3): unused */
141         /* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
142         i2c@7000c400 {
143                 status = "okay";
144         };
146         /* EHCI instance 0: USB1_DP/N -> USBC_P/N */
147         usb@c5000000 {
148                 status = "okay";
149                 dr_mode = "otg";
150         };
152         usb-phy@c5000000 {
153                 status = "okay";
154                 vbus-supply = <&reg_usbc_vbus>;
155         };
157         /* EHCI instance 2: USB3_DP/N -> USBH_P/N */
158         usb@c5008000 {
159                 status = "okay";
160         };
162         usb-phy@c5008000 {
163                 status = "okay";
164                 vbus-supply = <&reg_usbh_vbus>;
165         };
167         /* SPI4: Colibri SSP */
168         spi@7000da00 {
169                 status = "okay";
170                 spi-max-frequency = <25000000>;
171         };
173         /* SD/MMC */
174         sdhci@c8000600 {
175                 status = "okay";
176                 bus-width = <4>;
177                 cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; /* MMCD */
178                 no-1-8-v;
179         };
181         backlight: backlight {
182                 compatible = "pwm-backlight";
183                 brightness-levels = <255 128 64 32 16 8 4 0>;
184                 default-brightness-level = <6>;
185                 /* BL_ON */
186                 enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
187                 power-supply = <&reg_3v3>;
188                 pwms = <&pwm 0 5000000>; /* PWM<A> */
189         };
191         gpio-keys {
192                 compatible = "gpio-keys";
194                 wakeup {
195                         label = "SODIMM pin 45 wakeup";
196                         gpios = <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
197                         linux,code = <KEY_WAKEUP>;
198                         debounce-interval = <10>;
199                         wakeup-source;
200                 };
201         };
203         panel: panel {
204                 /*
205                  * edt,et057090dhu: EDT 5.7" LCD TFT
206                  * edt,et070080dh6: EDT 7.0" LCD TFT
207                  */
208                 compatible = "edt,et057090dhu", "simple-panel";
209                 backlight = <&backlight>;
210                 power-supply = <&reg_3v3>;
211         };
213         reg_3v3: regulator-3v3 {
214                 compatible = "regulator-fixed";
215                 regulator-name = "3.3V";
216                 regulator-min-microvolt = <3300000>;
217                 regulator-max-microvolt = <3300000>;
218         };
220         reg_5v0: regulator-5v0 {
221                 compatible = "regulator-fixed";
222                 regulator-name = "5V";
223                 regulator-min-microvolt = <5000000>;
224                 regulator-max-microvolt = <5000000>;
225         };
227         reg_usbc_vbus: regulator-usbc-vbus {
228                 compatible = "regulator-fixed";
229                 regulator-name = "VCC_USB2";
230                 regulator-min-microvolt = <5000000>;
231                 regulator-max-microvolt = <5000000>;
232                 vin-supply = <&reg_5v0>;
233         };
235         /* USBH_PEN resp. USB_P_EN */
236         reg_usbh_vbus: regulator-usbh-vbus {
237                 compatible = "regulator-fixed";
238                 regulator-name = "VCC_USB1";
239                 regulator-min-microvolt = <5000000>;
240                 regulator-max-microvolt = <5000000>;
241                 gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
242                 vin-supply = <&reg_5v0>;
243         };