summaryrefslogtreecommitdiffstats
path: root/recipes-bsp/isp-imx
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-bsp/isp-imx')
-rw-r--r--recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb (renamed from recipes-bsp/isp-imx/basler-camera_4.2.2.24.0.bb)16
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-cpp-netlib-parsers.ipp-add-missing-include.patch44
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch32
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch134
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch37
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch51
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch36
-rw-r--r--recipes-bsp/isp-imx/isp-imx_4.2.2.24.0.bb105
-rw-r--r--recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb102
9 files changed, 403 insertions, 154 deletions
diff --git a/recipes-bsp/isp-imx/basler-camera_4.2.2.24.0.bb b/recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb
index 0ab440748..012e1f2b7 100644
--- a/recipes-bsp/isp-imx/basler-camera_4.2.2.24.0.bb
+++ b/recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb
@@ -1,17 +1,23 @@
1# Copyright 2020-2023 NXP 1# Copyright (C) 2020-2024 NXP
2 2
3DESCRIPTION = "Basler camera binary drivers" 3DESCRIPTION = "Basler camera binary drivers"
4LICENSE = "Proprietary" 4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=2827219e81f28aba7c6a569f7c437fa7" 5LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359"
6
7IMX_SRCREV_ABBREV = "dd86758"
6 8
7inherit fsl-eula-unpack 9inherit fsl-eula-unpack
8 10
9SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" 11SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
12
13SRC_URI[sha256sum] = "aa86adeb0c53c3306f7e1c004ffa78ebb7db3e9136c78759e4029b4b5e1b1a64"
14
15S = "${UNPACKDIR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}"
10 16
11SRC_URI[md5sum] = "31d716e1f40c248556e5a8e6b467ba71" 17do_compile[noexec] = "1"
12SRC_URI[sha256sum] = "ad3e98ee0c10f2b3e74af8923f44b8d5908e42eedbca12a702e35cee9328d8cf"
13 18
14do_install() { 19do_install() {
20 oe_runmake install INSTALL_DIR=${D}
15 dest_dir=${D}/opt/imx8-isp/bin 21 dest_dir=${D}/opt/imx8-isp/bin
16 install -d ${D}/${libdir} 22 install -d ${D}/${libdir}
17 install -d $dest_dir 23 install -d $dest_dir
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-cpp-netlib-parsers.ipp-add-missing-include.patch b/recipes-bsp/isp-imx/isp-imx/0001-cpp-netlib-parsers.ipp-add-missing-include.patch
deleted file mode 100644
index 3f04000cf..000000000
--- a/recipes-bsp/isp-imx/isp-imx/0001-cpp-netlib-parsers.ipp-add-missing-include.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From 15aae364fb52df30e4a49e73e2048fdc633e6868 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Sun, 8 Oct 2023 09:15:54 -0300
4Subject: [PATCH] cpp-netlib: parsers.ipp: add missing include
5
6With the update to boost from 1.82.0 -> 1.83.0 we now get compiler errors:
7
8| .../isp-imx/4.2.2.22.0/isp-imx-4.2.2.22.0/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp:58:3: error: 'u8_to_u32_iterator' was not declared in this scope
9
10Add the missing explicit include. Before the file was indirectly included from qi.hpp:
11
12| In file included from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/regex/pending/unicode_iterator.hpp:27,
13| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/support/utf8.hpp:15,
14| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/support/info.hpp:17,
15| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/qi/domain.hpp:16,
16| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/qi/meta_compiler.hpp:15,
17| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/qi/action/action.hpp:14,
18| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/qi/action.hpp:14,
19| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/home/qi.hpp:14,
20| from .../isp-imx/4.2.2.22.0/recipe-sysroot/usr/include/boost/spirit/include/qi.hpp:16,
21| from .../isp-imx/4.2.2.22.0/isp-imx-4.2.2.22.0/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp:5,
22
23Upstream-Status: Pending
24
25Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
26---
27 .../boost/network/protocol/http/server/impl/parsers.ipp | 1 +
28 1 file changed, 1 insertion(+)
29
30diff --git a/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp b/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp
31index c31e60e..2b83fbe 100755
32--- a/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp
33+++ b/utils3rd/3rd/cpp-netlib/boost/network/protocol/http/server/impl/parsers.ipp
34@@ -13,6 +13,7 @@
35 #include <tuple>
36 #include <boost/fusion/include/std_tuple.hpp>
37 #include <boost/network/protocol/http/message/header.hpp>
38+#include <boost/regex/pending/unicode_iterator.hpp>
39
40 #ifdef BOOST_NETWORK_NO_LIB
41 #ifndef BOOST_NETWORK_INLINE
42--
432.35.3
44
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
new file mode 100644
index 000000000..617abde6f
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
@@ -0,0 +1,32 @@
1From d24c74528fefd1316f1633f0a7f1a5acea40454f Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Thu, 19 Jan 2023 15:51:24 +0000
4Subject: [PATCH 1/5] isp-imx: start_isp: don't report error if no camera is
5 configured
6
7The script currently returns '6' when no known camera is configured
8in the device tree. The end result is that the systemd imx8-isp.service
9goes to the failed state.
10Return '0' in that case as obviously the device tree doesn't have a
11camera configured and the service is not needed.
12
13Upstream-Status: Pending
14Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
15---
16 imx/start_isp.sh | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/imx/start_isp.sh b/imx/start_isp.sh
20index d544b4ca2a57..22e7783437d6 100755
21--- a/imx/start_isp.sh
22+++ b/imx/start_isp.sh
23@@ -72,5 +72,5 @@ elif [ $NR_DEVICE_TREE_OS08A20 -eq 2 ]; then
24 else
25 # no device tree found exit with code no device or address
26 echo "No device tree found for Basler camera or os08a20, check dtb file!" >&2
27- exit 6
28+ exit 0
29 fi
30--
312.42.0
32
diff --git a/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch b/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch
new file mode 100644
index 000000000..38b3b6b02
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch
@@ -0,0 +1,134 @@
1From 5b69b60bd4d0d5ed1474c6457561d48cdbabc778 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 09:19:58 +0000
4Subject: [PATCH 2/5] appshell: cmake: bump min version to 3.5
5
6CMake 4 no longer supports min version set to before 3.5
7
8| CMake Error at CMakeLists.txt:28 (cmake_minimum_required):
9| Compatibility with CMake < 3.5 has been removed from CMake.
10
11Upstream-Status: Pending
12Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
13---
14 appshell/CMakeLists.txt | 2 +-
15 appshell/display/CMakeLists.txt | 2 +-
16 appshell/display/wayland-client/CMakeLists.txt | 2 +-
17 appshell/v4l_drm_test/CMakeLists.txt | 2 +-
18 appshell/vvext/CMakeLists.txt | 2 +-
19 appshell/yuv/CMakeLists.txt | 2 +-
20 units/CMakeLists.txt | 2 +-
21 units/isi/CMakeLists.txt | 2 +-
22 units/isi/drv/OS08a20/CMakeLists.txt | 2 +-
23 units/isi/drv/OS08a20/calib/CMakeLists.txt | 2 +-
24 10 files changed, 10 insertions(+), 10 deletions(-)
25
26diff --git a/appshell/CMakeLists.txt b/appshell/CMakeLists.txt
27index 22092ce975b5..cf14e254c812 100644
28--- a/appshell/CMakeLists.txt
29+++ b/appshell/CMakeLists.txt
30@@ -25,7 +25,7 @@
31 # *****************************************************************************/
32
33
34-cmake_minimum_required(VERSION 3.1.0)
35+cmake_minimum_required(VERSION 3.5.0)
36 project(ISP_APP_SHELL)
37
38 if(DEFINED QTLESS)
39diff --git a/appshell/display/CMakeLists.txt b/appshell/display/CMakeLists.txt
40index 491f086adf55..458a46b165b4 100755
41--- a/appshell/display/CMakeLists.txt
42+++ b/appshell/display/CMakeLists.txt
43@@ -1,4 +1,4 @@
44-cmake_minimum_required(VERSION 2.6)
45+cmake_minimum_required(VERSION 3.6)
46
47 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fPIC")
48
49diff --git a/appshell/display/wayland-client/CMakeLists.txt b/appshell/display/wayland-client/CMakeLists.txt
50index 78247528b0e4..0639d79d8346 100644
51--- a/appshell/display/wayland-client/CMakeLists.txt
52+++ b/appshell/display/wayland-client/CMakeLists.txt
53@@ -1,4 +1,4 @@
54-cmake_minimum_required(VERSION 2.6)
55+cmake_minimum_required(VERSION 3.6)
56
57 set(WAYLAND_XML_PRIFIX ${SDKTARGETSYSROOT}/usr/share/wayland-protocols)
58 set(GEN_INSTALL_PREFIX ${PROJECT_SOURCE_DIR}/display/wayland-client)
59diff --git a/appshell/v4l_drm_test/CMakeLists.txt b/appshell/v4l_drm_test/CMakeLists.txt
60index cf4685c84204..309e5d465e99 100755
61--- a/appshell/v4l_drm_test/CMakeLists.txt
62+++ b/appshell/v4l_drm_test/CMakeLists.txt
63@@ -1,4 +1,4 @@
64-cmake_minimum_required(VERSION 2.6)
65+cmake_minimum_required(VERSION 3.5)
66
67 project(ISP_V4L_DRM_TEST)
68 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
69diff --git a/appshell/vvext/CMakeLists.txt b/appshell/vvext/CMakeLists.txt
70index a5d6c12929fa..63c1eb5f7073 100755
71--- a/appshell/vvext/CMakeLists.txt
72+++ b/appshell/vvext/CMakeLists.txt
73@@ -1,4 +1,4 @@
74-cmake_minimum_required(VERSION 2.6)
75+cmake_minimum_required(VERSION 3.5)
76
77 project(ISP_V4L_DRM_TEST)
78 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
79diff --git a/appshell/yuv/CMakeLists.txt b/appshell/yuv/CMakeLists.txt
80index 131766fcb5d4..0f3591918e08 100755
81--- a/appshell/yuv/CMakeLists.txt
82+++ b/appshell/yuv/CMakeLists.txt
83@@ -1,4 +1,4 @@
84-cmake_minimum_required(VERSION 2.6)
85+cmake_minimum_required(VERSION 3.5)
86 set (CMAKE_CXX_FLAGS_DEBUG "")
87 set (CMAKE_C_FLAGS_DEBUG "")
88
89diff --git a/units/CMakeLists.txt b/units/CMakeLists.txt
90index 37fa65ed4ea8..10abbef1c16c 100755
91--- a/units/CMakeLists.txt
92+++ b/units/CMakeLists.txt
93@@ -24,7 +24,7 @@
94 # *
95 # *****************************************************************************/
96
97-cmake_minimum_required(VERSION 3.1.0)
98+cmake_minimum_required(VERSION 3.5.0)
99 project(ISPcore_SW_STACK)
100 if( NOT DEFINED APPSHELL_TOP_COMPILE)
101
102diff --git a/units/isi/CMakeLists.txt b/units/isi/CMakeLists.txt
103index a91699b4a1a5..ea01aa7d9424 100755
104--- a/units/isi/CMakeLists.txt
105+++ b/units/isi/CMakeLists.txt
106@@ -1,4 +1,4 @@
107-cmake_minimum_required(VERSION 2.6)
108+cmake_minimum_required(VERSION 3.5)
109
110 # define module name
111 set (module isi)
112diff --git a/units/isi/drv/OS08a20/CMakeLists.txt b/units/isi/drv/OS08a20/CMakeLists.txt
113index d27dc97f7945..12c6e9ef993a 100755
114--- a/units/isi/drv/OS08a20/CMakeLists.txt
115+++ b/units/isi/drv/OS08a20/CMakeLists.txt
116@@ -1,4 +1,4 @@
117-cmake_minimum_required(VERSION 2.6)
118+cmake_minimum_required(VERSION 3.5)
119
120 # define module name & interface version
121 set (module os08a20)
122diff --git a/units/isi/drv/OS08a20/calib/CMakeLists.txt b/units/isi/drv/OS08a20/calib/CMakeLists.txt
123index b44b08248135..18119086b967 100755
124--- a/units/isi/drv/OS08a20/calib/CMakeLists.txt
125+++ b/units/isi/drv/OS08a20/calib/CMakeLists.txt
126@@ -1,4 +1,4 @@
127-cmake_minimum_required(VERSION 2.6)
128+cmake_minimum_required(VERSION 3.5)
129
130 # use upper level module name
131
132--
1332.42.0
134
diff --git a/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch b/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch
new file mode 100644
index 000000000..f11deb758
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch
@@ -0,0 +1,37 @@
1From db07010535d47d7d7eaf3865d97dcec045e19930 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 09:57:22 +0000
4Subject: [PATCH 3/5] appshell: cmake: drop deprecated use of
5 target_link_libraries
6
7Works around:
8
9| CMake Error at display/CMakeLists.txt:48 (target_link_libraries):
10| Cannot specify link libraries for target "wayland-client" which is not
11| built by this project.
12
13caused by CMake 4 deprecating https://cmake.org/cmake/help/v3.5/policy/CMP0016.html
14
15CMP0016 states that the command is silently ignored, thus drop it.
16
17Upstream-Status: Pending
18Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
19---
20 appshell/display/CMakeLists.txt | 1 -
21 1 file changed, 1 deletion(-)
22
23diff --git a/appshell/display/CMakeLists.txt b/appshell/display/CMakeLists.txt
24index 458a46b165b4..160755312368 100755
25--- a/appshell/display/CMakeLists.txt
26+++ b/appshell/display/CMakeLists.txt
27@@ -43,7 +43,6 @@ if (WAYLAND_SUPPORT)
28 file(GLOB pub_headers *.h)
29 file(GLOB libsources *.cpp ./wayland-client/*.c)
30 include_directories(./wayland-client)
31- target_link_libraries(wayland-client)
32 else (WAYLAND_SUPPORT)
33 file(GLOB pub_headers *.h)
34 file(GLOB libsources *.cpp)
35--
362.42.0
37
diff --git a/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch b/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch
new file mode 100644
index 000000000..087f24090
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch
@@ -0,0 +1,51 @@
1From d7e06f57c067e50d86369577b8dc3bccdde6fd40 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 10:44:40 +0000
4Subject: [PATCH 4/5] units/targets.cmake: fix check if a target exists
5
6| CMake Error at units/targets.cmake:35 (get_target_property):
7| get_target_property() called with non-existent target "lib".
8
9Upstream-Status: Pending
10Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
11---
12 units/targets.cmake | 9 +++------
13 1 file changed, 3 insertions(+), 6 deletions(-)
14
15diff --git a/units/targets.cmake b/units/targets.cmake
16index 663a024d9129..d78dbf8b8a45 100755
17--- a/units/targets.cmake
18+++ b/units/targets.cmake
19@@ -32,8 +32,7 @@ add_dependencies(create_alldir ${module}_create_dir)
20 # Settings for target LIB
21 ###############################################################################
22 # check if lib target already exists and create it, this is to assure that only one target called lib will be generated
23-get_target_property(LIB_TARGET lib TYPE)
24-if(NOT LIB_TARGET)
25+if(NOT TARGET lib)
26 add_custom_target(lib)
27 endif()
28 # the library itself is a dependency for the target lib
29@@ -83,8 +82,7 @@ if(HAVE_PUBLIC_HEADERS)
30 endif()
31
32 # check if lib_install target already exists and create it
33-get_target_property(LIB_INSTALL_TARGET lib_install TYPE)
34-if(NOT LIB_INSTALL_TARGET)
35+if(NOT TARGET lib_install)
36 add_custom_target(lib_install)
37 endif()
38
39@@ -104,8 +102,7 @@ add_custom_target(${module}_copy_header
40 COMMENT "Copying Headers of ${module}")
41
42 # check if copy_header target already exists and create it
43-get_target_property(COPY_HEADER_TARGET copy_header TYPE)
44-if(NOT COPY_HEADER_TARGET)
45+if(NOT TARGET copy_header)
46 add_custom_target(copy_header)
47 endif()
48 # if copy_header is selected, modulename_copy_header target must be created
49--
502.42.0
51
diff --git a/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch b/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch
new file mode 100644
index 000000000..f4b44ff47
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch
@@ -0,0 +1,36 @@
1From 72d6160d1efc9df8bdee4e3dc9da67560f2206b4 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 10:52:52 +0000
4Subject: [PATCH 5/5] units: cmake: fix use of add_dependencies
5
6With CMake 4 we get during configure:
7
8| CMake Error at isp-imx/4.2.2.25.2/sources/isp-imx-4.2.2.25.2-3cac1fb:
9| The dependency target "drv/OS08a20" of target "copy_shell_libs_isi" does
10| not exist.
11
12Comment out that the add_dependencies. The driver for OS08a20 is still
13part of the built packages.
14
15Upstream-Status: Pending
16Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
17---
18 units/isi/CMakeLists.txt | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21diff --git a/units/isi/CMakeLists.txt b/units/isi/CMakeLists.txt
22index ea01aa7d9424..2f5c3d803e67 100755
23--- a/units/isi/CMakeLists.txt
24+++ b/units/isi/CMakeLists.txt
25@@ -93,7 +93,7 @@ add_custom_target(copy_shell_libs_${module} ALL
26 COMMAND ${CMAKE_COMMAND} -E copy ${UNITS_TOP_DIRECTORY}/isi/drv/*/*.cfg ${LIB_ROOT}/${CMAKE_BUILD_TYPE}/bin/
27 COMMAND ${CMAKE_COMMAND} -E copy ${UNITS_TOP_DIRECTORY}/isi/drv/*.cfg ${LIB_ROOT}/${CMAKE_BUILD_TYPE}/bin/
28 )
29-add_dependencies(copy_shell_libs_${module} drv/OS08a20)
30+#add_dependencies(copy_shell_libs_${module} os08a20_shared)
31
32 endif (GENERATE_PARTITION_BUILD)
33
34--
352.42.0
36
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.24.0.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.24.0.bb
deleted file mode 100644
index 9e0f02656..000000000
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.24.0.bb
+++ /dev/null
@@ -1,105 +0,0 @@
1# Copyright 2020-2023 NXP
2
3DESCRIPTION = "i.MX Verisilicon Software ISP"
4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=2827219e81f28aba7c6a569f7c437fa7"
6DEPENDS = "boost libdrm virtual/libg2d libtinyxml2 patchelf-native"
7
8SRC_URI = " \
9 ${FSL_MIRROR}/${BP}.bin;fsl-eula=true \
10 file://0001-cpp-netlib-parsers.ipp-add-missing-include.patch \
11"
12
13SRC_URI[sha256sum] = "34b23f5b9f0856a8f5722e339a7ad4ccf4d99614788598306ff8b20093c1e846"
14
15inherit fsl-eula-unpack cmake systemd use-imx-headers
16
17# Build the sub-folder appshell
18OECMAKE_SOURCEPATH = "${S}/appshell"
19
20# Use make instead of ninja
21OECMAKE_GENERATOR = "Unix Makefiles"
22
23# Workaround for linking issues seen with gold linker
24LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
25
26SYSTEMD_SERVICE:${PN} = "imx8-isp.service"
27
28EXTRA_OECMAKE += " \
29 -DSDKTARGETSYSROOT=${STAGING_DIR_HOST} \
30 -DCMAKE_BUILD_TYPE=release \
31 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
32 -DCMAKE_INSTALL_LIBDIR=${libdir} \
33 -DISP_VERSION=ISP8000NANO_V1802 \
34 -DPLATFORM=ARM64 \
35 -DAPPMODE=V4L2 \
36 -DTUNINGEXT=1 \
37 -DQTLESS=1 \
38 -DFULL_SRC_COMPILE=1 \
39 -DWITH_DRM=1 \
40 -DWITH_DWE=1 \
41 -DSERVER_LESS=1 \
42 -DSUBDEV_V4L2=1 \
43 -DENABLE_IRQ=1 \
44 -DPARTITION_BUILD=0 \
45 -D3A_SRC_BUILD=0 \
46 -DIMX_G2D=ON \
47 -Wno-dev \
48"
49
50do_configure:prepend () {
51 # FIXME: Should be rebuild.
52 patchelf --replace-needed libtinyxml2.so.9 libtinyxml2.so.10 ${S}/units/cam_device/proprietories/lib/libcam_device.so
53 patchelf --replace-needed libtinyxml2.so.9 libtinyxml2.so.10 ${S}/mediacontrol/lib/arm-64/fpga/libcam_device.so
54}
55
56do_install() {
57 # FIXME: provided by the basler-camera package, do not install them here additionally
58 rm -f ${S}/dewarp/dewarp_config//daA3840_30mc*.json
59
60 install -d ${D}/${libdir}
61 install -d ${D}/${includedir}
62 install -d ${D}/opt/imx8-isp/bin
63 install -d ${D}/opt/imx8-isp/bin/dewarp_config
64
65 cp -r ${B}/generated/release/bin/*_test ${D}/opt/imx8-isp/bin
66 cp -r ${B}/generated/release/bin/*.xml ${D}/opt/imx8-isp/bin
67 cp -r ${B}/generated/release/bin/*.drv ${D}/opt/imx8-isp/bin
68 cp -r ${B}/generated/release/bin/tuningext ${D}/opt/imx8-isp/bin
69 cp -r ${B}/generated/release/bin/isp_media_server ${D}/opt/imx8-isp/bin
70 cp -r ${B}/generated/release/bin/vvext ${D}/opt/imx8-isp/bin
71
72 cp -r ${B}/generated/release/lib/*.so* ${D}/${libdir}
73 cp -r ${B}/generated/release/include/* ${D}/${includedir}
74
75 cp -r ${S}/dewarp/dewarp_config/ ${D}/opt/imx8-isp/bin
76 cp ${S}/imx/run.sh ${D}/opt/imx8-isp/bin
77 cp ${S}/imx/start_isp.sh ${D}/opt/imx8-isp/bin
78
79 chmod +x ${D}/opt/imx8-isp/bin/run.sh
80 chmod +x ${D}/opt/imx8-isp/bin/start_isp.sh
81
82 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
83 install -d ${D}${systemd_system_unitdir}
84 install -m 0644 ${S}/imx/imx8-isp.service ${D}${systemd_system_unitdir}
85 fi
86}
87
88# The build contains a mix of versioned and unversioned libraries, so
89# the default packaging configuration needs some modification so that
90# unversioned .so libraries go to the main package and versioned .so
91# symlinks go to -dev.
92FILES_SOLIBSDEV = ""
93FILES:${PN} += "/opt ${libdir}/lib*${SOLIBSDEV}"
94FILES:${PN}-dev += "${FILES_SOLIBS_VERSIONED}"
95FILES_SOLIBS_VERSIONED = " \
96 ${libdir}/libcppnetlib-client-connections.so \
97 ${libdir}/libcppnetlib-server-parsers.so \
98 ${libdir}/libcppnetlib-uri.so \
99 ${libdir}/libjsoncpp.so \
100 ${libdir}/libos08a20.so \
101"
102
103RDEPENDS:${PN} = "libdrm"
104
105COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb
new file mode 100644
index 000000000..445822528
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb
@@ -0,0 +1,102 @@
1# Copyright (C) 2020-2024 NXP
2
3DESCRIPTION = "i.MX Verisilicon Software ISP"
4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359"
6DEPENDS = "boost libdrm virtual/libg2d libtinyxml2 jsoncpp patchelf-native"
7
8SRC_URI = " \
9 ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \
10 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${ISP_SYSTEMD_PATCH}', '', d)} \
11 file://0002-appshell-cmake-bump-min-version-to-3.5.patch \
12 file://0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch \
13 file://0004-units-targets.cmake-fix-check-if-a-target-exists.patch \
14 file://0005-units-cmake-fix-use-of-add_dependencies.patch \
15"
16ISP_SYSTEMD_PATCH = "file://0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch"
17
18IMX_SRCREV_ABBREV = "3cac1fb"
19S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
20
21SRC_URI[sha256sum] = "8fa5094da6438505287f4dcc8033dad3057ab81bf98c858884f7c3a2e521b252"
22
23inherit fsl-eula-unpack cmake pkgconfig systemd use-imx-headers
24
25PACKAGECONFIG = ""
26# Note: building with tuningext fails with boost 1.87.
27# (update to 1.87 with walnascar)
28PACKAGECONFIG[tuningext] = "-DTUNINGEXT=1,-DTUNINGEXT=0"
29
30# Build the sub-folder appshell
31OECMAKE_SOURCEPATH = "${S}/appshell"
32
33# Use make instead of ninja
34OECMAKE_GENERATOR = "Unix Makefiles"
35
36# Workaround for linking issues seen with gold linker
37LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
38
39SYSTEMD_SERVICE:${PN} = "imx8-isp.service"
40
41EXTRA_OECMAKE += " \
42 -DSDKTARGETSYSROOT=${STAGING_DIR_HOST} \
43 -DCMAKE_BUILD_TYPE=release \
44 -DISP_VERSION=ISP8000NANO_V1802 \
45 -DPLATFORM=ARM64 \
46 -DQTLESS=1 \
47 -DFULL_SRC_COMPILE=1 \
48 -DWITH_DRM=1 \
49 -DWITH_DWE=1 \
50 -DSUBDEV_V4L2=1 \
51 -DPARTITION_BUILD=0 \
52 -D3A_SRC_BUILD=0 \
53 -DIMX_G2D=ON \
54 -Wno-dev \
55"
56
57do_configure_disable:prepend () {
58 # FIXME: should be rebuild.
59 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/bin/isp_media_server
60 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/lib/libmedia_server.so
61 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/tuningext/install/tuningext
62
63 # FIXME: Should be rebuild.
64 patchelf --replace-needed libtinyxml2.so.10 libtinyxml2.so.11 ${S}/appshell/shell_libs/ispcore/ARM64/libcam_device.so
65}
66
67do_install() {
68 # The Makefile unconditionally installs tuningext even if it is not built
69 if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then
70 touch ${B}/generated/release/bin/tuningext
71 fi
72
73 oe_runmake -f ${S}/Makefile install INSTALL_DIR=${D} SOURCE_DIR=${S}
74
75 if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then
76 rm ${D}/opt/imx8-isp/bin/tuningext
77 fi
78
79 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
80 install -d ${D}${systemd_system_unitdir}
81 install -m 0644 ${S}/imx/imx8-isp.service ${D}${systemd_system_unitdir}
82 fi
83
84}
85
86# The build contains a mix of versioned and unversioned libraries, so
87# the default packaging configuration needs some modification so that
88# unversioned .so libraries go to the main package and versioned .so
89# symlinks go to -dev.
90FILES_SOLIBSDEV = ""
91FILES:${PN} += "/opt ${libdir}/lib*${SOLIBSDEV}"
92FILES:${PN}-dev += "${FILES_SOLIBS_VERSIONED}"
93FILES_SOLIBS_VERSIONED = " \
94 ${libdir}/libcppnetlib-client-connections.so \
95 ${libdir}/libcppnetlib-server-parsers.so \
96 ${libdir}/libcppnetlib-uri.so \
97 ${libdir}/libos08a20.so \
98"
99
100RDEPENDS:${PN} = "libdrm"
101
102COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"