How to enable HDMI for IMX6?

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

How to enable HDMI for IMX6?

4,805 Views
yitang
Contributor I

HI fsl, We need to use the HDMI interface. How can we enable HDMI?The following is a schematic diagram of HDMI:

imx6.png

My system is Android 7.0

Labels (4)
0 Kudos
Reply
5 Replies

3,480 Views
igorpadykov
NXP Employee
NXP Employee

Hi yi

for using hdmi please follow i.MX6Q Sabre SD schematic:

 Schematics (1)
 Design files, including hardware schematics, Gerbers, and OrCAD files.
SABRE Platform for Smart Devices|NXP 

and use software on below link:

https://www.nxp.com/support/developer-resources/run-time-software/i.mx-developer-resources/i.mx-6ser...

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

0 Kudos
Reply

3,480 Views
yitang
Contributor I

when set the kernel command line:

 1.video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:dev=ldb,bpp=32,if=RGB24,fbpix=RGB32 video=mxcfb2:off

   hdmi is output,but lvds is disabled

2.video=mxcfb0:dev=ldb,bpp=32,if=RGB24,fbpix=RGB32 video=mxcfb1:dev=hdmi,1920x1080M@60,bpp=32,if=RGB24,

   lvds is output, but hdmi is disabled

now, in my project, we hope lvds and hdmi is also output to the same image, how to config?

0 Kudos
Reply

3,480 Views
igorpadykov
NXP Employee
NXP Employee

please try with Demo Images from

i.MX Software|NXP 

dual lcds usage is described in p.26  "Specifying displays" i.MX_Linux_User's_Guide.pdf

included in

https://www.nxp.com/webapp/Download?colCode=L4.1.15_2.0.0-LINUX-DOCS&Parent_nodeId=13376994810717061... 

Best regards
igor

0 Kudos
Reply

3,480 Views
yitang
Contributor I

I used LVDS + HDMI for display,

the kernel CMD is :Kernel command line: console=ttymxc3,115200 init=/init video=mxcfb0:dev=ldb,bpp=32,if=RGB24,fbpix=RGB32 video=mxcfb1:dev=hdmi,1920x1080M@60,bpp=32 video=mxcfb2:off vmalloc=400M androidboot.console=ttymxc3 consoleblank=0 androidboot.hardware=freescale cma=448M androidboot.selinux=permissive androidboot.dm_verity=disabled loglevel=8 buildvariant=eng
lcd_manufac = desaysv

0 Kudos
Reply

3,480 Views
yitang
Contributor I

I'm not sure if HDMI CLK has output,please check my DTS, thank you!

arch/arm/boot/dts/imx6qdl.dtsi:

        hdmi_core: hdmi_core@00120000 {
            compatible = "fsl,imx6q-hdmi-core";
            reg = <0x00120000 0x9000>;
            clocks = <&clks IMX6QDL_CLK_HDMI_ISFR>,
                    <&clks IMX6QDL_CLK_HDMI_IAHB>,
                    <&clks IMX6QDL_CLK_HSI_TX>;
            clock-names = "hdmi_isfr", "hdmi_iahb", "mipi_core";
            status = "disabled";
        };

        hdmi_video: hdmi_video@020e0000 {
            compatible = "fsl,imx6q-hdmi-video";
            reg = <0x020e0000 0x1000>;
            reg-names = "hdmi_gpr";
            interrupts = <0 115 IRQ_TYPE_LEVEL_HIGH>;
            clocks = <&clks IMX6QDL_CLK_HDMI_ISFR>,
                    <&clks IMX6QDL_CLK_HDMI_IAHB>,
                    <&clks IMX6QDL_CLK_HSI_TX>;
            clock-names = "hdmi_isfr", "hdmi_iahb", "mipi_core";
            status = "disabled";
        };

        hdmi_audio: hdmi_audio@00120000 {
            compatible = "fsl,imx6q-hdmi-audio";
            clocks = <&clks IMX6QDL_CLK_HDMI_ISFR>,
                    <&clks IMX6QDL_CLK_HDMI_IAHB>,
                    <&clks IMX6QDL_CLK_HSI_TX>;
            clock-names = "hdmi_isfr", "hdmi_iahb", "mipi_core";
            dmas = <&sdma 2 25 0>;
            dma-names = "tx";
            status = "disabled";
        };

        hdmi_cec: hdmi_cec@00120000 {
            compatible = "fsl,imx6q-hdmi-cec";
            interrupts = <0 115 IRQ_TYPE_LEVEL_HIGH>;
            status = "disabled";
        };

arch/arm/boot/dts/imx6qdl-sabresd.dtsi:

aliases {
        mxcfb0 = &mxcfb1;
        mxcfb1 = &mxcfb2;
    };

    mxcfb1: fb@0 {
        compatible = "fsl,mxc_sdc_fb";
        disp_dev = "ldb";
        interface_pix_fmt = "RGB666";
        default_bpp = <16>;
        int_clk = <0>;
        late_init = <0>;
        status = "okay";
    };

    mxcfb2: fb@1 {
        compatible = "fsl,mxc_sdc_fb";
        disp_dev = "hdmi";
        interface_pix_fmt = "RGB24";
        mode_str ="1920x1080M@60";
        default_bpp = <24>;
        int_clk = <0>;
        late_init = <0>;
        status = "okay";
    };

&hdmi_cec {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_hdmi_cec>;
    status = "okay";
};

&hdmi_core {
    ipu_id = <0>;
    disp_id = <0>;
    status = "okay";
};

&hdmi_video {
    fsl,phy_reg_vlev = <0x0294>;
    fsl,phy_reg_cksymtx = <0x800d>;
    HDMI-supply = <&reg_hdmi>;
    status = "okay";
};

hdmi: edid@50 {
        compatible = "fsl,imx6-hdmi-i2c";
        reg = <0x50>;
    };

pinctrl_hdmi_cec: hdmicecgrp {
            fsl,pins = <
                MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x108b0
            >;
        };

        pinctrl_hdmi_hdcp: hdmihdcpgrp {
            fsl,pins = <
                MX6QDL_PAD_KEY_COL3__HDMI_TX_DDC_SCL 0x4001b8b1
                MX6QDL_PAD_KEY_ROW3__HDMI_TX_DDC_SDA 0x4001b8b1
            >;
        };

Please help check the above DTS configuration,thank you!

0 Kudos
Reply