iMX6DL HDMI need some help

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

iMX6DL HDMI need some help

Jump to solution
1,165 Views
aureliencourrie
Contributor II

Hi,

I'm using a custom board based on iMX6DL and I have some problem to "enable" hdmi video output.

I need to display pictures using HDMI port.

The HDMI port is directly connected an ADV7611 chip to convert HDMI to VGA (customer specific) and I'm in trouble with HDMI side.

I check the signals (HDMI clk, etc...) but nothing happend !

Anybody habe an idea ??

I'm using Linux 3.0.35 (from freescale)

My video Kernel command line is:

video=mxcfb0:dev=hdmi,1920x1080@60,if=RGB24

And in my board specific file I do :

static struct ipuv3_fb_platform_data hdmi_fb[] = {

   {/*fb0*/

   .disp_dev = "hdmi",

   .interface_pix_fmt = IPU_PIX_FMT_RGB24,

   .mode_str = "1920x1080@60",

   .default_bpp = 32,

   .int_clk = false,

   },

};

static void hdmi_init(int ipu_id, int disp_id) {

   if ((unsigned)ipu_id > 1) ipu_id = 0;

   if ((unsigned)disp_id > 1) disp_id = 0;

   mxc_iomux_set_gpr_register(3, 2, 2, 2*ipu_id + disp_id);

}

static struct fsl_mxc_hdmi_platform_data hdmi_data = {

   .init = hdmi_init,

};

static struct fsl_mxc_hdmi_core_platform_data hdmi_core_data = {

   .ipu_id  = 0,

   .disp_id = 0,

};

static struct imx_ipuv3_platform_data ipu_data[] = {

   {

   .rev = 4,

   .csi_clk[0] = "clko_clk",

   .bypass_reset = false,

   }, {

   .rev = 4,

   .csi_clk[0] = "clko_clk",

   .bypass_reset = false,

   },

};

And for the hdmi init I do

imx6q_add_mxc_hdmi_core(&hdmi_core_data);

imx6q_add_ipuv3(0, &ipu_data[0]);

imx6q_add_ipuv3fb(0, &hdmi_fb[0]);

imx6q_add_vdoa();

imx6q_add_v4l2_output(0);

imx6q_add_mxc_hdmi(&hdmi_data);

imx6q_add_vpu();

imx6q_add_dma();


My kernel debug trace :


[..]

[    2.005275] mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi

[    2.017397] mxc_hdmi mxc_hdmi: Detected HDMI controller 0x13:0x1a:0xa0:0xc1

[    2.044756] ipu_init_sync_panel: disp=0, pixel_clk=148500000 148500000

[    2.060485] imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)

[    2.094466] ipu_init_sync_panel: disp=0, pixel_clk=148500000 148500000

Labels (2)
0 Kudos
1 Solution
587 Views
aureliencourrie
Contributor II

Thanks for your reply.

I've resolve the problem.

This was due to an non connected PIN on the ADV7611 (the pin which detect if "the cable" is present or not...)

By disabling the cable detection (in the ADV7611) this work perfectly :-)

View solution in original post

0 Kudos
2 Replies
587 Views
CarlosCasillas
NXP Employee
NXP Employee

Hi Aurelin,

Have you verified if the HDMI output is working properly before connecting it to the HDMI-to-VGA converter (for example, connecting a HDMI monitor)?

In case of the SABRE-SD board, if you want to enable the HDMI monitor instead of the LVDS display, you could try the following: On the U-Boot command line:

editenv mmcargs

Add the following to the end of the mmcargs variable:

video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24

saveenv

boot

You have to ensure that you added the mentioned command at the end of the mmcargs value, so, if you print the mmcargs values (command printenv mmcargs), it should be like following:

setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot} video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24


Hope this will be useful for you.
Best regards!
/Carlos

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
588 Views
aureliencourrie
Contributor II

Thanks for your reply.

I've resolve the problem.

This was due to an non connected PIN on the ADV7611 (the pin which detect if "the cable" is present or not...)

By disabling the cable detection (in the ADV7611) this work perfectly :-)

0 Kudos