BUG: *ERROR* No EDID read

Harry Wentland harry.wentland at amd.com
Thu Jul 5 18:22:50 UTC 2018


On 2018-07-05 01:43 PM, Daniel Andersson wrote:
> Well, this workaround:
> 
> diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
> b/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
> index 10a5807a7e8b..d0f5910c906c 100644
> --- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
> +++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
> @@ -1321,6 +1321,8 @@ static enum bp_result bios_parser_get_firmware_info(
>   header = GET_IMAGE(struct atom_common_table_header,
>   DATA_TABLES(firmwareinfo));
>   get_atom_data_table_revision(header, &revision);
> +    dm_output_to_console("At bios_parser_get_firmware_info switch,
> got major %d minor %d", revision.major, revision.minor);
> +    dm_error("At bios_parser_get_firmware_info switch, got major %d
> minor %d", revision.major, revision.minor);
>   switch (revision.major) {
>   case 3:
>   switch (revision.minor) {
> @@ -1328,7 +1330,7 @@ static enum bp_result bios_parser_get_firmware_info(
>   result = get_firmware_info_v3_1(bp, info);
>   break;
>   case 2:
> - result = get_firmware_info_v3_2(bp, info);
> + result = get_firmware_info_v3_1(bp, info);
>   break;
>   default:
>   break;
> 
> "works":
> [engy][~/devel/3pp/linux] ((6e65fb862064...)|BISECTING)$ xrandr
> Screen 0: minimum 320 x 200, current 2560 x 1440, maximum 16384 x 16384
> DisplayPort-0 connected 2560x1440+0+0 (normal left inverted right x
> axis y axis) 598mm x 336mm
>    2560x1440     59.95*+ 120.00    99.95    84.98    23.97
>    1920x1200     59.95
>    1920x1080     59.95
>    1600x1200     59.95
>    1680x1050     59.95
>    1280x1024     59.95
>    1440x900      59.95
>    1280x800      59.95
>    1280x720      59.95
>    1024x768      59.95
>    800x600       59.95
>    640x480       59.95
> DisplayPort-1 disconnected (normal left inverted right x axis y axis)
> HDMI-A-0 disconnected (normal left inverted right x axis y axis)
> HDMI-A-1 disconnected (normal left inverted right x axis y axis)
> 
> Where does dm_error and dm_output_to_console end up?
> 

dm_error -> DRM_ERROR will end up in dmesg as an error message
dm_output_to_console -> DRM_DEBUG_KMS will end up in dmesg as a normal log message if drm.debug=0x4 is set on the kernel command line

I'd be curious what the driver thinks the major and minor are.

Harry

> // Daniel
> 
> On 5 July 2018 at 18:42, Deucher, Alexander <Alexander.Deucher at amd.com> wrote:
>> So your vbios has table v3.1 so it should not be affected by that patch.
>> Does reverting that patch actually fix the issue?
>>
>>
>> Alex
>>
>> ________________________________
>> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> on behalf of Daniel
>> Andersson <engywook at gmail.com>
>> Sent: Thursday, July 5, 2018 12:22:17 PM
>> To: Alex Deucher
>> Cc: amd-gfx at lists.freedesktop.org
>> Subject: Re: BUG: *ERROR* No EDID read
>>
>> I have not flashed any GPU BIOS. It's not a reference Vega though,
>> Sapphire something. Maybe they made changes?
>>
>> vbios is attached.
>>
>> // Daniel
>>
>> On 5 July 2018 at 15:38, Alex Deucher <alexdeucher at gmail.com> wrote:
>>> On Mon, Jul 2, 2018 at 5:39 PM, Daniel Andersson <engywook at gmail.com>
>>> wrote:
>>>> Sure, bisecting gets me 6e65fb862064663ad3a08f964af1e8f3f2abf688 .
>>>>
>>>> In drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c,
>>>> get_firmware_info_v3_1() works but get_firmware_info_v3_2() does not
>>>> do the right thing for my Vega.
>>>>
>>>> Could I break my GPU if I were to set some bad/wrong frequency there?
>>>
>>> vega10 should not hit that new path at all.  Have you edited your
>>> vbios?  Can you send us a copy?  To get a copy of the vbios:
>>>
>>> Without the driver loaded:
>>> (as root)
>>> (use lspci to get the bus id)
>>> cd /sys/bus/pci/devices/<pci bus id>
>>> echo 1 > rom
>>> cat rom > /tmp/vbios.rom
>>> echo 0 > rom
>>>
>>> If the driver is loaded:
>>> (as root)
>>> cat /sys/kernel/debug/dri/0/amdgpu_vbios > /tmp/vbios.rom
>>>
>>> Alex
>>>
>>>>
>>>> lspci:
>>>> 43:00.0 VGA compatible controller: Advanced Micro Devices, Inc.
>>>> [AMD/ATI] Vega 10 XT [Radeon RX Vega 64] (rev c1) (prog-if 00 [VGA
>>>> controller])
>>>>   Subsystem: Sapphire Technology Limited Vega 10 XT [Radeon RX Vega
>>>> 64]
>>>>   Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
>>>> Stepping- SERR- FastB2B- DisINTx+
>>>>   Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
>>>> <TAbort- <MAbort- >SERR- <PERR- INTx-
>>>>   Latency: 0, Cache Line Size: 64 bytes
>>>>   Interrupt: pin A routed to IRQ 85
>>>>   Region 0: Memory at d0000000 (64-bit, prefetchable) [size=256M]
>>>>   Region 2: Memory at e0000000 (64-bit, prefetchable) [size=2M]
>>>>   Region 4: I/O ports at f000 [size=256]
>>>>   Region 5: Memory at ed400000 (32-bit, non-prefetchable) [size=512K]
>>>>   Expansion ROM at ed480000 [disabled] [size=128K]
>>>>   Capabilities: [48] Vendor Specific Information: Len=08 <?>
>>>>   Capabilities: [50] Power Management version 3
>>>>     Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
>>>> PME(D0-,D1+,D2+,D3hot+,D3cold+)
>>>>     Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
>>>>   Capabilities: [64] Express (v2) Legacy Endpoint, MSI 00
>>>>     DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us, L1
>>>> unlimited
>>>>       ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
>>>>     DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
>>>>       RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
>>>>       MaxPayload 256 bytes, MaxReadReq 512 bytes
>>>>     DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr-
>>>> TransPend-
>>>>     LnkCap: Port #0, Speed 8GT/s, Width x16, ASPM L0s L1, Exit Latency
>>>> L0s <64ns, L1 <1us
>>>>       ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
>>>>     LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes Disabled- CommClk+
>>>>       ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>>>>     LnkSta: Speed 8GT/s, Width x16, TrErr- Train- SlotClk+ DLActive-
>>>> BWMgmt- ABWMgmt-
>>>>     DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR+,
>>>> OBFF Not Supported
>>>>        AtomicOpsCap: 32bit- 64bit- 128bitCAS-
>>>>     DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF
>>>> Disabled
>>>>        AtomicOpsCtl: ReqEn-
>>>>     LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
>>>>        Transmit Margin: Normal Operating Range,
>>>> EnterModifiedCompliance- ComplianceSOS-
>>>>        Compliance De-emphasis: -6dB
>>>>     LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+,
>>>> EqualizationPhase1+
>>>>        EqualizationPhase2+, EqualizationPhase3+,
>>>> LinkEqualizationRequest-
>>>>   Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
>>>>     Address: 00000000fee00000  Data: 0000
>>>>   Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1
>>>> Len=010 <?>
>>>>   Capabilities: [150 v2] Advanced Error Reporting
>>>>     UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF-
>>>> MalfTLP- ECRC- UnsupReq- ACSViol-
>>>>     UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF-
>>>> MalfTLP- ECRC- UnsupReq- ACSViol-
>>>>     UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+
>>>> MalfTLP+ ECRC- UnsupReq- ACSViol-
>>>>     CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
>>>>     CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
>>>>     AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn-
>>>> ECRCChkCap+ ECRCChkEn-
>>>>       MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
>>>>     HeaderLog: 00000000 00000000 00000000 00000000
>>>>   Capabilities: [200 v1] #15
>>>>   Capabilities: [270 v1] #19
>>>>   Capabilities: [2a0 v1] Access Control Services
>>>>     ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd-
>>>> EgressCtrl- DirectTrans-
>>>>     ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd-
>>>> EgressCtrl- DirectTrans-
>>>>   Capabilities: [2b0 v1] Address Translation Service (ATS)
>>>>     ATSCap: Invalidate Queue Depth: 00
>>>>     ATSCtl: Enable+, Smallest Translation Unit: 00
>>>>   Capabilities: [2c0 v1] Page Request Interface (PRI)
>>>>     PRICtl: Enable- Reset-
>>>>     PRISta: RF- UPRGI- Stopped+
>>>>     Page Request Capacity: 00000020, Page Request Allocation: 00000000
>>>>   Capabilities: [2d0 v1] Process Address Space ID (PASID)
>>>>     PASIDCap: Exec+ Priv+, Max PASID Width: 10
>>>>     PASIDCtl: Enable- Exec- Priv-
>>>>   Capabilities: [320 v1] Latency Tolerance Reporting
>>>>     Max snoop latency: 0ns
>>>>     Max no snoop latency: 0ns
>>>>   Kernel driver in use: amdgpu
>>>>   Kernel modules: amdgpu
>>>>
>>>> // Daniel
>>>>
>>>> On 2 July 2018 at 21:29, Alex Deucher <alexdeucher at gmail.com> wrote:
>>>>> On Mon, Jul 2, 2018 at 3:21 PM, Daniel Andersson <engywook at gmail.com>
>>>>> wrote:
>>>>>> I get:
>>>>>> [drm:dc_link_detect [amdgpu]] *ERROR* No EDID read.
>>>>>> on boot. This started happening on 4.17 and is still an issue on
>>>>>> 4.18-rc2.
>>>>>>
>>>>>> I have a Vega64 connected on Display Port to a monitor(1440p). The
>>>>>> monitor
>>>>>> doesn't have any additional ports so I can't test HDMI.
>>>>>>
>>>>>> xrandr:
>>>>>> Screen 0: minimum 320 x 200, current 1024 x 768, maximum 16384 x 16384
>>>>>> DisplayPort-0 connected 1024x768+0+0 (normal left inverted right x axis
>>>>>> y
>>>>>> axis) 0mm x 0mm
>>>>>>    1024x768      60.00*
>>>>>>    800x600       60.32    56.25
>>>>>>    848x480       60.00
>>>>>>    640x480       59.94
>>>>>> DisplayPort-1 disconnected (normal left inverted right x axis y axis)
>>>>>> HDMI-A-0 disconnected (normal left inverted right x axis y axis)
>>>>>> HDMI-A-1 disconnected (normal left inverted right x axis y axis)
>>>>>>
>>>>>> The 1440p resolution worked on 4.16.
>>>>>
>>>>> Can you use git to bisect?
>>>>>
>>>>> Alex
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> 


More information about the amd-gfx mailing list