amdgpu fixes for display watermark calculations.

Mario Kleiner at
Wed Mar 29 20:09:10 UTC 2017


attached two patches for amdgpu to improve the accuracy of display wm
calculations, and to avoid some overflow and divide-by-zero errors which
can cause the driver to die.

Both are tested for the DCE-10 code path with a AMD R9 380 Tonga Pro
on two different panels and their various modes. They prevent a driver
crash that happened for the "ASUS ROG PG 279" gaming panel when trying
to set a 2560x1440 video mode at 165 Hz video refresh, due to division
by zero errors in the driver.

Probably material for stable, given it prevents crashes?

That said, while the driver no longer crashes, and sets 2560x1440 modes
at 24, 60, 85, 100 and 120 Hz over DisplayPort just fine on that panel,
i so far failed to make it work with 144 Hz or 165 Hz. Modesetting seems
to succeed in that xrandr reports the mode being set, and no error or
warning messages or anything suspicious in the XOrg or kernel dmesg log
or in drm.debug output at high debug settings. The display however goes
black and the onscreen display reports "DisplayPort: No Signal!". Tested
on Linux 4.9/10/drm-next.

The amdgpu-pro 16.50 driver under DC/DAL has no problems setting a working
144 Hz / 165 Hz mode, whereas the same failure happens if i boot it with
amdgpu.dc=0 to go back to the old modesetting.

Any clues on how to debug the black panel much appreciated.


More information about the amd-gfx mailing list