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