BUG: *ERROR* No EDID read
Daniel Andersson
engywook at gmail.com
Thu Jul 5 17:43:34 UTC 2018
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?
// 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
More information about the amd-gfx
mailing list