HDMI not detected on custom board nothing changed display port is not connected that's all

Here is output from command

sudo dmesg | grep tegradc

[ 1.020560] tegradccommon 15200000.display-hub: Nvhost Channel map failed
[ 6.819250] tegradccommon 15200000.display-hub: host1x channel mapped
[ 6.819504] tegradccommon 15200000.display-hub: dc_common syncpt # 1 allocated
[ 6.820509] tegradccommon 15200000.display-hub: dma mapping done
[ 6.821222] tegradc 15200000.display: Adding to iommu group 26
[ 6.823403] tegradc 15210000.display: Adding to iommu group 26
[ 6.825156] tegradc 15210000.display: disp0 connected to head1->sor
[ 6.836397] tegradc 15210000.display: parse_dp_settings: No dp-lt-settings node
[ 6.847752] tegradc 15210000.display: DT parsed successfully
[ 6.857550] tegradc 15210000.display: dc.1 probe not in device tree order, deferring
[ 6.858794] tegradc 15200000.display: disp0 connected to head0->sor1
[ 6.883789] tegradc 15200000.display: DT parsed successfully
[ 6.898129] tegradc 15200000.display: Display dc.(ptrval) registered with id=0
[ 6.918959] tegradc 15200000.display: vblank syncpt # 8 for dc 0
[ 6.930773] tegradc 15200000.display: vpulse3 syncpt # 9 for dc 0
[ 6.935121] tegradc 15200000.display: hdmi: can’t get adpater for ddc bus 3
[ 6.948221] tegradc 15200000.display: out->type:1 out_ops->init err = -517
[ 7.244501] tegradc 15210000.display: disp0 connected to head1->sor
[ 7.244717] tegradc 15210000.display: parse_dp_settings: No dp-lt-settings node
[ 7.245035] tegradc 15210000.display: DT parsed successfully
[ 7.245556] tegradc 15210000.display: dc.1 probe not in device tree order, deferring
[ 7.253753] tegradc 15200000.display: disp0 connected to head0->sor1
[ 7.278132] tegradc 15200000.display: DT parsed successfully
[ 7.290365] tegradc 15200000.display: Display dc.(ptrval) registered with id=0
[ 7.330701] tegradc 15200000.display: vblank syncpt # 11 for dc 0
[ 7.347067] tegradc 15200000.display: vpulse3 syncpt # 12 for dc 0
[ 7.348578] tegradc 15200000.display: hdmi: invalid prod list prod_list_hdmi_board
[ 7.377220] tegradc 15200000.display: hdmi: tegra_hdmi_tmds_range_read(bd) failed
[ 7.427113] tegradc 15200000.display: probed
[ 7.433878] tegradc 15200000.display: fb registered
[ 7.445123] tegradc 15210000.display: disp1 connected to head1->sor
[ 7.450778] tegradc 15210000.display: parse_dp_settings: No dp-lt-settings node
[ 7.458201] tegradc 15210000.display: DT parsed successfully
[ 7.464116] tegradc 15210000.display: Display dc.(ptrval) registered with id=1
[ 7.472100] tegradc 15210000.display: vblank syncpt # 13 for dc 1
[ 7.478252] tegradc 15210000.display: vpulse3 syncpt # 14 for dc 1
[ 7.493423] tegradc 15210000.display: probed
[ 7.504337] tegradc 15210000.display: fb registered
[ 7.569968] tegradc 15210000.display: blank - powerdown
[ 24.502793] tegradc 15200000.display: blank - powerdown
[ 24.502813] tegradc 15210000.display: blank - powerdown
[ 2681.838345] tegradc 15210000.display: dp: HPD is not detected
[ 2681.838706] tegradc 15210000.display: dp: HPD is not detected
[ 2681.839261] tegradc 15210000.display: dp: Failed for I2C read addr:0, size:0, stat:0x0
[ 2690.123536] tegradc 15210000.display: dp: HPD is not detected
[ 2690.123855] tegradc 15210000.display: dp: HPD is not detected
[ 2690.124006] tegradc 15210000.display: dp: Failed for I2C read addr:0, size:0, stat:0x0

i have verified SDA, SCL of hdmi connecting i2c monitor of ardiuno as a master device and oscilloscope. the monitor exchanges data and shows waveform.

but when I disconnect ardiuno and just connected it to my carrier board no data exchange happens and I don’t see any waveforms on the oscilloscope.

why is that? I have checked continuity from HDMI to processor board for SCL and SDA lines by checking for shorting on the lines.

i might be missing something here. is there a possibility that ground is not configured properly for the I2C lines of HDMI?

i have checked and rechecked for the gnd pins continuity but no improvements.

Please clarify how is your hardware connection and also share the full dmesg.

You don’t need to parse anything to us. The full log is always the best.

I feel you didn’t know you need to modify the device tree setting. I only see you trying to enable a HDMI when your driver is totally in DP mode.

this is totally true. i read the datasheet. it is mentioned that pin 96 is either DP or HDMI hotplug.
as per my schematic, HDMI is on DP1 and DP0 is left as GPIO for future development.

i am more of a hardware engineer trying to get hold of this driver issues. PFA, Dts and dmesg files.

How can we change from DP mode to HDMI mode?

dmesg_carrier_board.txt (58.2 KB)
devicetree.zip (55.3 KB)

What I saw is DP1 (SOR1) which is HDMI mode from your log.

Just to clarify in case you don’t understand the log.

There are two software controller here.

tegradc 15200000
&
tegradc 15210000

These two controls two display heads separately and won’t affect each other.

with these log

[ 6.779482] tegradc 15200000.display: disp0 connected to head0->sor1
[ 6.913680] tegradc 15210000.display: disp0 connected to head1->sor

We know that 15200000 is on SOR1 which is hardware pin DP1.
and 15210000 is for SOR which is hardware pin DP0.

Thus, as your DP0 has nothing connected, you don’t need to care about anything from that. You should disable the status of it from device tree.

As for the HDMI, 15200000 is already in HDMI mode.

tegradc 15200000.display: hdmi

But it seems there is no response and log didn’t print anything out later.

[ 28.228588] tegradc 15200000.display: blank - powerdown

This is a typical case that your hotplug pin for it is probably not set correctly.

Okay. How can I set my hotplug pin for this ?
Can you guide the steps required

What gpio in use for your hotplug pin in your design?

@WayneWWW Pin number 96 is the gpio used in the design

And the Hot plug pin gives 1.73 V after level shifting from 5V on the board.

The gpio pinout from the xavier is attached, it shows

 gpio-411 (PM.01               |hdmi2.0_hpd         ) in  hi IRQ

PFA the GPIO file
gpio.txt (7.3 KB)

When you hotplug the HDMI cable, will you see the state got toggled?

No the state doesn’t get toggled. Checked the dtb file the hotplug pin is different there.
How to proceed to make this changes ?

Hi,

Just to clarify. What you saw here:

gpio-411 (PM.01 |hdmi2.0_hpd ) in hi IRQ

This is a pure gpio behavior. If you hotplug the GPIO but above input didn’t change between hi and lo, it means your hardware side has problem that our GPIO didn’t consider it having any state change.

PM.01 is pin 96. So whether your device tree has a correct value or not, it does not matter. We already saw PM.01 got registered here.

I meant that as specified from above

15200000 is already in HDMI mode.

In the dtb file the hot plug for this was different and was not pin 96. So, thought that the issue is there .

Will verify the change of state once again and confirm.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.