We’re trying to use a LCD connected to the Unified Interface Display Connect (X7 on the Viola Rev 1.2 carrier board).
And wanted to initially check that the backlight is working.
Checking the X7 connection details, we can see that…
BL_ON SOIMM Number = 71 –> GPIO3_IO26
PWM_A SOIMM Number = 59 –> PW3_OUT, GPIO2_IO09, GPIO2_IO16
We then created a new overlay file…
colibri-imx6_panel-st7789v-2.8inch_overlay.dts, with the following settings…
(taking the timings from the MIDAS MDT0280A1IHR-MULTI 240x320 display datasheet using the ST7789V Controller IC)
/* Copyright 2023 */
// Enable the parallel RGB interface on the Colibri iMX6DL.
// Make sure to also select a valid display configuration.
/dts-v1/;
/plugin/;
/ {
compatible = "toradex,colibri_imx6dl";
};
&backlight {
pwms = <&pwm3 0 6666667>;
status = "okay";
};
&lcd_display {
status = "okay";
};
&pwm3 {
status = "okay";
};
&panel_dpi {
compatible = "panel-dpi";
status = "okay";
data-mapping = "bgr666";
width-mm = <44>;
height-mm = <58>;
panel-timing {
clock-frequency = <6350000>;
hactive = <240>;
vactive = <320>;
hsync-len = <30>;
hfront-porch = <10>;
hback-porch = <20>;
vsync-len = <22>;
vfront-porch = <4>;
vback-porch = <18>;
};
};
After deploying the overlay and rebooting, the backlight does not show.
Is there a way in which to test BL_ON & PWM just to confirm that is working?
I noticed in your overlay that you considered hsync-len = hfront-porch + hback-porch and vsync-len = vfront-porch + vback-porch, and I don’t think that’s correct value for them, based on the kernel documentation.
hsync-len and vsync-len are the horizontal and vertical sync lengths respectively, and each one should have its own value in the datasheet. From the datasheet you provided they should be (typical values):
hsync-len: 10 DOTCLKs
vsync-len: 2 lines
Try setting these new values to your overlay and see if you can get the display to work.