Loading...
1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * at91-nattis-2-natte-2.dts - Device Tree file for the Linea/Nattis board
4 *
5 * Copyright (C) 2017 Axentia Technologies AB
6 *
7 * Author: Peter Rosin <peda@axentia.se>
8 */
9/dts-v1/;
10#include "at91-linea.dtsi"
11#include "at91-natte.dtsi"
12
13/ {
14 model = "Axentia Linea-Nattis v2 Natte v2";
15 compatible = "axentia,nattis-2", "axentia,natte-2", "axentia,linea",
16 "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
17
18 gpio-keys {
19 compatible = "gpio-keys";
20
21 wakeup {
22 label = "Wakeup";
23 linux,code = <10>;
24 wakeup-source;
25 gpios = <&pioB 27 GPIO_ACTIVE_LOW>;
26 };
27 };
28
29 panel_reg: panel-regulator {
30 compatible = "regulator-fixed";
31 regulator-name = "panel-VCC";
32 regulator-min-microvolt = <3300000>;
33 regulator-max-microvolt = <3300000>;
34 };
35
36 bl_reg: backlight-regulator {
37 compatible = "regulator-fixed";
38 regulator-name = "panel-VDD";
39 regulator-min-microvolt = <12000000>;
40 regulator-max-microvolt = <12000000>;
41 };
42
43 panel_bl: backlight {
44 compatible = "pwm-backlight";
45 pwms = <&hlcdc_pwm 0 100000 0>;
46
47 brightness-levels = < 0 1 2 3 4 5 6 7 8 9
48 10 11 12 13 14 15 16 17 18 19
49 20 21 22 23 24 25 26 27 28 29
50 30 31 32 33 34 35 36 37 38 39
51 40 41 42 43 44 45 46 47 48 49
52 50 51 52 53 54 55 56 57 58 59
53 60 61 62 63 64 65 66 67 68 69
54 70 71 72 73 74 75 76 77 78 79
55 80 81 82 83 84 85 86 87 88 89
56 90 91 92 93 94 95 96 97 98 99
57 100>;
58 default-brightness-level = <40>;
59
60 power-supply = <&bl_reg>;
61 enable-gpios = <&pioA 20 GPIO_ACTIVE_HIGH>;
62 pinctrl-names = "default";
63 pinctrl-0 = <&pinctrl_blon>;
64 };
65
66 panel: panel {
67 compatible = "sharp,lq150x1lg11", "panel-lvds";
68
69 backlight = <&panel_bl>;
70 power-supply = <&panel_reg>;
71
72 width-mm = <304>;
73 height-mm = <228>;
74
75 data-mapping = "jeida-18";
76
77 panel-timing {
78 // 1024x768 @ 60Hz (typical)
79 clock-frequency = <50000000 65000000 80000000>;
80 hactive = <1024>;
81 vactive = <768>;
82 hfront-porch = <48 88 88>;
83 hback-porch = <96 168 168>;
84 hsync-len = <32 64 64>;
85 vsync-len = <3 13 74>;
86 vfront-porch = <3 13 74>;
87 vback-porch = <3 12 74>;
88 };
89
90 port {
91 panel_input: endpoint {
92 remote-endpoint = <&lvds_encoder_output>;
93 };
94 };
95 };
96
97 lvds-encoder {
98 compatible = "ti,ds90c185", "lvds-encoder";
99
100 pinctrl-names = "default";
101 pinctrl-0 = <&pinctrl_lvds_prlud0 &pinctrl_lvds_hipow0>;
102
103 ports {
104 #address-cells = <1>;
105 #size-cells = <0>;
106
107 port@0 {
108 reg = <0>;
109
110 lvds_encoder_input: endpoint {
111 remote-endpoint = <&hlcdc_output>;
112 };
113 };
114
115 port@1 {
116 reg = <1>;
117
118 lvds_encoder_output: endpoint {
119 remote-endpoint = <&panel_input>;
120 };
121 };
122 };
123 };
124
125 sound {
126 compatible = "simple-audio-card";
127
128 simple-audio-card,name = "nattis-tfa9879";
129 simple-audio-card,format = "i2s";
130 simple-audio-card,bitclock-master = <&cpu_dai>;
131 simple-audio-card,frame-master = <&cpu_dai>;
132 simple-audio-card,widgets = "Line", "Line Out Jack";
133 simple-audio-card,routing = "Line Out Jack", "LINEOUT";
134
135 cpu_dai: simple-audio-card,cpu {
136 sound-dai = <&ssc0>;
137 };
138
139 simple-audio-card,codec {
140 sound-dai = <&>;
141 };
142 };
143};
144
145&pinctrl {
146 nattis {
147 pinctrl_usba_vbus: usba_vbus {
148 atmel,pins = <AT91_PIOD 28 AT91_PERIPH_GPIO
149 AT91_PINCTRL_DEGLITCH>;
150 };
151
152 pinctrl_mmc0_cd: mmc0_cd {
153 atmel,pins = <AT91_PIOD 5 AT91_PERIPH_GPIO
154 AT91_PINCTRL_PULL_UP_DEGLITCH>;
155 };
156
157 pinctrl_lvds_prlud0: lvds_prlud0 {
158 atmel,pins = <AT91_PIOA 21 AT91_PERIPH_GPIO
159 (AT91_PINCTRL_OUTPUT |
160 AT91_PINCTRL_OUTPUT_VAL(0))>;
161 };
162
163 pinctrl_lvds_hipow0: lvds_hipow0 {
164 atmel,pins = <AT91_PIOA 23 AT91_PERIPH_GPIO
165 (AT91_PINCTRL_OUTPUT |
166 AT91_PINCTRL_OUTPUT_VAL(0))>;
167 };
168
169 pinctrl_blon: blon {
170 atmel,pins = <AT91_PIOA 20 AT91_PERIPH_GPIO
171 (AT91_PINCTRL_OUTPUT |
172 AT91_PINCTRL_OUTPUT_VAL(0))>;
173 };
174 };
175};
176
177&watchdog {
178 status = "okay";
179};
180
181&i2c0 {
182 status = "okay";
183
184 clock-frequency = <100000>;
185
186 temp@18 {
187 compatible = "nxp,se97b", "jedec,jc-42.4-temp";
188 reg = <0x18>;
189 smbus-timeout-disable;
190 };
191
192 eeprom@50 {
193 compatible = "nxp,se97b", "atmel,24c02";
194 reg = <0x50>;
195 pagesize = <16>;
196 };
197
198 amp: amplifier@6c {
199 compatible = "nxp,tfa9879";
200 reg = <0x6c>;
201 #sound-dai-cells = <0>;
202 };
203};
204
205&ssc0 {
206 status = "okay";
207
208 atmel,clk-from-rk-pin;
209 #sound-dai-cells = <0>;
210};
211
212&hlcdc {
213 status = "okay";
214
215 hlcdc-display-controller {
216 pinctrl-names = "default";
217 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb565>;
218
219 port@0 {
220 hlcdc_output: endpoint {
221 remote-endpoint = <&lvds_encoder_input>;
222 bus-width = <16>;
223 };
224 };
225 };
226};
227
228&mmc0 {
229 status = "okay";
230
231 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
232 &pinctrl_mmc0_dat1_3
233 &pinctrl_mmc0_cd>;
234
235 slot@0 {
236 reg = <0>;
237 bus-width = <4>;
238 cd-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
239 cd-inverted;
240 };
241};
242
243&usart0 {
244 status = "okay";
245
246 pinctrl-names = "default";
247 pinctrl-0 = <&pinctrl_usart0>;
248 atmel,use-dma-rx;
249};
250
251&nand {
252 partitions {
253 compatible = "fixed-partitions";
254 #address-cells = <1>;
255 #size-cells = <1>;
256
257 at91bootstrap@0 {
258 label = "at91bootstrap";
259 reg = <0x0 0x40000>;
260 };
261
262 barebox@40000 {
263 label = "barebox";
264 reg = <0x40000 0x60000>;
265 };
266
267 bareboxenv@c0000 {
268 label = "bareboxenv";
269 reg = <0xc0000 0x40000>;
270 };
271
272 bareboxenv2@100000 {
273 label = "bareboxenv2";
274 reg = <0x100000 0x40000>;
275 };
276
277 oftree@180000 {
278 label = "oftree";
279 reg = <0x180000 0x20000>;
280 };
281
282 kernel@200000 {
283 label = "kernel";
284 reg = <0x200000 0x500000>;
285 };
286
287 rootfs@800000 {
288 label = "rootfs";
289 reg = <0x800000 0x1f800000>;
290 };
291 };
292};
293
294&dbgu {
295 status = "okay";
296
297 atmel,use-dma-rx;
298};
299
300&usb0 {
301 status = "okay";
302
303 atmel,vbus-gpio = <&pioD 28 GPIO_ACTIVE_HIGH>;
304 pinctrl-names = "default";
305 pinctrl-0 = <&pinctrl_usba_vbus>;
306};
1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * at91-nattis-2-natte-2.dts - Device Tree file for the Linea/Nattis board
4 *
5 * Copyright (C) 2017 Axentia Technologies AB
6 *
7 * Author: Peter Rosin <peda@axentia.se>
8 */
9/dts-v1/;
10#include "at91-linea.dtsi"
11#include "sama5d3_lcd.dtsi"
12#include "at91-natte.dtsi"
13
14/ {
15 model = "Axentia Linea-Nattis v2 Natte v2";
16 compatible = "axentia,nattis-2", "axentia,natte-2", "axentia,linea",
17 "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
18
19 ahb {
20 apb {
21 pinctrl@fffff200 {
22 nattis {
23 pinctrl_usba_vbus: usba_vbus {
24 atmel,pins =
25 <AT91_PIOD 28
26 AT91_PERIPH_GPIO
27 AT91_PINCTRL_DEGLITCH>;
28 };
29
30 pinctrl_mmc0_cd: mmc0_cd {
31 atmel,pins =
32 <AT91_PIOD 5
33 AT91_PERIPH_GPIO
34 AT91_PINCTRL_PULL_UP_DEGLITCH>;
35 };
36
37 pinctrl_lcd_prlud0: lcd_prlud0 {
38 atmel,pins =
39 <AT91_PIOA 21
40 AT91_PERIPH_GPIO
41 AT91_PINCTRL_OUTPUT_VAL(0)>;
42 };
43
44 pinctrl_lcd_hipow0: lcd_hipow0 {
45 atmel,pins =
46 <AT91_PIOA 23
47 AT91_PERIPH_GPIO
48 AT91_PINCTRL_OUTPUT_VAL(0)>;
49 };
50 };
51 };
52
53 watchdog@fffffe40 {
54 status = "okay";
55 };
56 };
57 };
58
59 gpio-keys {
60 compatible = "gpio-keys";
61
62 wakeup {
63 label = "Wakeup";
64 linux,code = <10>;
65 gpio-key,wakeup;
66 gpios = <&pioB 27 GPIO_ACTIVE_LOW>;
67 };
68 };
69
70 panel_reg: panel-regulator {
71 compatible = "regulator-fixed";
72 regulator-name = "panel-VCC";
73 regulator-min-microvolt = <3300000>;
74 regulator-max-microvolt = <3300000>;
75 };
76
77 bl_reg: backlight-regulator {
78 compatible = "regulator-fixed";
79 regulator-name = "panel-VDD";
80 regulator-min-microvolt = <12000000>;
81 regulator-max-microvolt = <12000000>;
82 };
83
84 panel_bl: backlight {
85 compatible = "pwm-backlight";
86 pwms = <&hlcdc_pwm 0 100000 0>;
87
88 brightness-levels = < 0 1 2 3 4 5 6 7 8 9
89 10 11 12 13 14 15 16 17 18 19
90 20 21 22 23 24 25 26 27 28 29
91 30 31 32 33 34 35 36 37 38 39
92 40 41 42 43 44 45 46 47 48 49
93 50 51 52 53 54 55 56 57 58 59
94 60 61 62 63 64 65 66 67 68 69
95 70 71 72 73 74 75 76 77 78 79
96 80 81 82 83 84 85 86 87 88 89
97 90 91 92 93 94 95 96 97 98 99
98 100>;
99 default-brightness-level = <40>;
100
101 power-supply = <&bl_reg>;
102 enable-gpios = <&pioA 20 GPIO_ACTIVE_HIGH>;
103 };
104
105 panel: panel {
106 compatible = "sharp,lq150x1lg11";
107 backlight = <&panel_bl>;
108 power-supply = <&panel_reg>;
109
110 port {
111 panel_input: endpoint {
112 remote-endpoint = <&lvds_encoder_output>;
113 };
114 };
115 };
116
117 lvds-encoder {
118 compatible = "lvds-encoder";
119
120 ports {
121 #address-cells = <1>;
122 #size-cells = <0>;
123
124 port@0 {
125 reg = <0>;
126
127 lvds_encoder_input: endpoint {
128 remote-endpoint = <&hlcdc_output>;
129 };
130 };
131
132 port@1 {
133 reg = <1>;
134
135 lvds_encoder_output: endpoint {
136 remote-endpoint = <&panel_input>;
137 };
138 };
139 };
140 };
141
142 sound {
143 compatible = "simple-audio-card";
144
145 simple-audio-card,name = "nattis-tfa9879";
146 simple-audio-card,format = "i2s";
147 simple-audio-card,bitclock-master = <&cpu_dai>;
148 simple-audio-card,frame-master = <&cpu_dai>;
149 simple-audio-card,widgets = "Line", "Line Out Jack";
150 simple-audio-card,routing = "Line Out Jack", "LINEOUT";
151
152 cpu_dai: simple-audio-card,cpu {
153 sound-dai = <&ssc0>;
154 };
155
156 simple-audio-card,codec {
157 sound-dai = <&>;
158 };
159 };
160};
161
162&i2c0 {
163 status = "okay";
164
165 clock-frequency = <100000>;
166
167 temp@18 {
168 compatible = "nxp,se97b", "jedec,jc-42.4-temp";
169 reg = <0x18>;
170 smbus-timeout-disable;
171 };
172
173 eeprom@50 {
174 compatible = "nxp,se97b", "atmel,24c02";
175 reg = <0x50>;
176 pagesize = <16>;
177 };
178
179 amp: amplifier@6c {
180 compatible = "nxp,tfa9879";
181 reg = <0x6c>;
182 #sound-dai-cells = <0>;
183 };
184};
185
186&ssc0 {
187 status = "okay";
188
189 atmel,clk-from-rk-pin;
190 #sound-dai-cells = <0>;
191};
192
193&hlcdc {
194 status = "okay";
195
196 hlcdc-display-controller {
197 pinctrl-names = "default";
198 pinctrl-0 = <&pinctrl_lcd_base
199 &pinctrl_lcd_rgb565
200 &pinctrl_lcd_prlud0
201 &pinctrl_lcd_hipow0>;
202
203 port@0 {
204 hlcdc_output: endpoint {
205 remote-endpoint = <&lvds_encoder_input>;
206 };
207 };
208 };
209};
210
211&mmc0 {
212 status = "okay";
213
214 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
215 &pinctrl_mmc0_dat1_3
216 &pinctrl_mmc0_cd>;
217
218 slot@0 {
219 reg = <0>;
220 bus-width = <4>;
221 cd-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
222 };
223};
224
225&usart0 {
226 status = "okay";
227
228 pinctrl-names = "default";
229 pinctrl-0 = <&pinctrl_usart0>;
230 atmel,use-dma-rx;
231};
232
233&nand {
234 partitions {
235 compatible = "fixed-partitions";
236 #address-cells = <1>;
237 #size-cells = <1>;
238
239 at91bootstrap@0 {
240 label = "at91bootstrap";
241 reg = <0x0 0x40000>;
242 };
243
244 barebox@40000 {
245 label = "barebox";
246 reg = <0x40000 0x60000>;
247 };
248
249 bareboxenv@c0000 {
250 label = "bareboxenv";
251 reg = <0xc0000 0x40000>;
252 };
253
254 bareboxenv2@100000 {
255 label = "bareboxenv2";
256 reg = <0x100000 0x40000>;
257 };
258
259 oftree@180000 {
260 label = "oftree";
261 reg = <0x180000 0x20000>;
262 };
263
264 kernel@200000 {
265 label = "kernel";
266 reg = <0x200000 0x500000>;
267 };
268
269 rootfs@800000 {
270 label = "rootfs";
271 reg = <0x800000 0x1f800000>;
272 };
273 };
274};
275
276&dbgu {
277 status = "okay";
278
279 atmel,use-dma-rx;
280};
281
282&usb0 {
283 status = "okay";
284
285 atmel,vbus-gpio = <&pioD 28 GPIO_ACTIVE_HIGH>;
286 pinctrl-names = "default";
287 pinctrl-0 = <&pinctrl_usba_vbus>;
288};