From: Devarsh Thakkar <devar...@xilinx.com>

Add new recipes for the following:

vcu-firmware_git.bb: Add a new recipe to fetch the required firmware
binaries for VCU

kernel-module-vcu_git.bb: Add new recipe for out-of-tree kernel module
required for VCU decoder, encoder. This is applicable to MPSoC EV
devices which support Video Codec Unit

libvcu-xlnx_git.bb: Add a new recipe for control software libraries,
test applications and headers for VCU

libomxil-xlnx_git.bb: Add VCU hwcodec, this contain the OpenMAX
libraries, test applications and headers for VCU

Signed-off-by: Devarsh Thakkar <devar...@xilinx.com>
Signed-off-by: Jeegar Patel <jeegar.pa...@xilinx.com>
Tested-by: Maulik Desai <maulik.de...@xilinx.com>
Acked-by: Varunkumar Allagadapa <varun...@xilinx.com>
Reviewed-by: Bhargava Sreekantappa Gayathri 
<bhargava.sreekantappa-gayat...@xilinx.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-ma...@xilinx.com>
---
 .../vcu/kernel-module-vcu_git.bb                   | 26 +++++++++++++
 .../recipes-multimedia/vcu/libomxil-xlnx_git.bb    | 45 ++++++++++++++++++++++
 .../recipes-multimedia/vcu/libvcu-xlnx_git.bb      | 37 ++++++++++++++++++
 .../recipes-multimedia/vcu/vcu-firmware_git.bb     | 37 ++++++++++++++++++
 4 files changed, 145 insertions(+)
 create mode 100644 
meta-xilinx-bsp/recipes-multimedia/vcu/kernel-module-vcu_git.bb
 create mode 100644 meta-xilinx-bsp/recipes-multimedia/vcu/libomxil-xlnx_git.bb
 create mode 100644 meta-xilinx-bsp/recipes-multimedia/vcu/libvcu-xlnx_git.bb
 create mode 100644 meta-xilinx-bsp/recipes-multimedia/vcu/vcu-firmware_git.bb

diff --git a/meta-xilinx-bsp/recipes-multimedia/vcu/kernel-module-vcu_git.bb 
b/meta-xilinx-bsp/recipes-multimedia/vcu/kernel-module-vcu_git.bb
new file mode 100644
index 0000000..cfd99d9
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-multimedia/vcu/kernel-module-vcu_git.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Linux kernel module for Video Code Unit"
+DESCRIPTION = "Out-of-tree VCU decoder, encoder and common kernel modules 
provider for MPSoC EV devices"
+SECTION = "kernel/modules"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a"
+
+XILINX_VCU_VERSION = "1.0.0"
+PV = "${XILINX_VCU_VERSION}"
+
+S = "${WORKDIR}/git"
+
+BRANCH ?= "master"
+REPO ?= "git://github.com/xilinx/vcu-modules.git;protocol=https"
+SRCREV ?= "646185390cc1850969c0fa3db59fc8f0e511922e"
+
+BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != 
'']}"
+SRC_URI = "${REPO};${BRANCHARG}"
+
+inherit module
+
+EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}"
+
+RDEPENDS_${PN} = "vcu-firmware"
+
+COMPATIBLE_MACHINE = "^$"
+COMPATIBLE_MACHINE_zynqmp = "zynqmp"
diff --git a/meta-xilinx-bsp/recipes-multimedia/vcu/libomxil-xlnx_git.bb 
b/meta-xilinx-bsp/recipes-multimedia/vcu/libomxil-xlnx_git.bb
new file mode 100644
index 0000000..0c5e5d4
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-multimedia/vcu/libomxil-xlnx_git.bb
@@ -0,0 +1,45 @@
+SUMMARY = "OpenMAX Integration layer for VCU"
+DESCRIPTION = "OMX IL Libraries,test applications and headers for VCU"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=03a7aef7e6f6a76a59fd9b8ba450b493"
+
+BRANCH ?= "master"
+REPO   ?= "git://github.com/xilinx/vcu-omx-il.git;protocol=https"
+SRCREV ?= "68e385ace99ab699feaa50f24b7a78680c411f75"
+
+BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != 
'']}"
+SRC_URI = "${REPO};${BRANCHARG}"
+
+S  = "${WORKDIR}/git"
+
+COMPATIBLE_MACHINE = "^$"
+COMPATIBLE_MACHINE_zynqmp = "zynqmp"
+
+DEPENDS = "libvcu-xlnx"
+RDEPENDS_${PN} = "kernel-module-vcu libvcu-xlnx"
+
+EXTERNAL_INCLUDE="${STAGING_INCDIR}/vcu-ctrl-sw/include"
+
+EXTRA_OEMAKE = " \
+    CC='${CC}' CXX='${CXX} ${CXXFLAGS}' \
+    EXTERNAL_INCLUDE='${EXTERNAL_INCLUDE}' \
+    "
+
+do_install() {
+    install -d ${D}${libdir}
+    install -d ${D}${includedir}/vcu-omx-il
+
+    install -m 0644 ${S}/omx_header/*.h ${D}${includedir}/vcu-omx-il
+
+    install -Dm 0755 ${S}/bin/omx_decoder.exe ${D}/${bindir}/omx_decoder.exe
+    install -Dm 0755 ${S}/bin/omx_encoder.exe ${D}/${bindir}/omx_encoder.exe
+
+    oe_libinstall -C ${S}/bin/ -so libOMX.allegro.core ${D}/${libdir}/
+    oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_decoder ${D}/${libdir}/
+    oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_encoder ${D}/${libdir}/
+}
+
+# These libraries shouldn't get installed in world builds unless something
+# explicitly depends upon them.
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-xilinx-bsp/recipes-multimedia/vcu/libvcu-xlnx_git.bb 
b/meta-xilinx-bsp/recipes-multimedia/vcu/libvcu-xlnx_git.bb
new file mode 100644
index 0000000..ea8b994
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-multimedia/vcu/libvcu-xlnx_git.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Control Software for VCU"
+DESCRIPTION = "Control software libraries, test applications and headers 
provider for VCU"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=03a7aef7e6f6a76a59fd9b8ba450b493"
+
+BRANCH ?= "master"
+REPO   ?= "git://github.com/xilinx/vcu-ctrl-sw.git;protocol=https"
+SRCREV = "aa4b6871346c915f28a069190afec5d30963762f"
+
+BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != 
'']}"
+SRC_URI = "${REPO};${BRANCHARG}"
+
+S  = "${WORKDIR}/git"
+
+COMPATIBLE_MACHINE = "^$"
+COMPATIBLE_MACHINE_zynqmp = "zynqmp"
+
+RDEPENDS_${PN} = "kernel-module-vcu"
+
+EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'"
+
+do_install() {
+    install -d ${D}${libdir}
+    install -d ${D}${includedir}/vcu-ctrl-sw/include
+
+    install -Dm 0755 ${S}/bin/AL_Encoder.exe ${D}/${bindir}/AL_Encoder.exe
+    install -Dm 0755 ${S}/bin/AL_Decoder.exe ${D}/${bindir}/AL_Decoder.exe
+
+    oe_runmake install_headers 
INSTALL_HDR_PATH=${D}${includedir}/vcu-ctrl-sw/include
+    oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/
+    oe_libinstall -C ${S}/bin/ -so liballegro_encode ${D}/${libdir}/
+}
+
+# These libraries shouldn't get installed in world builds unless something
+# explicitly depends upon them.
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-xilinx-bsp/recipes-multimedia/vcu/vcu-firmware_git.bb 
b/meta-xilinx-bsp/recipes-multimedia/vcu/vcu-firmware_git.bb
new file mode 100644
index 0000000..360f0bb
--- /dev/null
+++ b/meta-xilinx-bsp/recipes-multimedia/vcu/vcu-firmware_git.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Firmware for VCU"
+DESCRIPTION = "Firmware binaries provider for VCU"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=63b45903a9a50120df488435f03cf498"
+
+XILINX_VCU_VERSION = "1.0.0"
+PV = "${XILINX_VCU_VERSION}+git${SRCPV}"
+
+S  = "${WORKDIR}/git"
+
+BRANCH ?= "master"
+REPO ?= "git://github.com/xilinx/vcu-firmware.git;protocol=https"
+SRCREV ?= "7c6f282da07253c1987665846ed676059925ef40"
+
+BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != 
'']}"
+SRC_URI   = "${REPO};${BRANCHARG}"
+
+COMPATIBLE_MACHINE = "^$"
+COMPATIBLE_MACHINE_zynqmp = "zynqmp"
+
+do_install() {
+    install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d_b.fw 
${D}/lib/firmware/al5d_b.fw
+    install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d.fw 
${D}/lib/firmware/al5d.fw
+    install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e_b.fw 
${D}/lib/firmware/al5e_b.fw
+    install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e.fw 
${D}/lib/firmware/al5e.fw
+}
+
+# Inhibit warnings about files being stripped
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+FILES_${PN} = "/lib/firmware/*"
+
+# These libraries shouldn't get installed in world builds unless something
+# explicitly depends upon them.
+EXCLUDE_FROM_WORLD = "1"
+
+INSANE_SKIP_${PN} = "ldflags"
-- 
2.7.4

-- 
_______________________________________________
meta-xilinx mailing list
meta-xilinx@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-xilinx

Reply via email to