No display on HDMI Panel

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

No display on HDMI Panel

Jump to solution
14,360 Views
anilkumar
Contributor III

Hi All,

I am working on customer imx6q board and getting issue with HDMI.

I am getting HDMI panel detection kernel log but no display on HDMI panel.

I am using rootfs which i have created by busybox.

So my question, Is there any need of "mxc hdmi cec" lib or application in user space to enable HDMI in kernel ?

or HDMI display should start by default ?

Kernel Logs:---------------------------------

mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi

mxc_hdmi mxc_hdmi: Detected HDMI controller 0x13:0xa:0xa0:0xc1

fbcvt: 1920x1080@60: CVT Name - 2.073M9

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

mxc_sdc_fb mxc_sdc_fb.1: Can't get fb option for mxcfb1!

mxc_sdc_fb mxc_sdc_fb.2: Can't get fb option for mxcfb2!

mxc_sdc_fb mxc_sdc_fb.3: Can't get fb option for mxcfb3!

imx-sdma imx-sdma: loaded firmware 1.1

imx-sdma imx-sdma: initialized

mxc_hdmi mxc_hdmi: mxc_hdmi_set_mode: setting to default=1920x1080M@60 bpp=16

fbcvt: 1920x1080@60: CVT Name - 2.073M9

mxc_hdmi mxc_hdmi: mxc_hdmi_set_mode: New video mode

Serial: IMX driver

imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX

imx-uart.1: ttymxc1 at MMIO 0x21e8000 (irq = 59) is a IMX

console [ttymxc1] enabled, bootconsole disabled

console [ttymxc1] enabled, bootconsole disabled

loop: module loaded


Labels (4)
0 Kudos
Reply
1 Solution
5,269 Views
anilkumar
Contributor III

Hi Jimmychan,

I have just found that:-

TMDS data/clk lines from imx6 should be directly connected to HDMI port and Corresponding TMDS data/clk lines of CM2020 should be connected with imx6 HDMI TMDS data lines to provide ESD protection etc as below schematic

CM2020.png

Take one example TDMI_D1+ from imx6 is connected to pin 7, then pin 32 of CM2020 and then connected to HDMI Port. Sabre SD board do like that.

But in my board TDMI_D1+ from imx6 is connected to pin 7 of CM2020 only and pin 32 of CM2020 is connected to HDMI Port. Means there is no connection from pin 7 to pin 32.

Means TDMI data/clk lines from imx6 are not connected to HDMI port so there will be no HDMI data display. 

Am I right in this case? Could you please verify?

You can find data sheet of CM2020 from link. Sabre Sd use same Chip.

http://www.onsemi.com/pub_link/Collateral/CM2020-01TR-D.PDF

View solution in original post

0 Kudos
Reply
24 Replies
4,796 Views
anilkumar
Contributor III

I have some observation

1) HDMI display is working fine with sabre-sd and sabre-lite with my kernel but not on my board (My board HDMI hw is   based on sabre-sd hw but missing 100om resistance and 0.1uF capacitor for  SHELL1, SHELL2, SHELL3 and SHELL4 are there to give ground)

2) I disabled pad mux for CEC line and I2C and in this case sabre-sd board works for HDMI display fine also

       a) Means now HDMI depends on HDMI TMDS data only.

3) I have checked in sabre-sd board there are 100om resistance and 0.1uF capacitor for  SHELL1, SHELL2, SHELL3 and SHELL4 are there to give ground (not sure why this is for ) ?. this hw thing is not in my board. Is it may effect ?

4) TDMS_GND of CM2020 are internally connected with ground but these are externally ground also for sabre-sd baord. is it may effect ?

 

5) HDMI TMDS pins are dedicated to HDMI display only and there is no need of pin mux as these pins are by default configured ?

6) Is this possible HDMI display can work with HDMI TMDS data lines only , no CEC line and no I2C lines as it is working on sabre-sd case ? (Means i just changed the pin mux for CEC and I2C lines).

Sorry if any query is not clear.

0 Kudos
Reply
4,796 Views
daonamthai
Contributor I

Hi Anil Kumar

Please confirm this point

6) Is this possible HDMI display can work with HDMI TMDS data lines only , no CEC line and no I2C lines as it is working on sabre-sd case ? (Means i just changed the pin mux for CEC and I2C lines).

I guessed, it worked well without CEC and I2C line.

0 Kudos
Reply
4,796 Views
jimmychan
NXP TechSupport
NXP TechSupport

From the SDP schematic (SPF-27392_C3.pdf), there is HDMI_HPD and HDMI_CEC_IN. When you plug the HDMI cable, please check the status of these two pins. What is the voltage of HDMI_HPD?

The voltage level of HDMI_CEC_IN should be changed. it will trigger the interrupt and then the HDMI signal will be came out.

It is better to add the 100om resistance and 0.1uF capacitor as they are the circuit protection between chassis and digital GND if there may has any improper voltage input when connecting the cable or touching the SHELL.

0 Kudos
Reply
5,270 Views
anilkumar
Contributor III

Hi Jimmychan,

I have just found that:-

TMDS data/clk lines from imx6 should be directly connected to HDMI port and Corresponding TMDS data/clk lines of CM2020 should be connected with imx6 HDMI TMDS data lines to provide ESD protection etc as below schematic

CM2020.png

Take one example TDMI_D1+ from imx6 is connected to pin 7, then pin 32 of CM2020 and then connected to HDMI Port. Sabre SD board do like that.

But in my board TDMI_D1+ from imx6 is connected to pin 7 of CM2020 only and pin 32 of CM2020 is connected to HDMI Port. Means there is no connection from pin 7 to pin 32.

Means TDMI data/clk lines from imx6 are not connected to HDMI port so there will be no HDMI data display. 

Am I right in this case? Could you please verify?

You can find data sheet of CM2020 from link. Sabre Sd use same Chip.

http://www.onsemi.com/pub_link/Collateral/CM2020-01TR-D.PDF

0 Kudos
Reply
4,796 Views
anilkumar
Contributor III

Hi All,

HDMI Display issue has fixed. Issue was in HW as i posted in my last comment. Done correction in CM2020 HW layout as it data sheets say.

Thanks all of you

Anil

0 Kudos
Reply
4,797 Views
karina_valencia
NXP Apps Support
NXP Apps Support

jimmychan can you continue the follow up on this case?

0 Kudos
Reply
4,796 Views
LucasDonaiSfalc
Contributor II

Checked resolution hdmi u-boot?

My configuration u-boot is:

vid_dev0=hdmi,1280x960M@75,if=RGB24

0 Kudos
Reply
4,796 Views
anilkumar
Contributor III

i passing it by boot arg as

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


0 Kudos
Reply
4,796 Views
LucasDonaiSfalc
Contributor II

Hi, tryed others resolutions?

Example:


     setenv vid_dev0 hdmi,1920x1080P@60,if=RGB24

     setenv vid_dev0 hdmi,1920x1080p@60,if=RGB24

     setenv vid_dev0 hdmi,1920x1080i@75,if=RGB24

     setenv vid_dev0 hdmi,1920x1080i@60,if=RGB24

     setenv vid_dev0 hdmi,1920x1080M@75,if=RGB24

Remeber... execute saveenv to change resolution and reboot. :-)

0 Kudos
Reply
4,796 Views
karina_valencia
NXP Apps Support
NXP Apps Support

No update from customer

0 Kudos
Reply
4,796 Views
jimmychan
NXP TechSupport
NXP TechSupport

have you check the cec signal?

are you using different type of hdmi connector?

have you try it on other hdmi display?

0 Kudos
Reply
4,796 Views
anilkumar
Contributor III

CEC signal is required ? I thing this signal is used to control multiple HDMI display.

and no need to implement but hw must be there for CEC 

0 Kudos
Reply
4,796 Views
anilkumar
Contributor III

i tried already

'echo 0 > /sys/class/graphics/fb0/blank'

No result.

i am suspecting on cec driver in kernel because it need control by cec lib and cec application in user space to enable HDMI thing but i do not have cec lib and cec application in user space. Is it may be the issue ?

0 Kudos
Reply
4,797 Views
ivankozic
Contributor IV

I don't think you need anything in user space for it, as my HDMI monitor fires up while kernel is still booting - right after the driver is loaded. And loading looks pretty much the same like yours.
I would also edit config files and kill all the unused framebuffers, as you've already disabled the output to them in u-boot. But this is unlikely to help. Maybe you have a HW fault - The TMDS lines are auto-sensing, so in general hot-plug means nothing for detection - TMDS lines should sense the proper termination impedance on their ends. Otherwise HDMI will not fire up even if there is a valid hotplug.

0 Kudos
Reply
4,797 Views
anilkumar
Contributor III

are you booting with android fs ?

0 Kudos
Reply
4,797 Views
ivankozic
Contributor IV

No, just bare linux.

0 Kudos
Reply
4,797 Views
anilkumar
Contributor III

yes it is custom board and using HDMI protection IC CM2020 as like sabre sd

0 Kudos
Reply
4,797 Views
ivankozic
Contributor IV

Hmm... I see from the datasheet that TMDS lines are just clamped and go through - the level shifting is done only for control signals. Which means that this cannot be culprit.
If there's no more circuitry in path of TMDS lines, that means they are properly terminated at the other end. I would try the following. When system boots up, try executing 'echo 0 > /sys/class/graphics/fb0/blank'. Maybe it's blanked for some reason.

0 Kudos
Reply
4,797 Views
anilkumar
Contributor III

Yes plugging/unplugging HDMI cable is working fine and getting EDID data also

0 Kudos
Reply
4,797 Views
ivankozic
Contributor IV

Ok, EDID works over i2c, it has nothing to do with hi-speed stuff. Is this a custom board? Do you maybe have some level shifters or similar on TMDS lines?

0 Kudos
Reply