AMDGPU DC Display Code Updated In amd-staging-drm-next

Written by Michael Larabel in Radeon on 3 August 2017 at 05:06 PM EDT. 26 Comments
RADEON
The massive set of AMDGPU "DC" (formerly "DAL") display code has been re-based against their work-in-progress Linux 4.14 DRM code and is residing in amd-staging-drm-next.

A sharp-eyed Phoronix reader spotted the DC code being re-based in amd-staging-drm-next as of two hours ago. This code is in turn now re-based off the work-in-progress code for what AMD intends to get mainline for the Linux 4.14 kernel. But note that this isn't the branch for drm-next-4.14 nor drm-next-4.14-wip.

These latest patches just refer to the big DC codebase as "drm/amd/display" with AMD trying to get rid of the DC name and the DAL name also being invalid, just calling it now as display code.

This massive display code patch-set is more than 600 patches. When working to figure out the rough size of this massive display code rework for the Direct Rendering Manager driver... According to Git, it roughly comes down to 361 files changed, 126506 insertions(+), 75 deletions(-). Over 126,000 lines of new code in the kernel for this new AMDGPU display stack.

In terms of the overall size of AMDGPU DRM now, the drivers/gpu/drm/amd/amdgpu comes down to 160,660 lines. The drivers/gpu/drm/amd/display directory is at 126,074 lines. The drivers/gpu/drm/amd/include that includes the large header files for AMD GPUs is 1,101,405 lines. Lastly, the PowerPlay directory is 84.014 lines. (The older "Radeon" DRM driver in comparison is about 204,173 lines.)

It will be interesting to see what's next if AMD is planning soon to get this display code under public review on dri-devel. They will need to get other upstream developers to review this code before it would be accepted to mainline Linux/DRM and that is still uncertain given abstractions in the display code. Even if they send the code out for review now, the time it takes to review this massive series will be a while. With David Airlie cutting DRM-Next merge material a few weeks prior to the next kernel release, time is getting incredibly short for it to be ready for Linux 4.14. Perhaps more likely would be seeing it in Linux 4.15. Even if it does get into DRM-Next, it could also be rejected by Linus Torvalds during the merge window if he's happy about a combination of the size / code quality / abstractions, so it's a big unknown right now when this code will actually make it to a kernel near you.

This display code is now highly sought after for the mainline Linux kernel as without it, Radeon RX Vega graphics cards can't drive any physical monitors/displays from the mainline kernel (short of building a branched kernel yourself or installing AMDGPU-PRO, if supported by your distribution). Additionally, this code delivers on the longawaited HDMI/DP audio for modern Radeon GPUs, HDMI 2.0, atomic mode-setting, FreeSync, and other modern display functionality.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week