Hello, since our imx6qdlsabreauto board doesn't interact with 1920x720 custom monitor (LA123WF4)
Here is what I have been done so far
1) With devshell command, I have modified mxc_hdmi.c / mxc_edid.c / mxc_edid_h / imx6qdl-sabreauto.dtsi in kernel-source
in mxc_hdmi.c
static const struct fb_videomode vga_mode = {
/* 1920x720 @ 60 Hz, 31.5 kHz hsync */
NULL, 60, 1920, 720, 11112, 56, 56, 4, 4, 16, 2,
FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_8_3, 0
};
in mxc_edid.c
/* #48: 1920x720p@60 16:9 */
[48] = {
NULL, 60, 1920, 720, 11112, 56, 56, 4, 4, 16, 2,
FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_8_3, 0
},
in mxc_edid.h
#define FB_VMODE_ASPECT_8_3 0x40
#define FB_VMODE_ASPECT_MASK (FB_VMODE_ASPECT_4_3 | FB_VMODE_ASPECT_16_9 | FB_VMODE_ASPECT_8_3)
in imx6qdl-sabreauto.dtsi
mxcfb1: fb@0 {
compatible = "fsl,mxc_sdc_fb";
disp_dev = "hdmi";
interface_pix_fmt = "RGB24";
mode_str ="1920x720M@60";
default_bpp = <32>;
int_clk = <0>;
late_init = <0>;
status = "okay";
};
2) Compiling all the changes, and building all images including zImage and dts with yocto with below commands
bitbake -C compile virtual/kernel
bitbake fsl-image-multimedia-full
3) in uboot, I have changed
setenv panel Hannstar-XGA
setenv mmcargs 'setenv bootargs console=${console},${baudrate} root=PARTUUID=${uuid} rootwait rw video=mxcfb0:dev=hdmi,1920x720M@60,if=RGB24'
setenv video_args_hdmi 'setenv video_args $video_args video=mxcfb${fb}:dev=hdmi,1920x720M@60,if=RGB24'
But still, it does not work well, the display only gives white screen. And fbset value is like below.
root@imx6qdlsabreauto:~# fbset
mode "1920x720-60"
# D: 89.993 MHz, H: 43.942 kHz, V: 60.194 Hz
geometry 1920 720 1920 720 32
timings 11112 56 56 4 4 16 2
rgba 8/16,8/8,8/0,8/24
endmode
I suspect several possible reasons.
1) Might hdmi_timing is wrong calculated. If it is, I was wondering if you could check it out with https://www.lcdtek.co.uk/img/cms/PDF/LA123WF4-SL01_2017.pdf detail information
2) Might use HDMI_ASPECT_64_27 not FB_VMODE_ASPECT_8_3, **because I already confirmed that the display works well with the raspberry pie 3 board and below command in config.txt**
hdmi_timings=1920 0 0 2 126 720 0 2 2 4 0 0 0 60 0 89456640 8
The last 8 option means HDMI_ASPECT_64_27. So if it is, how can I need to change in mxc_edid.h
#define FB_VMODE_ASPECT_64_27 ????
3) Based on the display T-Con board specifications, its input is DVI input using HDMI cable (TMDS), it might be a problem?
Thanks in advance!
Hi HUN
1920x720 is not listed as supported mode in Table 33-3. Video Modes i.MX6DQ Reference Manual
http://www.nxp.com/docs/en/reference-manual/IMX6DQRM.pdf
One can try solutions described on
HDMI CEA mode - Boundary Devices
i.MX6 HDMI audio - Boundary Devices
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi igor
I think I could narrow down reason why our board does not interact with the display.
After listing our target 1920x720 display information on CEA lists in mxc_edid.c, I am thinking that the reason why our display does not show anything is that the driving board only allows DVI input.
So it might be resolved by 1) changing CEA mode into DMT mode (non CEA, like mxc_hdmi.only_cea=0 in digi-key imx6 board) or 2) using CEA mode without using Audio signal. (it is possible? don't know...)
If you could tell me how to do these possible solutions, it will be so helpful! Thanks!
Hi Hun,
I am doing something similar which is setting a custom HDMI display timing in the Boundary Devices Nitrogen 6 Max board and the BD does not give proper display on my display also. Can you share your method to drive your display?