Bug 104412

Summary: RX 460 HDMI 4k 60fps not working, DisplayPort is.
Product: DRI Reporter: S.H. <anaxi_bugzilla>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: fdsfgs, harry.wentland, jordan.lazare
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
drm grep of dmesg
none
Xorg.0.log none

Description S.H. 2017-12-29 13:33:04 UTC
Created attachment 136445 [details]
drm grep of dmesg

As far as I understand with the release of kernel-4.15-rc 4k 60Hz over HDMI should be supported with amdgpu and RX-460.
I can't get it to work. 
Displayport works fine.
HDMI Port and cabling tested with Windows and XBOX One X, both use 60Hz over HDMI, only my linux box refuses to use 60Hz.
Comment 1 S.H. 2017-12-29 13:33:27 UTC
Created attachment 136446 [details]
Xorg.0.log
Comment 2 S.H. 2017-12-29 13:34:49 UTC
Added drm parts of dmesg and Xorg.0.log file.
Comment 3 S.H. 2017-12-29 15:47:43 UTC
Sorry, pressed the send button too early.

For anyone willing to help, here's my system:
- kernel-4.15-rc5
- xf86-video-amdgpu-1.4.0
- xorg-server-1.19.6
- Sapphire RX 460
- iiyama G-Master GB2888UHSU 

If you need any further information/testing/answers please don't hesitate to contact me.

Thank you
Comment 4 dwagner 2017-12-29 20:08:26 UTC
You might experience the same issue as I did, read https://bugs.freedesktop.org/show_bug.cgi?id=102820 for details.

The bottom line of which is: Unless you revert commit ebbf7337e2daacacef3e01114e6be68a2a4f11b4 the amdgpu driver will look at one bit of the GPU BIOS ROM and determine from the value in there that your GPU is unworthy of enabling HDMI 2.0 modes exceeding a pixel clock of 300MHz - even if those modes work perfectly fine with both your GPU and your display, also under different operating systems.
Comment 5 dwagner 2017-12-29 20:15:03 UTC
(My above referenced commit ID was valid for an older version of the amd-staging-drm-next git branch - to find the same commit in the kernel git branch you use, search for "drm/amd/display: Block 6Ghz timing if SBIOS set HDMI_6G_en to 0" in the output of "git log". Reverting this patch still solves the problem for me.)
Comment 6 S.H. 2017-12-30 12:10:15 UTC
Hello,
Last night I was able to get my hands on a Gigabyte RX460 and did some testing.
Booting and normal startup with the Gigabyte also only used 4k@30Hz but I was able to reach 4k@60Hz by adding a modeline via xrandr.
With the Saphhire I am not able to get 4k@60Hz even with a custom modeline set via xrandr.
Something seems broken here and I don't think both vendors messed up their cards.
Comment 7 S.H. 2017-12-30 12:40:38 UTC
Hello,
me again. I reverted the patch mentioned in Comment #4 and now I can enable 60Hz via modeline on both cards. I still don't get it automatically, which means console and X are still 30Hz at boot but I can force X at least manually to 60Hz.
Comment 8 Peter Weber 2018-01-18 21:51:17 UTC
Hello!

I'm using a LG 27UD88-W, which featurese 1 x DP, 1 x USB-C (DP) and 2 x HDMI. In my desktop is a Radeon RX 560 which offers DP "1.4" and HDMI "2.0b" and I also use a ThinkPad X220 which offers DP "1.1".

USB-C -> No hardware available
DP    -> Reserved for ThinkPad, so I can use 3480x2180@30 Hz (probably even 44 Hz [1])
HDMI  -> RX 560

The DP of the RX 560 works fine at 3480x2180@60Hz, but via HDMI it fails with Fedora 27 and kernel "3.14". Only 1920x1***@30Hz is possible any higher resolution results in visual garbage on the screen or "NO SIGNAL". Finally I remembered, that kernel 3.15 will over the new graphics stack "AMDGPU DC". I booted a live ISO with kernel 3.15 and passed the requried option "amdgpu.dc=1" and got 3480x2180@30Hz. GNOME also offers 60Hz as option, but that fails and cannot be used, screen goes blank, until GNOME reverts the settings. I'm afraid the previous people are right, HDMI2.0b and 4K@60Hz are broken.




HINT: Don't used "DEEP COLOR" (LG OPTION for 8/10BIT COLOR?) with HDMI or everything is busted, but that is a minor issue, as for now.














[1] https://medium.com/@ValdikSS/how-to-use-high-resolutions-with-older-hardware-58577d91b1f8
Comment 9 Peter Weber 2018-01-18 21:56:08 UTC
(In reply to S.H. from comment #3)
> Sorry, pressed the send button too early.

Me too!

> - iiyama G-Master GB2888UHSU 

This was my other candidate to buy, glad to hear that this monitor wouldn't have changed anything :D
Comment 10 S.H. 2018-01-19 16:06:00 UTC
(In reply to Peter Weber from comment #8)
> Hello!
> 
> I'm using a LG 27UD88-W, which featurese 1 x DP, 1 x USB-C (DP) and 2 x
> HDMI. In my desktop is a Radeon RX 560 which offers DP "1.4" and HDMI "2.0b"
> and I also use a ThinkPad X220 which offers DP "1.1".
> 
> USB-C -> No hardware available
> DP    -> Reserved for ThinkPad, so I can use 3480x2180@30 Hz (probably even
> 44 Hz [1])
> HDMI  -> RX 560
> 
> The DP of the RX 560 works fine at 3480x2180@60Hz, but via HDMI it fails
> with Fedora 27 and kernel "3.14". Only 1920x1***@30Hz is possible any higher
> resolution results in visual garbage on the screen or "NO SIGNAL". Finally I
> remembered, that kernel 3.15 will over the new graphics stack "AMDGPU DC". I
> booted a live ISO with kernel 3.15 and passed the requried option
> "amdgpu.dc=1" and got 3480x2180@30Hz. GNOME also offers 60Hz as option, but
> that fails and cannot be used, screen goes blank, until GNOME reverts the
> settings. I'm afraid the previous people are right, HDMI2.0b and 4K@60Hz are
> broken.
> 
> 
> 
> 
> HINT: Don't used "DEEP COLOR" (LG OPTION for 8/10BIT COLOR?) with HDMI or
> everything is busted, but that is a minor issue, as for now.
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> [1]
> https://medium.com/@ValdikSS/how-to-use-high-resolutions-with-older-hardware-
> 58577d91b1f8

You need at least Kernel-4.15 which is in rc-state at the moment. Afaik, Kernel 3.14 is way too old for amdgpu and amdgpu-dc.
Comment 11 dwagner 2018-01-20 01:41:35 UTC
(In reply to Peter Weber from comment #8)
> The DP of the RX 560 works fine at 3480x2180@60Hz, but via HDMI it fails
...
> HINT: Don't used "DEEP COLOR" (LG OPTION for 8/10BIT COLOR?) with HDMI or
> everything is busted, but that is a minor issue, as for now.

Do you realize that LG's "deep color" option for HDMI ports essentially means that only if this option is enabled, they support >300MHz signals on those inputs?

To allow for 4k 60Hz modes, you will need to enable that "LG deep color" option on the respective input, otherwise you cannot expect 4k 60Hz to work - it does require up to 600Mhz signals.

If with "LG deep color" on you do get 4k 60Hz output, but distorted, you might want to try better/shorter HDMI cables, as many HDMI cables (and especially every cable over 5 meters length) do not conduct 600MHz signals with sufficient quality.

The issues with the amdgpu driver is just that it does not even offer to enable 4k 60Hz modes if some bit in the GPU's bios seemingly indicates insufficient support for such, but this bit seems to be bollocks for several GPU brands and seems to be rightfully ignored by Windows drivers.
Comment 12 Alfe 2018-03-27 02:12:38 UTC
(In reply to S.H. from comment #6)
> Hello,
> Last night I was able to get my hands on a Gigabyte RX460 and did some
> testing.
> Booting and normal startup with the Gigabyte also only used 4k@30Hz but I
> was able to reach 4k@60Hz by adding a modeline via xrandr.
> With the Saphhire I am not able to get 4k@60Hz even with a custom modeline
> set via xrandr.
> Something seems broken here and I don't think both vendors messed up their
> cards.

Hi!  Since I'm also trying around with this, it would be really helpful if you shared your modeline with which you were able to achieve 4k@60Hz ;-)

Cheers, Alfe
Comment 13 Harry Wentland 2018-03-27 18:48:29 UTC
The problem with 4k60 being blocked due to a BIOS bit should be fixed now. I recommend trying the drm-next-4.17-wip from https://cgit.freedesktop.org/~agd5f/linux
Comment 14 S.H. 2018-03-27 19:04:22 UTC
(In reply to Alfe from comment #12)
> (In reply to S.H. from comment #6)
> > Hello,
> > Last night I was able to get my hands on a Gigabyte RX460 and did some
> > testing.
> > Booting and normal startup with the Gigabyte also only used 4k@30Hz but I
> > was able to reach 4k@60Hz by adding a modeline via xrandr.
> > With the Saphhire I am not able to get 4k@60Hz even with a custom modeline
> > set via xrandr.
> > Something seems broken here and I don't think both vendors messed up their
> > cards.
> 
> Hi!  Since I'm also trying around with this, it would be really helpful if
> you shared your modeline with which you were able to achieve 4k@60Hz ;-)
> 
> Cheers, Alfe

Hi,
I use these three lines to achieve 60Hz output:
xrandr --newmode "mymode" 594  3840 4016 4104 4400  2160 2168 2178 2250 +hsync +vsync
xrandr --addmode HDMI-A-0 mymode
xrandr --output HDMI-A-0 --mode mymode

Cheers,
Sven
Comment 15 S.H. 2018-04-05 17:40:58 UTC
(In reply to Harry Wentland from comment #13)
> The problem with 4k60 being blocked due to a BIOS bit should be fixed now. I
> recommend trying the drm-next-4.17-wip from
> https://cgit.freedesktop.org/~agd5f/linux

Hi,
thanks for the update. I wasn't able to check out and test until today.
4k@60Hz is still not detected automatically, but:
- I was able to set 60Hz manually and
- I do NOT need to remove any patches anymore from kernel source

Cheers,
Sven
Comment 16 S.H. 2018-04-05 21:43:21 UTC
(In reply to S.H. from comment #15)
> (In reply to Harry Wentland from comment #13)
> > The problem with 4k60 being blocked due to a BIOS bit should be fixed now. I
> > recommend trying the drm-next-4.17-wip from
> > https://cgit.freedesktop.org/~agd5f/linux
> 
> Hi,
> thanks for the update. I wasn't able to check out and test until today.
> 4k@60Hz is still not detected automatically, but:
> - I was able to set 60Hz manually and
> - I do NOT need to remove any patches anymore from kernel source
> 
> Cheers,
> Sven

Hi,
me again.
I noticed random flickering with drm-next-4.17-wip which is not present with kernel 4.15.x.

Cheers,
Sven
Comment 17 S.H. 2018-04-15 13:57:39 UTC
Hi,
flickering also present with Kernel-4.16.2.

Sven
Comment 18 Harry Wentland 2018-04-17 18:13:48 UTC
Please keep one issue per ticket. Open a new ticket if needed.

That said, a fix for the flickering issue should be in drm-next-4.17 of Alex's git repo at https://cgit.freedesktop.org/~agd5f/linux/?h=drm-next-4.17 and should make it into Linus's tree from there.

That fix should also make it into 4.16 stable.
Comment 19 Harry Wentland 2018-04-25 15:32:34 UTC
Marking resolved as 4k60 now works. If you still observe the issues feel free to reopen.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.