Skip to content

Commit e28f4ed

Browse files
committed
boards: witte: linum: add display support
By enabling the LTDC controller and attaching it to the zephyr, display node Signed-off-by: Felipe Neves <[email protected]>
1 parent 9354e06 commit e28f4ed

File tree

1 file changed

+101
-45
lines changed

1 file changed

+101
-45
lines changed

boards/witte/linum/linum.dts

Lines changed: 101 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
zephyr,sram = &sram0;
2020
zephyr,flash = &flash0;
2121
zephyr,dtcm = &dtcm;
22+
zephyr,display = &ltdc;
23+
zephyr,touch = &ft5446;
2224
zephyr,code-partition = &slot0_partition;
2325
zephyr,canbus = &fdcan1;
2426
};
@@ -54,6 +56,13 @@
5456
led0 = &green_led;
5557
led1 = &blue_led;
5658
};
59+
60+
lvgl_pointer {
61+
compatible = "zephyr,lvgl-pointer-input";
62+
input = <&ft5446>;
63+
swap-xy;
64+
};
65+
5766
};
5867

5968
&gpiod {
@@ -190,6 +199,12 @@ zephyr_udc0: &usbotg_fs {
190199
pinctrl-names = "default";
191200
status = "okay";
192201
clock-frequency = <I2C_BITRATE_FAST>;
202+
203+
ft5446: ft5446@38 {
204+
compatible = "focaltech,ft5336";
205+
reg = <0x38>;
206+
int-gpios = <&gpioh 9 0>;
207+
};
193208
};
194209

195210
&timers12 {
@@ -265,17 +280,44 @@ zephyr_udc0: &usbotg_fs {
265280
};
266281

267282
&fmc {
268-
pinctrl-0 = <&fmc_nbl0_pe0
269-
&fmc_nbl1_pe1 &fmc_sdclk_pg8 &fmc_sdnwe_pc0 &fmc_sdcke0_pc3_c
270-
&fmc_sdne0_pc2_c &fmc_sdnras_pf11 &fmc_sdncas_pg15
271-
&fmc_a0_pf0 &fmc_a1_pf1 &fmc_a2_pf2 &fmc_a3_pf3 &fmc_a4_pf4
272-
&fmc_a5_pf5 &fmc_a6_pf12 &fmc_a7_pf13 &fmc_a8_pf14
273-
&fmc_a9_pf15 &fmc_a10_pg0 &fmc_a11_pg1
274-
&fmc_a14_pg4 &fmc_a15_pg5 &fmc_d0_pd14 &fmc_d1_pd15
275-
&fmc_d2_pd0 &fmc_d3_pd1 &fmc_d4_pe7 &fmc_d5_pe8 &fmc_d6_pe9
276-
&fmc_d7_pe10 &fmc_d8_pe11 &fmc_d9_pe12 &fmc_d10_pe13
277-
&fmc_d11_pe14 &fmc_d12_pe15 &fmc_d13_pd8 &fmc_d14_pd9
278-
&fmc_d15_pd10>;
283+
pinctrl-0 = <&fmc_a0_pf0
284+
&fmc_a1_pf1
285+
&fmc_a2_pf2
286+
&fmc_a3_pf3
287+
&fmc_a4_pf4
288+
&fmc_a5_pf5
289+
&fmc_a6_pf12
290+
&fmc_a7_pf13
291+
&fmc_a8_pf14
292+
&fmc_a9_pf15
293+
&fmc_a10_pg0
294+
&fmc_a11_pg1
295+
&fmc_a14_pg4
296+
&fmc_a15_pg5
297+
&fmc_d0_pd14
298+
&fmc_d1_pd15
299+
&fmc_d2_pd0
300+
&fmc_d3_pd1
301+
&fmc_d4_pe7
302+
&fmc_d5_pe8
303+
&fmc_d6_pe9
304+
&fmc_d7_pe10
305+
&fmc_d8_pe11
306+
&fmc_d9_pe12
307+
&fmc_d10_pe13
308+
&fmc_d11_pe14
309+
&fmc_d12_pe15
310+
&fmc_d13_pd8
311+
&fmc_d14_pd9
312+
&fmc_d15_pd10
313+
&fmc_nbl0_pe0
314+
&fmc_nbl1_pe1
315+
&fmc_sdcke0_pc3_c
316+
&fmc_sdclk_pg8
317+
&fmc_sdncas_pg15
318+
&fmc_sdne0_pc2_c
319+
&fmc_sdnras_pf11
320+
&fmc_sdnwe_pc0>;
279321
pinctrl-names = "default";
280322
status = "okay";
281323

@@ -284,57 +326,71 @@ zephyr_udc0: &usbotg_fs {
284326
power-up-delay = <100>;
285327
num-auto-refresh = <8>;
286328
mode-register = <0x220>;
287-
refresh-rate = <0x603>;
288-
289-
bank@1 {
290-
reg = <1>;
329+
refresh-rate = <1562>;
330+
bank@0 {
331+
reg = <0>;
291332
st,sdram-control = <STM32_FMC_SDRAM_NC_8
292-
STM32_FMC_SDRAM_NR_12
293-
STM32_FMC_SDRAM_MWID_16
294-
STM32_FMC_SDRAM_NB_4
295-
STM32_FMC_SDRAM_CAS_3
296-
STM32_FMC_SDRAM_SDCLK_PERIOD_2
297-
STM32_FMC_SDRAM_RBURST_ENABLE
298-
STM32_FMC_SDRAM_RPIPE_0>;
299-
st,sdram-timing = <2 7 4 7 2 2 2>;
333+
STM32_FMC_SDRAM_NR_12
334+
STM32_FMC_SDRAM_MWID_16
335+
STM32_FMC_SDRAM_NB_4
336+
STM32_FMC_SDRAM_CAS_2
337+
STM32_FMC_SDRAM_SDCLK_PERIOD_3
338+
STM32_FMC_SDRAM_RBURST_ENABLE
339+
STM32_FMC_SDRAM_RPIPE_0>;
340+
st,sdram-timing = <2 6 4 6 2 2 2>;
300341
};
301342
};
302343
};
303344

304345
&ltdc {
305-
pinctrl-0 = <&ltdc_r0_pi15 &ltdc_r1_pj0 &ltdc_r2_pj1 &ltdc_r3_pj2
306-
&ltdc_r4_pj3 &ltdc_r5_pj4 &ltdc_r6_pj5 &ltdc_r7_pj6
307-
&ltdc_g0_pj7 &ltdc_g1_pj8 &ltdc_g2_pj9 &ltdc_g3_pj10
308-
&ltdc_g4_pj11 &ltdc_g5_pk0 &ltdc_g6_pk1 &ltdc_g7_pk2
309-
&ltdc_b0_pj12 &ltdc_b1_pj13 &ltdc_b2_pj14 &ltdc_b3_pj15
310-
&ltdc_b4_pk3 &ltdc_b5_pk4 &ltdc_b6_pk5 &ltdc_b7_pk6
311-
&ltdc_de_pk7 &ltdc_clk_pi14 &ltdc_hsync_pi10 &ltdc_vsync_pi9>;
346+
pinctrl-0 = <&ltdc_b0_pj12
347+
&ltdc_b1_pj13
348+
&ltdc_b2_pj14
349+
&ltdc_b3_pj15
350+
&ltdc_b4_pk3
351+
&ltdc_b5_pk4
352+
&ltdc_b6_pk5
353+
&ltdc_b7_pk6
354+
&ltdc_r0_pi15
355+
&ltdc_r1_pj0
356+
&ltdc_r2_pj1
357+
&ltdc_r3_pj2
358+
&ltdc_r4_pj3
359+
&ltdc_r5_pj4
360+
&ltdc_r6_pj5
361+
&ltdc_r7_pj6
362+
&ltdc_g0_pj7
363+
&ltdc_g1_pj8
364+
&ltdc_g2_pj9
365+
&ltdc_g3_pj10
366+
&ltdc_g4_pj11
367+
&ltdc_g5_pk0
368+
&ltdc_g6_pk1
369+
&ltdc_g7_pk2
370+
&ltdc_de_pk7
371+
&ltdc_clk_pi14
372+
&ltdc_hsync_pi10
373+
&ltdc_vsync_pi9>;
312374
pinctrl-names = "default";
313-
314-
disp-on-gpios = <&gpiod 7 GPIO_ACTIVE_HIGH>;
315-
375+
disp-on-gpios = <&gpioi 7 GPIO_ACTIVE_HIGH>;
316376
ext-sdram = <&sdram1>;
317377
status = "okay";
318-
319-
clocks = <&rcc STM32_CLOCK(APB3, 3)>,
320-
<&rcc STM32_SRC_PLL3_R NO_SEL>;
321-
322-
width = <480>;
323-
height = <272>;
378+
width = <1024>;
379+
height = <600>;
324380
pixel-format = <PANEL_PIXEL_FORMAT_RGB_565>;
325381

326382
display-timings {
327383
compatible = "zephyr,panel-timing";
328-
de-active = <1>;
384+
de-active = <0>;
329385
pixelclk-active = <0>;
330386
hsync-active = <0>;
331387
vsync-active = <0>;
332388
hsync-len = <1>;
333-
vsync-len = <10>;
334-
hback-porch = <43>;
335-
vback-porch = <12>;
336-
hfront-porch = <8>;
337-
vfront-porch = <4>;
389+
vsync-len = <1>;
390+
hback-porch = <160>;
391+
vback-porch = <23>;
392+
hfront-porch = <160>;
393+
vfront-porch = <12>;
338394
};
339395
def-back-color-red = <0xFF>;
340396
def-back-color-green = <0xFF>;

0 commit comments

Comments
 (0)