AMD developers worked for the better part of the past year on display code that's necessary to support new GPUs, as well as to add support for HDMI/DP audio, HDMI 2.0 and FreeSync. In total, AMD's Display Core (DC) consists of about 100,000 lines of code but Airlie refuses to add it because the code contains too many hardware abstraction layers (HAL). He argues these provide no benefit, they make maintaining the code a lot harder and dilute the quality of the Linux kernel:
The Linux kernel's DRM (Direct Rendering Manager) subsystem maintainer David Airlie of Red Hat has flat out rejected it. "No HALs. We don't do HALs in the kernel. We might do midlayers sometimes we try not to do midlayers. In the DRM we don't do either unless the maintainers are asleep. They might be worth the effort for AMD, however for the Linux kernel they don't provide a benefit and make maintaining the code a lot harder...Given the choice between maintaining Linus' trust that I won't merge 100,000 lines of abstracted HAL code and merging 100,000 lines of abstracted HAL code I'll give you one guess where my loyalties lie...I honestly don't think the code is Linux worthy code, and I also really dislike having to spend my Friday morning being negative about it, but hey at least I can have a shower now. No."Due to this veto, it looks like these features will not be supported on the Linux platform anytime soon. Furthermore, this unfortunate situation also means AMD's upcoming GPUs are unlikely to have any mainline kernel support at launch. Phoronix provides coverage of the ongoing issue at this page, the site explains AMD will need to rework the AMDGPU display code, but that's a massive undertaking given the limited amount of time the firm has when they're already stretched for resources.
He's not accepting this big display code rework for AMDGPU due to the abstractions with AMD trying to share this display code on Windows too
AMD's response can be read over here. Alex Deucher from AMD doesn't sound pleased at all and is pissed due to all the mud slinging going on right now. He points out AMD is finally close to delivering Linux drivers that are almost feature-complete in comparison with Windows, with support for Vega well before the official launch. His point of view is it would be better to care about stable functionality, rather than focusing on hazy goals and tinkering with making the code quality and style perfect.