Hi,
Thanks for the hard work on AMD DC development! Here are some new test results - hope they are interesting/useful.
CONTEXT
We have been tracking DC for a while as we work with multiple products where amdgpu previously was not able to support the HDMI audio output. We are hoping to ship the new driver as soon as possible to fix this Linux compatibility issue.
TEST SETUP
With an eye to shipping this ASAP, we backported DC to the current stable release, Linux 4.14. To do this we took the amdgpu/DC commits from: https://cgit.freedesktop.org/~agd5f/linux/log/?h=upstream-4.14-drm-next-amd-...
And added these two pull requests: https://www.spinics.net/lists/dri-devel/msg156828.html https://lists.freedesktop.org/archives/dri-devel/2017-November/157687.html
At this point we diff the resultant amdgpu directories with Linus tree as of commit f6705bf959efac87bca76d40050d342f1d212587 (when he accepted the DC driver) and the diff is zero. This is published on the master branch of https://github.com/endlessm/linux
There have been more AMD DC changes merged into Linus tree since then, however we tried and the backporting seems like loads of work, so we have not gone beyond the initial merge into Linus tree for now.
We then asked our QA team to run our standard tests with this kernel. They tested 3 platforms: Acer Aspire E5-553G (AMD FX-9800P RADEON R7) Acer Aspire E5-523G (AMD E2-9010 RADEON R2) Acer Aspire A315-21 (AMD A4-9120 RADEON R3)
CONFIG_DRM_AMD_DC_PRE_VEGA was set in order to have AMD DC support this hardware.
TEST RESULTS
HDMI audio works now, however we have encountered some regressions. In all cases the 3 platforms behaved the same (either all 3 pass the individual tests, or all 3 show the same problem). The regressions are:
1. System hangs on S3 resume. Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104281
2. Display corruption when using multiple displays Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104319
3. HDMI audio device still shown as present and active even after disconnecting HDMI cable Bug can't be reproduced when booting with amdgpu.dc=0 Appears fixed with DC on Linus master (4.15-rc).
Full test results spreadsheet (including tests passed): http://goo.gl/oqnMDx Thanks to my colleagues: Carlo Caione for doing the backport and Vanessa Chang for managing the testing.
NEXT STEPS
Unfortunately we can't ship the driver in current state with these regressions, but on the positive side it looks like it will be in better shape for Linux 4.16.
We will now focus on making 4.15 regression-free before revisiting the idea of backporting DC to earlier kernels.
After the holiday break we will try to identify the relevant fixes in amd-staging-drm-next and see if they can be included in Linux 4.15. We'll send these backports upstream as soon as we find them.
Daniel
Hi Drake,
thanks for your extensive testing, solid test results, and help in tracking bugs across multiple branches. These results are quite helpful.
If you have any questions don't hesitate to let us know.
Btw, great job you're doing with Endless OS. I've never tried it but I like your approach for a free, accessible OS for the masses.
Harry
On 2017-12-21 08:45 AM, Daniel Drake wrote:
Hi,
Thanks for the hard work on AMD DC development! Here are some new test results - hope they are interesting/useful.
CONTEXT
We have been tracking DC for a while as we work with multiple products where amdgpu previously was not able to support the HDMI audio output. We are hoping to ship the new driver as soon as possible to fix this Linux compatibility issue.
TEST SETUP
With an eye to shipping this ASAP, we backported DC to the current stable release, Linux 4.14. To do this we took the amdgpu/DC commits from: https://cgit.freedesktop.org/~agd5f/linux/log/?h=upstream-4.14-drm-next-amd-...
And added these two pull requests: https://www.spinics.net/lists/dri-devel/msg156828.html https://lists.freedesktop.org/archives/dri-devel/2017-November/157687.html
At this point we diff the resultant amdgpu directories with Linus tree as of commit f6705bf959efac87bca76d40050d342f1d212587 (when he accepted the DC driver) and the diff is zero. This is published on the master branch of https://github.com/endlessm/linux
There have been more AMD DC changes merged into Linus tree since then, however we tried and the backporting seems like loads of work, so we have not gone beyond the initial merge into Linus tree for now.
We then asked our QA team to run our standard tests with this kernel. They tested 3 platforms: Acer Aspire E5-553G (AMD FX-9800P RADEON R7) Acer Aspire E5-523G (AMD E2-9010 RADEON R2) Acer Aspire A315-21 (AMD A4-9120 RADEON R3)
CONFIG_DRM_AMD_DC_PRE_VEGA was set in order to have AMD DC support this hardware.
TEST RESULTS
HDMI audio works now, however we have encountered some regressions. In all cases the 3 platforms behaved the same (either all 3 pass the individual tests, or all 3 show the same problem). The regressions are:
- System hangs on S3 resume.
Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104281
- Display corruption when using multiple displays
Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104319
- HDMI audio device still shown as present and active even after
disconnecting HDMI cable Bug can't be reproduced when booting with amdgpu.dc=0 Appears fixed with DC on Linus master (4.15-rc).
Full test results spreadsheet (including tests passed): http://goo.gl/oqnMDx Thanks to my colleagues: Carlo Caione for doing the backport and Vanessa Chang for managing the testing.
NEXT STEPS
Unfortunately we can't ship the driver in current state with these regressions, but on the positive side it looks like it will be in better shape for Linux 4.16.
We will now focus on making 4.15 regression-free before revisiting the idea of backporting DC to earlier kernels.
After the holiday break we will try to identify the relevant fixes in amd-staging-drm-next and see if they can be included in Linux 4.15. We'll send these backports upstream as soon as we find them.
Daniel _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx
On Thu, Dec 21, 2017 at 1:45 PM, Daniel Drake drake@endlessm.com wrote:
Hi,
Hi again, in Endless we are still actively working with DC on several laptops, so I just wanted to give you a quick update regarding the regressions indicated in Daniel's email.
- System hangs on S3 resume.
Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104281
This keeps being an issue. Unfortunately (as stated in the bug report) this problem is still reproducible on the agd5f/amd-staging-drm-next branch (tested it today with HEAD at 95b5f44) even though the frequency is not high (maybe 1/10 suspends or less). In the bug report you can find the dmesg log if interested.
- Display corruption when using multiple displays
Bug can't be reproduced when booting with amdgpu.dc=0 Also reproduced with DC on Linus master (4.15-rc), but appears fixed on agd5f/amd-staging-drm-next https://bugs.freedesktop.org/show_bug.cgi?id=104319
I was able to bisect this problem down to 1 specific commit (see [0]).
- HDMI audio device still shown as present and active even after
disconnecting HDMI cable Bug can't be reproduced when booting with amdgpu.dc=0 Appears fixed with DC on Linus master (4.15-rc).
This was indeed fixed in on Linus master.
Thank you very much for the DC work!
Cheers,
[0] https://www.spinics.net/lists/dri-devel/msg161258.html
dri-devel@lists.freedesktop.org