There are two Dell U2718Q 4K monitors connected to a Sapphire Pulse RX 570 ITX card, one using the DisplayPort output and the other using the HDMI output.
There is a visible flickering artifact on both displays. There is no problem when only a single display is connected.
Searching online yields a couple of results that suggest a workaround: manually increasing the shader and/or memory clock of the GPU. On the RX 570 the following commands can get rid of the problem:
echo "manual" > /sys/class/drm/card0/device/power_dpm_force_performance_level
echo "2" > /sys/class/drm/card0/device/pp_dpm_mclk
echo "5 6 7" > /sys/class/drm/card0/device/pp_dpm_sclk
However, I believe the amdgpu driver should be able to figure out the correct necessary clock settings on its own. The problem exists in Linux 4.19 and 5.0-rc1 as well.
Please attach your dmesg output and xorg log (if using X).
Created attachment 143126 [details]
Created attachment 143127 [details]
I have the same issue with an RX480 if i set amdgpu.ppfeaturemask=0xffffffff (for overclocking), without any command line changes there is no flickering
(In reply to keziolio123 from comment #4)
> I have the same issue with an RX480 if i set amdgpu.ppfeaturemask=0xffffffff
> (for overclocking), without any command line changes there is no flickering
That's because when you overclock, your clock speed gets high enough so that flickering doesn't happen.