summaryrefslogtreecommitdiff
path: root/backports
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2021-05-03 21:47:20 +0200
committerMax Krummenacher <max.krummenacher@toradex.com>2021-05-05 17:19:28 +0200
commit617e4153cefc6bf170ed02c8d757f36baba705f7 (patch)
tree8093407dcfa73beabcb8c4d6d3d553e05513273d /backports
parent2fa2ddd6331e1b91f7462df62c6ba5061388880a (diff)
isp-imx: backport from master
Related-to: ELB-3957 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Diffstat (limited to 'backports')
-rw-r--r--backports/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch41
-rw-r--r--backports/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb86
2 files changed, 127 insertions, 0 deletions
diff --git a/backports/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch b/backports/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch
new file mode 100644
index 0000000..1b62afe
--- /dev/null
+++ b/backports/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch
@@ -0,0 +1,41 @@
+From 708f25cfe522df162c3e2c7c56cbe2f7000cb5e4 Mon Sep 17 00:00:00 2001
+From: Gary Bisson <gary.bisson@boundarydevices.com>
+Date: Mon, 14 Dec 2020 14:26:01 +0100
+Subject: [PATCH] start_isp.sh: fix test to be generic
+
+So that it works on EVK and any other i.MX 8M Plus platform.
+
+Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
+---
+ imx/start_isp.sh | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+Index: isp-imx-4.2.2.11.0/imx/start_isp.sh
+===================================================================
+--- isp-imx-4.2.2.11.0.orig/imx/start_isp.sh
++++ isp-imx-4.2.2.11.0/imx/start_isp.sh
+@@ -8,6 +8,7 @@
+
+ RUNTIME_DIR="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
+ NR_DEVICE_TREE_BASLER=$(grep basler-camera-vvcam /sys/firmware/devicetree/base/soc@0/*/i2c@*/*/compatible -l | wc -l 2> /dev/null)
++DMESG_BASLER=`dmesg | grep Basler`
+
+ # check if the basler device has been enabled in the device tree
+ if [ $NR_DEVICE_TREE_BASLER -eq 1 ]; then
+@@ -28,8 +29,15 @@ elif [ $NR_DEVICE_TREE_BASLER -eq 2 ]; t
+ # Available configurations: dual_basler_1080p60, dual_basler_1080p60hdr
+ exec ./run.sh -c dual_basler_1080p60 -lm
+
++elif [ ! -z "$DMESG_BASLER" ]; then
++
++ echo "Starting isp_media_server for generic Basler"
++
++ cd $RUNTIME_DIR
++ exec ./run.sh -c basler_1080p60
++
+ else
+ # no device tree found exit with code no device or address
+- echo "No device tree found for Basler, check dtb file!" >&2
++ echo "Basler camera not found!" >&2
+ exit 6
+ fi
diff --git a/backports/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb b/backports/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb
new file mode 100644
index 0000000..d82fa07
--- /dev/null
+++ b/backports/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb
@@ -0,0 +1,86 @@
+# Copyright 2020-2021 NXP
+
+DESCRIPTION = "i.MX Verisilicon Software ISP"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3c3fe2b904fd694f28d2f646ee16dddb"
+DEPENDS = "python3 libdrm virtual/libg2d"
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true \
+ file://0001-start_isp.sh-fix-test-to-be-generic.patch \
+"
+
+SRC_URI[md5sum] = "75f79ba556c47172b9a0cbc3a877e604"
+SRC_URI[sha256sum] = "28e2ee909f29a256c4eac87ef8336932d90a88a2a183389ac0868212954af42c"
+
+inherit fsl-eula-unpack cmake systemd use-imx-headers
+
+# Build the sub-folder appshell
+OECMAKE_SOURCEPATH = "${S}/appshell"
+
+# Use make instead of ninja
+OECMAKE_GENERATOR = "Unix Makefiles"
+
+SYSTEMD_SERVICE_${PN} = "imx8-isp.service"
+
+EXTRA_OECMAKE += " \
+ -DCMAKE_BUILD_TYPE=release \
+ -DISP_VERSION=ISP8000NANO_V1802 \
+ -DPLATFORM=ARM64 \
+ -DAPPMODE=V4L2 \
+ -DQTLESS=1 \
+ -DFULL_SRC_COMPILE=1 \
+ -DWITH_DRM=1 \
+ -DWITH_DWE=1 \
+ -DSERVER_LESS=1 \
+ -DSUBDEV_V4L2=1 \
+ -DENABLE_IRQ=1 \
+ -DPARTITION_BUILD=0 \
+ -D3A_SRC_BUILD=0 \
+ -DIMX_G2D=ON \
+ -Wno-dev \
+"
+
+do_configure_prepend() {
+ export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
+}
+
+do_install() {
+ install -d ${D}/${libdir}
+ install -d ${D}/${includedir}
+ install -d ${D}/opt/imx8-isp/bin
+
+ cp -r ${WORKDIR}/build/generated/release/bin/*_test ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/build/generated/release/bin/*2775* ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/build/generated/release/bin/isp_media_server ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/build/generated/release/bin/vvext ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/${BP}/dewarp/dewarp_config/ ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/build/generated/release/lib/*.so* ${D}/${libdir}
+ cp -r ${WORKDIR}/build/generated/release/include/* ${D}/${includedir}
+
+ cp ${WORKDIR}/${BP}/imx/run.sh ${D}/opt/imx8-isp/bin
+ cp ${WORKDIR}/${BP}/imx/start_isp.sh ${D}/opt/imx8-isp/bin
+
+ chmod +x ${D}/opt/imx8-isp/bin/run.sh
+ chmod +x ${D}/opt/imx8-isp/bin/start_isp.sh
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/${BP}/imx/imx8-isp.service ${D}${systemd_system_unitdir}
+ fi
+}
+
+# The build contains a mix of versioned and unversioned libraries, so
+# the default packaging configuration needs some modifications
+FILES_SOLIBSDEV = ""
+FILES_${PN} += "/opt ${libdir}/lib*${SOLIBSDEV}"
+FILES_${PN}-dev += " \
+ ${libdir}/libjsoncpp.so \
+ ${libdir}/libos08a20.so \
+ ${libdir}/libov2775.so \
+"
+
+INSANE_SKIP_${PN} = "rpaths"
+
+RDEPENDS_${PN} = "libdrm libpython3"
+
+COMPATIBLE_MACHINE = "(imx|use-nxp-bsp)"