I'm currently trying to get a LCD display to work on a custom imx6dl.
The fsl,mxc_sdc_fb framebuffer driver is definitely compiled and also loads. But the probe function is never called.
/ {
aliases {
mxcfb2 = &mxcfb3;
};
mxcfb3: fb@0 {
compatible = "fsl,mxc_sdc_fb";
disp_dev = "lcd";
interface_pix_fmt = "RGB666";
default_bpp = <18>;
int_clk = <0>;
late_init = <0>;
status = "okey";
};
lcd@0 {
compatible = "fsl,lcd";
ipu_id = <0>;
disp_id = <0>;
default_ifmt = "RGB666";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ipu1>;
status = "okay";
};
....
};
...
&mxcfb3 {
status = "okey";
};
that's what I have in the device tree.
The LCD is at ipu1_di0_disp0.
I also tried booting with
setenv bootargs "video=mxcfb2:dev=lcd,CLAA-WVGA,if=RGB666 console=${console},115200 root=${mmcroot}";
mxc_sdc_fb creates no output in the kernel log at all while fsl,imx6dl-epdc does.
kernel log:
https://paste.debian.net/313932/
I know for sure that it can't be an hwardware issue because the display works in u-boot.
I'm forced to use linux-imx (3.14) because it's part of yocto fido (1.8) and I need meta-qt5 support.
Solved! Go to Solution.
OK so I got it working by removing
default_bpp = <18>;
and adding
mode_str ="MY-DISPLAY";
instead.
I also added the displays settings to lcdif_modedb.
{
/* 320x240 @ 60 Hz , pixel clk @ 6.5MHz */
"MY-DISPLAY", 60, 320, 240, 153846, 68, 20, 18, 4, 1, 1,
0,
FB_VMODE_NONINTERLACED,
0
},}
see also
How do I configure a 320x240 LCD in the Device Tree for i.MX6 Solo?
OK so I got it working by removing
default_bpp = <18>;
and adding
mode_str ="MY-DISPLAY";
instead.
I also added the displays settings to lcdif_modedb.
{
/* 320x240 @ 60 Hz , pixel clk @ 6.5MHz */
"MY-DISPLAY", 60, 320, 240, 153846, 68, 20, 18, 4, 1, 1,
0,
FB_VMODE_NONINTERLACED,
0
},}
see also
How do I configure a 320x240 LCD in the Device Tree for i.MX6 Solo?