Alright, I redid the bisect and this time ended up on 018d82e5f02ef3583411bcaa4e00c69786f46f19 . If I revert it, it fixes my issue. Reverting it on 4.18-rc2 also works. // Daniel On 5 July 2018 at 21:47, Daniel Andersson <engywook at gmail.com> wrote: > [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-linuxtest > root=UUID=27247597-a354-42f3-8040-caff9592a297 drm.debug=0x4 rw quiet > [ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-linuxtest > root=UUID=27247597-a354-42f3-8040-caff9592a297 drm.debug=0x4 rw quiet > [ 5.674793] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.674833] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.674887] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.674930] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.674974] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675014] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675056] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675095] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675138] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675178] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675221] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675260] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675304] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675342] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675384] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675422] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675465] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675503] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675587] [drm:bios_parser_get_firmware_info [amdgpu]] At > bios_parser_get_firmware_info switch, got major 3 minor 1 > [ 5.675626] [drm:bios_parser_get_firmware_info [amdgpu]] *ERROR* At > bios_parser_get_firmware_info switch, got major 3 minor 1 > > I don't really know what is going on. If I go back to 4.17 and apply > my "fix". It doesn't work. I suppose my bisect didn't get me the right > commit. I probably never tested that the commit, from the bisect, was > actually bad. I was also a little lazy and did "bisect start > 29dcea88779c856c7dc92040a0c01233263101d4 > 6da6c0db5316275015e8cc2959f12a17584aeb64 -- drivers/gpu/drm/amd". > > I guess I'll try another bisect tomorrow on the entire tree, sorry for > the extra work. > > // Daniel > > On 5 July 2018 at 20:22, Harry Wentland <harry.wentland at amd.com> wrote: >> 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 >>>