Merge branch 'topic/nhlt' into for-next
[linux-2.6-microblaze.git] / arch / arm / boot / dts / imx6ull-colibri-eval-v3.dtsi
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
2 /*
3  * Copyright 2017 Toradex AG
4  */
5
6 / {
7         chosen {
8                 stdout-path = "serial0:115200n8";
9         };
10
11         gpio-keys {
12                 compatible = "gpio-keys";
13                 pinctrl-names = "default";
14                 pinctrl-0 = <&pinctrl_snvs_gpiokeys>;
15
16                 power {
17                         label = "Wake-Up";
18                         gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
19                         linux,code = <KEY_WAKEUP>;
20                         debounce-interval = <10>;
21                         wakeup-source;
22                 };
23         };
24
25         /* fixed crystal dedicated to mcp2515 */
26         clk16m: clk16m {
27                 compatible = "fixed-clock";
28                 #clock-cells = <0>;
29                 clock-frequency = <16000000>;
30         };
31
32         panel: panel {
33                 compatible = "edt,et057090dhu";
34                 backlight = <&bl>;
35                 power-supply = <&reg_3v3>;
36
37                 port {
38                         panel_in: endpoint {
39                                 remote-endpoint = <&lcdif_out>;
40                         };
41                 };
42         };
43
44         reg_3v3: regulator-3v3 {
45                 compatible = "regulator-fixed";
46                 regulator-name = "3.3V";
47                 regulator-min-microvolt = <3300000>;
48                 regulator-max-microvolt = <3300000>;
49         };
50
51         reg_5v0: regulator-5v0 {
52                 compatible = "regulator-fixed";
53                 regulator-name = "5V";
54                 regulator-min-microvolt = <5000000>;
55                 regulator-max-microvolt = <5000000>;
56         };
57
58         reg_usbh_vbus: regulator-usbh-vbus {
59                 compatible = "regulator-fixed";
60                 pinctrl-names = "default";
61                 pinctrl-0 = <&pinctrl_usbh_reg>;
62                 regulator-name = "VCC_USB[1-4]";
63                 regulator-min-microvolt = <5000000>;
64                 regulator-max-microvolt = <5000000>;
65                 gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
66                 vin-supply = <&reg_5v0>;
67         };
68 };
69
70 &adc1 {
71         status = "okay";
72 };
73
74 &bl {
75         brightness-levels = <0 4 8 16 32 64 128 255>;
76         default-brightness-level = <6>;
77         power-supply = <&reg_3v3>;
78         pwms = <&pwm4 0 5000000 1>;
79         status = "okay";
80 };
81
82 &ecspi1 {
83         status = "okay";
84
85         mcp2515: can@0 {
86                 compatible = "microchip,mcp2515";
87                 pinctrl-names = "default";
88                 pinctrl-0 = <&pinctrl_can_int>;
89                 reg = <0>;
90                 clocks = <&clk16m>;
91                 interrupt-parent = <&gpio2>;
92                 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
93                 spi-max-frequency = <10000000>;
94                 vdd-supply = <&reg_3v3>;
95                 xceiver-supply = <&reg_5v0>;
96                 status = "okay";
97         };
98 };
99
100 &i2c1 {
101         status = "okay";
102
103         /* M41T0M6 real time clock on carrier board */
104         m41t0m6: rtc@68 {
105                 compatible = "st,m41t0";
106                 reg = <0x68>;
107         };
108 };
109
110 &lcdif {
111         status = "okay";
112
113         port {
114                 lcdif_out: endpoint {
115                         remote-endpoint = <&panel_in>;
116                 };
117         };
118 };
119
120 /* PWM <A> */
121 &pwm4 {
122         status = "okay";
123 };
124
125 /* PWM <B> */
126 &pwm5 {
127         status = "okay";
128 };
129
130 /* PWM <C> */
131 &pwm6 {
132         status = "okay";
133 };
134
135 /* PWM <D> */
136 &pwm7 {
137         status = "okay";
138 };
139
140 &uart1 {
141         status = "okay";
142 };
143
144 &uart2 {
145         status = "okay";
146 };
147
148 &uart5 {
149         status = "okay";
150 };
151
152 &usbotg1 {
153         status = "okay";
154 };
155
156 &usbotg2 {
157         vbus-supply = <&reg_usbh_vbus>;
158         status = "okay";
159 };
160
161 &usdhc1 {
162         pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
163         pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_snvs_usdhc1_cd>;
164         pinctrl-1 = <&pinctrl_usdhc1_100mhz &pinctrl_snvs_usdhc1_cd>;
165         pinctrl-2 = <&pinctrl_usdhc1_200mhz &pinctrl_snvs_usdhc1_cd>;
166         pinctrl-3 = <&pinctrl_usdhc1 &pinctrl_snvs_usdhc1_sleep_cd>;
167         cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
168         disable-wp;
169         wakeup-source;
170         keep-power-in-suspend;
171         vmmc-supply = <&reg_3v3>;
172         vqmmc-supply = <&reg_sd1_vmmc>;
173         sd-uhs-sdr12;
174         sd-uhs-sdr25;
175         sd-uhs-sdr50;
176         sd-uhs-sdr104;
177         status = "okay";
178 };