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 >