This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM814x HDMI not starting

Other Parts Discussed in Thread: TPD12S521

As base software we use sdk-5.03.01.15

Dear All,

on our custom DM814x platform we are trying to enable HDMI output without success.

I've customized HDMI driver (linux/drivers/video/ti81xx/ti81xxhdmi/hdmi.c, as base software we use sdk-5.03.01.15) to enable debug output and show color bars on screen but I don't see any activity on HDMI pin pairs (e.g. HDMI_CLKP and HDMI_CLKN)

By looking at dmesg output I can see that HDMI clocks should be enabled (we are using the standard 1080p timing):

[   47.480000] TI81XXHDMI  : Interface is 1 [0:DVI, 1:HDMI]
[   47.490000] hdmi: Enter HDMI_W1_GlobalInitVars()
[   47.830000] hdmi: Enter HDMI_Core_GlobalInitVars()
[   47.940000] hdmi: Enter HDMI_W1_ConfigVideoResolutionTiming()
[   47.940000] hdmi: Enter HDMI_W1_ConfigVideoInterface()
[   47.950000] hdmi: HDMI_WP_AUDIO_CFG = 0x1030006
[   47.950000] hdmi: HDMI_WP_AUDIO_CFG2 = 0x20c0
[   47.960000] hdmi: HDMI_WP_AUDIO_CTRL = 0x20
[   47.960000] hdmi: Enter DSS_HDMI_CORE_SW_RESET_ASSERT ()
[   47.970000] hdmi: Enter DSS_HDMI_CORE_POWER_DOWN_DISABLE()
[   47.970000] hdmi: Enter DSS_HDMI_CORE_SW_RESET_RELEASE()
[   47.980000] TI81XXHDMI  : Venc 'stest' bit ON, for the test color bars
[   47.990000] hdmi: Enter HDMI_W1_StartVideoFrame  ()
[   47.990000] TI81XXHDMI  : hdmi_init 1222

EDID data from the HDMI display is also readed correctly:

root@dm814x-evm:~# cat /sys/devices/platform/vpss/display0/edid
found best resolution: 1920x1080 (28)
Extension block present db 2 2e
84
Extension block present db 1 2e
84
Extension block present db 3 2e
84
Extension block present db 3 2e
84
           EDID Information

      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
-----------------------------------------------------
0000: 00 ff ff ff ff ff ff 00 52 62 0a 01 01 01 01 01
0010: 00 14 01 03 80 a0 5a 78 0a 0d c9 a0 57 47 98 27
0020: 12 48 4c 2f cf 00 81 80 01 01 01 01 01 01 01 01
0030: 01 01 01 01 01 01 02 3a 80 d0 72 38 2d 40 10 2c
0040: 45 80 40 84 63 00 00 1e 66 21 50 b0 51 00 1b 30
0050: 40 70 36 00 3a 84 63 00 00 1e 00 00 00 fc 00 54
0060: 4f 53 48 49 42 41 2d 54 56 0a 20 20 00 00 00 fd
0070: 00 17 4c 0f 51 0f 00 0a 20 20 20 20 20 20 01 b7
0080: 02 03 2e 71 52 9f 14 13 12 16 11 15 10 05 04 03
0090: 07 02 06 01 20 21 22 26 09 07 07 15 07 c0 6c 03
00a0: 0c 00 20 00 38 2d cf 29 29 3d 3d e2 00 7f 01 1d
00b0: 80 d0 72 1c 16 20 10 2c 25 80 40 84 63 00 00 9e
00c0: 8c 0a d0 90 20 40 31 20 0c 40 55 00 b0 84 43 00
00d0: 00 18 0e 1f 00 80 51 00 1e 30 40 80 37 00 dc 84
00e0: 53 00 00 1c a9 1a 00 a0 50 00 16 30 30 20 37 00
00f0: dc 84 53 00 00 1a 00 00 00 00 00 00 00 00 00 44
root@dm814x-evm:~#

What should be wrong at this point?

Thanks in advance for any advice

Andrea

格浴浸湬㩳潴扭祯∽瑨灴⼺戯慥湴歩潳瑦慷敲挮浯琯浯潢≹砠汭獮猺穩㵥栢瑴㩰⼯敢瑡楮獫景睴牡⹥潣⽭潴扭祯猯穩≥砠汭獮氺湩㵫栢瑴㩰⼯敢瑡楮獫景睴牡⹥潣⽭潴扭祯氯湩≫㰾潢祤爾潯䁴浤ㄸ破攭浶縺‣慣⁴愼猠祴敬∽潣潬㩲㌣㘴䄵∴栠敲㵦⼢祳⽳敤楶散⽳汰瑡潦浲瘯獰⽳楤灳慬べ支楤≤⼾祳⽳敤楶散⽳汰瑡潦浲瘯獰⽳楤灳慬べ支楤㱤愯㰾牢显畯摮戠獥⁴敲潳畬楴湯›㤱〲ㅸ㠰‰㈨⤸戼㹲硅整獮潩汢捯牰獥湥⁴扤㈠㈠㱥牢㠾㰴牢䔾瑸湥楳湯戠潬正瀠敲敳瑮搠⁢‱攲戼㹲㐸戼㹲硅整獮潩汢捯牰獥湥⁴扤㌠㈠㱥牢㠾㰴牢䔾瑸湥楳湯戠潬正瀠敲敳瑮搠⁢″攲戼㹲㐸戼㹲†††††䔠䥄⁄湉潦浲瑡潩㱮牢㰾牢‾††〠‰㄰〠′㌰〠‴㔰〠‶㜰〠‸㤰〠⁁䈰〠⁃䐰〠⁅䘰戼㹲ⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭⴭ㰭牢〾〰㨰〠‰晦映⁦晦映⁦晦映⁦〰㔠′㈶〠⁡㄰〠‱㄰〠‱㄰戼㹲〰〱›〰ㄠ‴㄰〠″〸愠‰愵㜠‸愰〠⁤㥣愠‰㜵㐠‷㠹㈠㰷牢〾㈰㨰ㄠ′㠴㐠⁣昲挠⁦〰㠠‱〸〠‱㄰〠‱㄰〠‱㄰〠‱㄰戼㹲〰〳›㄰〠‱㄰〠‱㄰〠‱㈰㌠⁡〸搠‰㈷㌠‸搲㐠‰〱㈠㱣牢〾㐰㨰㐠‵〸㐠‰㐸㘠″〰〠‰攱㘠‶ㄲ㔠‰ぢ㔠‱〰ㄠ⁢〳戼㹲〰〵›〴㜠‰㘳〠‰愳㠠‴㌶〠‰〰ㄠ⁥〰〠‰〰映⁣〰㔠㰴牢〾㘰㨰㐠⁦㌵㐠‸㤴㐠′ㄴ㈠⁤㐵㔠‶愰㈠‰〲〠‰〰〠‰摦戼㹲〰〷›〰ㄠ‷挴〠⁦ㄵ〠⁦〰〠⁡〲㈠‰〲㈠‰〲㈠‰㄰戠㰷牢〾㠰㨰〠′㌰㈠⁥ㄷ㔠′昹ㄠ‴㌱ㄠ′㘱ㄠ‱㔱ㄠ‰㔰〠‴㌰戼㹲〰〹›㜰〠′㘰〠‱〲㈠‱㈲㈠‶㤰〠‷㜰ㄠ‵㜰挠‰挶〠㰳牢〾愰㨰〠⁣〰㈠‰〰㌠‸搲挠⁦㤲㈠‹搳㌠⁤㉥〠‰昷〠‱搱戼㹲〰ぢ›〸搠‰㈷ㄠ⁣㘱㈠‰〱㈠⁣㔲㠠‰〴㠠‴㌶〠‰〰㤠㱥牢〾挰㨰㠠⁣愰搠‰〹㈠‰〴㌠‱〲〠⁣〴㔠‵〰戠‰㐸㐠″〰戼㹲〰つ›〰ㄠ‸攰ㄠ⁦〰㠠‰ㄵ〠‰攱㌠‰〴㠠‰㜳〠‰捤㠠㰴牢〾攰㨰㔠″〰〠‰挱愠‹愱〠‰ち㔠‰〰ㄠ‶〳㌠‰〲㌠‷〰戼㹲〰て›捤㠠‴㌵〠‰〰ㄠ⁡〰〠‰〰〠‰〰〠‰〰〠‰〰㐠㰴牢爾潯䁴浤ㄸ破攭浶縺㰣戯摯㹹⼼瑨汭>
  • Andrea,

    why did you want to change HDMI Driver? Please do not do this since the changes you made could break the function.

    you can assign debug=1 when load ti81xxhdmi.ko to enable debug. as for the color bar test, if your TV can pick up the signal,for example 1920x1080P60,then HDMi is working.

    why did you want to see the colorbar?

    Please used the pre-built Kernel modules, after loading the HDMI driver, your TV should Detect the 1080P60 signal.

    follow the below link to load kernel modules.

    http://processors.wiki.ti.com/index.php/DM814X_AM387X_VPSS_Video_Driver_User_Guide#Load_VPSS.2C_Fbdev.2C_and_V4L2_Display_Driver_Modules

    Regards,

     

    yihe

  • Hi Yihe,

    I need to run a custom kernel and to change HDMI driver because I'm working on a custom platform.

    Inside the HDMI driver there's the DDC IOMUX configuration that's not correct for my board. About the color bar, I can revert the change easily and give it a try.

    BTW, I'm working with this git://arago-project.org/git/projects/linux-omap3.git kernel sources (a git repo for us is easier to manage than a plain source tree), starting from tag OMAPPSP_04.02.00.07 (created on 03/01/2012).

    AFAIK, the git repo from arago-project is the source for PSP/SDK releases. Am I wrong? Do I have to start from another source tree?

    Thanks in advance and best regard,

    Andrea

  • We ran into similar issues with a 8148 based board. All software appeared to be configured properly for HDMI output, and ran properly on the 387x EVM, but failed to function on the custom board. We could also read EDID information from an HDMI connect monitor, but never transmit data or get the monitor to sync.

    We were able to read the BIST_CNTL register on the HDMI phy and got different results for the reserved/undocumented bits as compared to the 387x EVM.  This led us to examine the hardware in more detail.  In our case, the TPD12S521 port protection chip requires board traces connecting the HDMI core and connector side of each data and clock pin, which were on the EVM schematic but not our custom board.

    There didn't seem to be any indication in software that the PHY had failed any test and wasn't transmitting.  There's a chance you're seeing a similar issue where the PHY won't transmit if something isn't wired up correctly.

  • Yes Nick, you're right

    In our board we forget to connect the data/clock pin pairs.

    Thanks for the clue and best regards,

    Andrea