summaryrefslogtreecommitdiffstats
path: root/meta-xilinx-core
diff options
context:
space:
mode:
authorSai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>2022-12-06 13:13:56 -0800
committerMark Hatle <mark.hatle@amd.com>2022-12-07 20:29:13 -0600
commitb0f11329f98957bed158e1b8415fb2f72eab72a0 (patch)
treeddc616086c2c5ad0ba33c76a830ad0b40ce05725 /meta-xilinx-core
parent9f3d0c183239b78a48125e0b02ac8e12602e979c (diff)
downloadmeta-xilinx-b0f11329f98957bed158e1b8415fb2f72eab72a0.tar.gz
vdu: Enable VDU IP in yocto
Enable VDU IP in yocto. Video Decode Unit (VDU) core is a Hard IP in Versal® AI Edge and Versal® AI Core series. The VDU core has multiple instance decoder cores (upto four cores) and are implemented as Hard IP in Versal® AI Edge and Versal® AI Core series. To enable this the following recipes are included: - kernel-module-vdu - vdu-firmware - vdu-ctrlsw Signed-off-by: Sai Hari Chandana Kalluri <chandana.kalluri@xilinx.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Diffstat (limited to 'meta-xilinx-core')
-rwxr-xr-xmeta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu.bb31
-rwxr-xr-xmeta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw.bb44
-rwxr-xr-xmeta-xilinx-core/recipes-multimedia/vdu/vdu-firmware.bb42
3 files changed, 117 insertions, 0 deletions
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu.bb b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu.bb
new file mode 100755
index 00000000..63dab807
--- /dev/null
+++ b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu.bb
@@ -0,0 +1,31 @@
1SUMMARY = "Linux kernel module for Video Decode Unit"
2DESCRIPTION = "Out-of-tree VDU decoder common kernel modules"
3SECTION = "kernel/modules"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a"
6
7XILINX_VDU_VERSION = "1.0.0"
8PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}"
9
10S = "${WORKDIR}/git"
11
12BRANCH ?= "master"
13REPO ?= "git://github.com/Xilinx/vdu-modules.git;protocol=https"
14SRCREV ?= "a3284231bf46fd32d57d6be35c197eb297e722c8"
15
16BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}"
17SRC_URI = "${REPO};${BRANCHARG}"
18
19inherit module features_check
20
21REQUIRED_MACHINE_FEATURES = "vdu"
22
23EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}"
24
25RDEPENDS:${PN} = "vdu-firmware"
26
27COMPATIBLE_MACHINE = "^$"
28COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core"
29COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge"
30
31PACKAGE_ARCH = "${SOC_FAMILY_ARCH}"
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw.bb b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw.bb
new file mode 100755
index 00000000..b2a5abc3
--- /dev/null
+++ b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw.bb
@@ -0,0 +1,44 @@
1SUMMARY = "Control Software for VDU"
2DESCRIPTION = "Control software libraries, test applications and headers provider for VDU"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE.md;md5=c15ae83ba15c4ab3fa4eb2c22975258f"
5
6XILINX_VDU_VERSION = "1.0.0"
7PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}"
8
9inherit autotools features_check
10
11REQUIRED_MACHINE_FEATURES = "vdu"
12
13BRANCH ?= "master"
14REPO ?= "git://github.com/Xilinx/vdu-ctrl-sw.git;protocol=https"
15SRCREV ?= "30977b11d7464a0472e7c8b7d55ed429daf110df"
16
17BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}"
18SRC_URI = "${REPO};${BRANCHARG}"
19
20S = "${WORKDIR}/git"
21
22COMPATIBLE_MACHINE = "^$"
23COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core"
24COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge"
25
26PACKAGE_ARCH = "${SOC_FAMILY_ARCH}"
27
28RDEPENDS:${PN} = "kernel-module-vdu"
29
30do_compile[dirs] = "${S}"
31do_install[dirs] = "${S}"
32
33EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'"
34EXTRA_OEMAKE +=" INSTALL_HDR_PATH=${D}${includedir}/vdu-ctrl-sw/include INSTALL_PATH=${D}${bindir}"
35
36do_install:append() {
37
38 oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/
39}
40
41# These libraries shouldn't get installed in world builds unless something
42# explicitly depends upon them.
43
44EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware.bb b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware.bb
new file mode 100755
index 00000000..91a324d9
--- /dev/null
+++ b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware.bb
@@ -0,0 +1,42 @@
1SUMMARY = "Firmware for VDU"
2DESCRIPTION = "Firmware binaries provider for VDU"
3LICENSE = "Proprietary"
4LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7ab4113b0b7ac6f3bd45429a8a6d5a58"
5
6XILINX_VDU_VERSION = "1.0.0"
7PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}"
8
9S = "${WORKDIR}/git"
10
11inherit autotools features_check
12
13REQUIRED_MACHINE_FEATURES = "vdu"
14
15BRANCH ?= "master"
16REPO ?= "git://github.com/Xilinx/vdu-firmware.git;protocol=https"
17SRCREV ?= "3d2ae1d8d9404dc18c64a4358d38ca049011a316"
18
19BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}"
20SRC_URI = "${REPO};${BRANCHARG}"
21
22COMPATIBLE_MACHINE = "^$"
23COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core"
24COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge"
25
26PACKAGE_ARCH = "${SOC_FAMILY_ARCH}"
27EXTRA_OEMAKE +="INSTALL_PATH=${D}/lib/firmware"
28
29do_compile[noexec] = "1"
30do_install[dirs] = "${S}"
31
32# Inhibit warnings about files being stripped
33INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
34INHIBIT_PACKAGE_STRIP = "1"
35FILES:${PN} = "/lib/firmware/*"
36
37
38# These libraries shouldn't get installed in world builds unless something
39# explicitly depends upon them.
40EXCLUDE_FROM_WORLD = "1"
41
42INSANE_SKIP:${PN} = "ldflags"