Vega 56 failing to process EDID from VR Headset

James Dutton james.dutton at gmail.com
Tue Apr 12 22:13:16 UTC 2022


On Tue, 12 Apr 2022 at 07:13, Paul Menzel <pmenzel at molgen.mpg.de> wrote:
> Am 11.04.22 um 23:39 schrieb James Dutton:
> So, did you do any changes to Linux? Why do you think the EDID is at fault?
>
> […]
>
> I suggest to analyze, why `No DP link bandwidth` is logged. The macro is
> `DC_NO_DP_LINK_BANDWIDTH`, and you should first check why
> `dp_validate_mode_timing()` in
> `drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c` returns false.
>
>
> Kind regards,
>
> Paul
>
>
> PS: Using the issue tracker [1] might make it easier to keep track of
> this problem, and also to attach all the necessary information.
>
>
> [1]: https://gitlab.freedesktop.org/drm/amd/-/issues/

Hi,

I will do some more investigation. In addition to it not processing
the EDID particularly well...
Since my email, I have found out that it is failing to complete CR
(Clock Recovery) on Link 0,2, but it works on 1,3 at HBR2. All 4 Links
work at HBR1.   (I need the HBR2 working)
The CR negotiation in the code looks a bit wrong to me, so I will look
into that a bit more.
Looking at the current amdgpu source code   (I am using Mainline
kernel version 5.17.1), it appears to retry CR negotiation, but each
time it uses the same settings, rather than try different driver
parameters, as recommended in the DP standards and compliance test
documents.
My understanding is that it is supposed to start low, and then
gradually increases the driven levels until it gets CR.
Another aspect of the driver that I think could be improved could be
it keeping link state of the various interfaces separate.
1) Link up/down status on the signalling channel, where it gets EDID from.
2) Link up/down status on each of data Link 0,1,2,3.  And what speeds
have been tested and work on each data Link, and what the "sink"
advertises as available.
At the moment, if anything goes wrong, it forgets all the information
it has and makes the kernel think it is disconnected. That makes it a
little difficult to diagnose where the problem is.
On other systems I have worked on, it has been useful to have the
EDID, even if the data links are all down.

Once I know more, I will put all the info in the issue track, as you suggest.

Kind Regards

James


More information about the amd-gfx mailing list