diff --git a/conf/machine/include/qcom-qcs8300.inc b/conf/machine/include/qcom-qcs8300.inc index c35db27dc..1de527c78 100644 --- a/conf/machine/include/qcom-qcs8300.inc +++ b/conf/machine/include/qcom-qcs8300.inc @@ -18,4 +18,7 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ packagegroup-qcom-boot-additional \ + qcom-rtss-mailbox-dlkm \ + qcom-rtss-mailbox-umd \ + qcom-rtss-mailbox-umd-utils \ " diff --git a/conf/machine/include/qcom-qcs9100.inc b/conf/machine/include/qcom-qcs9100.inc index 28c00b4f0..119d1edb2 100644 --- a/conf/machine/include/qcom-qcs9100.inc +++ b/conf/machine/include/qcom-qcs9100.inc @@ -14,6 +14,9 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ packagegroup-qcom-boot-additional \ + qcom-rtss-mailbox-dlkm \ + qcom-rtss-mailbox-umd \ + qcom-rtss-mailbox-umd-utils \ " # Memory layout needed by the SPL FIT boot flow. diff --git a/conf/machine/qcom-armv8a.conf b/conf/machine/qcom-armv8a.conf index 8262eec64..d77b0a974 100644 --- a/conf/machine/qcom-armv8a.conf +++ b/conf/machine/qcom-armv8a.conf @@ -88,6 +88,9 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ packagegroup-qcom-boot-additional \ + qcom-rtss-mailbox-dlkm \ + qcom-rtss-mailbox-umd \ + qcom-rtss-mailbox-umd-utils \ " # Modules and firmware for all supported machines diff --git a/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-dlkm_1.0.0.bb b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-dlkm_1.0.0.bb new file mode 100644 index 000000000..970113c19 --- /dev/null +++ b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-dlkm_1.0.0.bb @@ -0,0 +1,12 @@ +SUMMARY = "Qualcomm RTSS Mailbox Kernel Driver Module" +DESCRIPTION = "Dynamically Loadable Kernel Module (DLKM) for RTSS mailbox communication. \ +Provides mailbox IPC communication between APSS and RTSS. \ +NOTICE / LIMITATIONS: this driver is still being upstreamed and its uAPI \ +(rtss_mailbox_uapi.h) is not yet frozen and may change before upstream \ +acceptance - see rtss-mailbox-kmd's README for details." + +require qcom-rtss-mailbox-module-common.inc + +inherit module + +COMPATIBLE_MACHINE = "qcs8300|qcs9100|qcom-armv8a" diff --git a/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-module-common.inc b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-module-common.inc new file mode 100644 index 000000000..019a02482 --- /dev/null +++ b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-module-common.inc @@ -0,0 +1,6 @@ +HOMEPAGE = "https://github.com/qualcomm-linux/rtss-mailbox-kmd" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e" + +SRC_URI = "git://github.com/qualcomm-linux/rtss-mailbox-kmd.git;branch=rtss-mailbox-kernel.le.0.0;protocol=https;tag=v${PV}" +SRCREV = "9ce7c2f1ad860beb86e922e62b14fdcd178e129f" diff --git a/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-uapi-headers_1.0.0.bb b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-uapi-headers_1.0.0.bb new file mode 100644 index 000000000..b59bad749 --- /dev/null +++ b/recipes-kernel/qcom-rtss-mailbox-module/qcom-rtss-mailbox-uapi-headers_1.0.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "Qualcomm RTSS Mailbox UAPI headers" +DESCRIPTION = "IOCTL/struct definitions shared between the RTSS mailbox kernel \ +driver (rtss-mailbox-kmd) and userspace (rtss-mailbox-umd). Packaged \ +standalone so userspace can build against the UAPI without depending on \ +the kernel module recipe. \ +NOTICE / LIMITATIONS: this uAPI is not yet frozen and may change before \ +upstream acceptance - see rtss-mailbox-kmd's README for details." + +require qcom-rtss-mailbox-module-common.inc + +LICENSE = "GPL-2.0-only WITH Linux-syscall-note" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + oe_runmake headers_install INSTALL_HDR_PATH=${D}${exec_prefix} +} diff --git a/recipes-support/qcom-rtss-mailbox-umd/qcom-rtss-mailbox-umd_1.0.0.bb b/recipes-support/qcom-rtss-mailbox-umd/qcom-rtss-mailbox-umd_1.0.0.bb new file mode 100644 index 000000000..7cf541afa --- /dev/null +++ b/recipes-support/qcom-rtss-mailbox-umd/qcom-rtss-mailbox-umd_1.0.0.bb @@ -0,0 +1,19 @@ +SUMMARY = "Qualcomm RTSS Mailbox userspace middleware and tools" +DESCRIPTION = "Userspace middleware libraries and utilities for RTSS mailbox \ +IPC communication between APSS and RTSS." +HOMEPAGE = "https://github.com/qualcomm-linux/rtss-mailbox-umd" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=223037c4be0bfc6cf757035432adf983" + +SRC_URI = "git://github.com/qualcomm-linux/rtss-mailbox-umd.git;branch=rtss-mailbox-usr.le.0.0;protocol=https;tag=v${PV}" +SRCREV = "667fbda29be9e4d09ff5dd1b35e8dfda17a6ed63" + +inherit cmake + +DEPENDS = "qcom-rtss-mailbox-uapi-headers glib-2.0" + +PACKAGE_BEFORE_PN += "${PN}-utils" + +RRECOMMENDS:${PN} += "kernel-module-rtss-mailbox" + +FILES:${PN}-utils = "${bindir}"