From 5033081048aada0319e42e7cca40779c7941540a Mon Sep 17 00:00:00 2001 From: Naveen Saini Date: Thu, 4 Jul 2019 15:58:31 +0800 Subject: hdcp: add recipe Intel(R) unified HDCP (High-bandwidth Digital Content Protection) is a user space implementation to prevent copying of digital audio & video content across digital display interfaces. The Intel(R) unified HDCP is dependent on kernel space HDCP implementation to provide a complete stack to enable the HDCP1.4 and HDCP2.2 protection. HDCP2.2 service support is available kernel 5.2-rc onward. Currently 4.19 kernel and mainline-tracking (base branch) from Intel PKT does not have HDCP2.2 support. Signed-off-by: Naveen Saini Signed-off-by: Anuj Mittal --- .../hdcp/0001-main-fix-hdcpd-service-failure.patch | 42 ++++++++++++++++++++++ recipes-graphics/hdcp/hdcp_19.1.0.bb | 26 ++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch create mode 100644 recipes-graphics/hdcp/hdcp_19.1.0.bb (limited to 'recipes-graphics/hdcp') diff --git a/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch b/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch new file mode 100644 index 00000000..f07d466f --- /dev/null +++ b/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch @@ -0,0 +1,42 @@ +From 5cbcecff0bb7fa1c617d3082e7ad94c22e5f4eb1 Mon Sep 17 00:00:00 2001 +From: Naveen Saini +Date: Wed, 3 Jul 2019 17:13:15 +0800 +Subject: [PATCH] main: fix hdcpd service failure + +Child process not able to finish before parent process +exits, which causing hdcpd service failure. + +Added wait function to block parent process +until child process exits. + +Upstream-Status: Submitted[https://github.com/intel/hdcp/pull/17] + +Signed-off-by: Naveen Saini +--- + daemon/main.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/daemon/main.cpp b/daemon/main.cpp +index 9a028d7..ef1e047 100644 +--- a/daemon/main.cpp ++++ b/daemon/main.cpp +@@ -36,6 +36,7 @@ + #include + #include + #include ++#include + + #include "hdcpdef.h" + #include "srm.h" +@@ -93,6 +94,8 @@ int32_t daemon_init(void) + } + else if (pid != 0) + { ++ int status; ++ wait(&status); + exit(SUCCESS); // parent exit + } + +-- +2.17.1 + diff --git a/recipes-graphics/hdcp/hdcp_19.1.0.bb b/recipes-graphics/hdcp/hdcp_19.1.0.bb new file mode 100644 index 00000000..0ff0fcdd --- /dev/null +++ b/recipes-graphics/hdcp/hdcp_19.1.0.bb @@ -0,0 +1,26 @@ +SUMMARY = "Intel(R) unified HDCP SDK" +DESCRIPTION = "This is a user space implementation to prevent copying of \ +digital audio & video content across digital display interfaces. It provides \ +Linux user space implementation to enable the HDCP1.4 and HDCP2.2 protection \ +for external digital display interface" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.md;md5=c50969be4feb8b99c6baa3795ede4dce" +SECTION = "lib" + +inherit pkgconfig cmake useradd systemd distro_features_check + +SRC_URI = "git://github.com/intel/hdcp.git \ + file://0001-main-fix-hdcpd-service-failure.patch \ +" +SRCREV = "8543db04594d7a46ebc5a5fa14d5818bb1eb6327" +S = "${WORKDIR}/git" + +REQUIRED_DISTRO_FEATURES = "systemd" + +DEPENDS = "libdrm virtual/mesa systemd" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "--system --no-create-home --shell /bin/false --gid nogroup media" + +SYSTEMD_SERVICE_${PN} = "hdcpd.service" +SYSTEMD_AUTO_ENABLE = "disable" -- cgit v1.2.3-54-g00ecf