Hi all,
due to a very slow 320x240 lcd (6,5 MHZ with 24bit parallel) I'm trying to configure LCDIF device to use a 8bits bus wicth.
I changed the dtb as below:
&lcdif1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lcdif_dat
&pinctrl_lcdif_ctrl>;
// lcd-supply = <®_lcd_3v3>;
display = <&display0>;
status = "okay";
display0: display {
bits-per-pixel = <24>;
bus-width = <8>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <19500000>;
hactive = <320>;
vactive = <240>;
hback-porch = <204>;
hfront-porch = <60>;
vback-porch = <18>;
vfront-porch = <4>;
hsync-len = <10>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
};
};
};
};
The problem is that the kernel hangs!!!
I recompiled my kernel with early printk but it prints
Starting kernel...done, booting
But nothing more.
If I change the bus with to 16 or 24 the kernel starts.
What is the problem? What can I do to debug the 8 bit problem?
Hi,
If you look at the driver you will see that the 8 bits mode for LCDIF is not yet supported. You have to modify the driver to have it work for you.
Also, if you are using sources from the yocto distribution, This comment: // lcd-supply = <®_lcd_3v3>;
will make the driver to no working since it will break out of the initial process if the supply is not existed.
To sum up, to support 8 bits mode, modifying the device tree alone won't help much.
Good luck!
Hello LPs,
Would you please share the diff so we can see what changes were made on the file? And also, would you please let us know why did you commented the LCD supply?
Regards,
Gustavo