AMD Prepping Their HDCP 1.4 Content Protection Support For Raven Ridge & Newer
AMD developers have sent out their latest open-source Linux patches doing their kernel driver share for enabling High-bandwidth Digital Content Protection (HDCP) support for version 1.4 and newer.
While seeing HDCP support patches for open-source graphics drivers does irritate many in the community, similar to other open-source drivers supporting HDCP, this is only one part of the content protection puzzle. These patches alone do not impose any restrictions on users or other impairments, but mainly comes down to such proprietary software wanting to make use of HDCP capabilities on Linux. Open-source video players and the like can continue to enjoy GPU-based video acceleration uninterrupted.
So while there is a lot of opposition to Digital Rights Management and the likes of HDCP by the open-source community, having the support within the open-source graphics driver kernel code isn't limiting any current freedoms. But, on the other hand for the longevity of Linux driver support, this is actually good news. Presumably this recent HDCP work for the AMD Linux driver is due to more (or expected) design wins by the likes of Google with their Chromebooks.
Intel's open-source Linux graphics driver only began seeing HDCP work relatively recently when Google engineers were interested with the Intel support in the context of Chromebook support. Now with AMD getting their support in order, hopefully this means we'll be seeing more AMD SoCs within the likes of Chromebooks... Obviously AMD developers wouldn't be investing in this HDCP module for their AMDGPU Linux driver unless there was actual customer need: this latest HDCP addition is more than five thousand lines of new driver code.
For now this HDCP 1.4 implementation at least is targeting Raven Ridge APUs and newer. The patches are currently staged here and given their late timing for Linux 5.4 may very likely end up being material for Linux 5.5 -- as far as the AMDGPU DRM patches are concerned with some DRM-misc code already queued for the upcoming 5.4 cycle.
For free software purists, even though the default functionality shouldn't interrupt your viewing pleasures, the AMDGPU code does spin this addition of the HDCP module out as a new DRM_AMD_DC_HDCP Kconfig option to allow you to continue building a kernel without this functionality. Though based on the message of: "HDCP is not fully finished, so we need to be able to
build and run the driver without it." this Kconfig switch necessarily there for the long-term.