Bug 110217 - RX580: screen turns black or flickers until forced reconfiguration
Summary: RX580: screen turns black or flickers until forced reconfiguration
Status: RESOLVED MOVED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/AMDgpu (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-21 22:42 UTC by numzer0
Modified: 2019-11-19 09:18 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg output (60.13 KB, text/plain)
2019-03-21 22:42 UTC, numzer0
no flags Details
Xorg log (48.74 KB, text/plain)
2019-03-21 22:43 UTC, numzer0
no flags Details
Xorg config (1.61 KB, text/plain)
2019-03-21 22:48 UTC, numzer0
no flags Details

Description numzer0 2019-03-21 22:42:57 UTC
Created attachment 143754 [details]
dmesg output

I have a Radeon RX560 and VGA monitor (with broken EDID) connected via a cheap HDMI-to-VGA converter (with its own broken EDID).

The system starts up normally. During boot up, it should change display resolution as specified in the kernel command line (`video=1280x1024-32@75`, monitor native). Screen turns black instead, and resolution remains unchanged. But after I plug HDMI out and in, the monitor gets new resolution and shows console login prompt, as expected. (X isn’t configured to start at bootup).

Then, when I `startx`, it chooses the same resolution but wrong frequency (85 Hz, too much for my monitor). That’s probably due to converter supplying the EDID. After I run `xrandr --rate 75`, it switches to the correct mode.

I wouldn’t even mention such small nuisance, but if I specify exactly the same mode (as reported by `xrandr --verbose`) explicitly (as a `Modeline`), it works but flickers, despite the `TearFree` option enabled. Moreover, when the monitor is turned off and then on, it wakes up in the same mode *but flickers.* Changing mode back and forth (`xrandr --output HDMI-A-0 --preferred ; xrandr --rate 75`) helps.

I usually have `compton` running. Without it, flicker is tolerable but still present.

OS: Arch Linux
Kernel: Linux 5.0.1-arch1-1-ARCH
X driver: xf86-video-amdgpu 19.0.0-1
Comment 1 numzer0 2019-03-21 22:43:58 UTC
Created attachment 143755 [details]
Xorg log
Comment 2 numzer0 2019-03-21 22:48:17 UTC
Created attachment 143756 [details]
Xorg config

If I uncomment the proper `Output-...` option, Xorg starts in the correct mode but with flicker. That’s true both for `amdgpu` and `modesetting` drivers IIRC.
Comment 3 numzer0 2019-05-23 18:25:23 UTC
New information:

1. Screen turns black at module insertion, be it during bootup or later. But resuming from hibernation works.

2. On the system, the converter I use is problematic itself. When I connect it to another PC, HDMI port is shown as “connected” *until* I connect a monitor to the converter. Then, everything works but HDMI port is displayed as “disconnected” in xrandr.

After updating the system, flicker seems to happen in X only, despite the “TearFree” option. Virtual consoles work well, albeit use the same mode (i.e. no mode change on VT switch). Not sure was that the case earlier.

Also, after last hibernation, the old trick with resetting mode didn’t help, flicker continues. New X instances flicker as well. 

New kernel: Linux 5.1.2-arch1-1-ARCH
New X driver: xf86-video-amdgpu 19.0.1-1
Comment 4 numzer0 2019-05-23 18:29:18 UTC
Just downgraded xf86-video-amdgpu back to 19.0.0-1. The flicker disappeared.
Comment 5 numzer0 2019-05-23 19:09:42 UTC
The flicker seems to be due to https://bugs.freedesktop.org/show_bug.cgi?id=102646, despite the fact Arch wiki tells that affects 120+ Hz only (my monitor runs at 75 Hz). At least fixing clocks fixes the problem.
Comment 6 Martin Peres 2019-11-19 09:18:02 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/drm/amd/issues/733.


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.