summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MAINTAINERS32
-rw-r--r--README470
-rw-r--r--README.md35
-rw-r--r--classes/uefi-comboapp.bbclass151
-rw-r--r--classes/uefi-sign.bbclass50
-rw-r--r--conf/include/maintainers.inc10
-rw-r--r--conf/layer.conf4
-rw-r--r--conf/machine/include/meta-intel.inc11
-rw-r--r--conf/machine/intel-corei7-64.conf2
-rw-r--r--conf/machine/intel-skylake-64.conf2
-rw-r--r--documentation/building_and_booting.md134
-rw-r--r--documentation/openvino.md92
-rw-r--r--documentation/reporting_bugs.md22
-rw-r--r--documentation/secureboot/README38
-rw-r--r--documentation/submitting_patches.md26
-rw-r--r--documentation/tested_hardware.md21
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb (renamed from dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.4.bb)4
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch (renamed from dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch)30
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch (renamed from dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/external-ocloc.patch)18
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/disable-werror.patch16
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb (renamed from dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_24.05.28454.6.bb)11
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch29
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch27
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch13
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch7
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch13
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb (renamed from dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb)31
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc2
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb5
-rw-r--r--dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2024.0.0.bb33
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch32
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch39
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb10
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/thermald/files/0001-Makefile-Fix-build-Issue.patch39
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb (renamed from dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.6.bb)4
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb (renamed from dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.23.0.bb)6
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb (renamed from dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.15.8.bb)3
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch99
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch28
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch110
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.23.0.bb47
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb4
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb4
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb (renamed from dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.1.bb)8
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb4
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb4
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb (renamed from dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.1.0.bb)11
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/files/0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch49
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb (renamed from dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.13.0.bb)5
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch39
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch43
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb (renamed from dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0485.bb)17
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-CPU-Solving-the-build-failure-caused-by-setting-the-.patch43
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-fix-build-when-using-sysroot.patch32
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-yocto-specific-tweaks-to-the-build-process.patch90
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-cmake-Fix-overloaded-virtual-error.patch33
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-protobuf-allow-target-protoc-to-be-built.patch45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch27
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2024.0.0.bb54
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2024.0.0.bb143
-rw-r--r--lib/oeqa/runtime/cases/dldt_inference_engine.py109
-rw-r--r--lib/oeqa/runtime/cases/dldt_model_optimizer.py38
-rw-r--r--lib/oeqa/runtime/files/dldt-inference-engine/classification_sample.py135
-rw-r--r--lib/oeqa/runtime/miutils/dldtutils.py3
-rw-r--r--lib/oeqa/runtime/miutils/tests/dldt_inference_engine_test.py56
-rw-r--r--lib/oeqa/runtime/miutils/tests/dldt_model_optimizer_test.py23
-rw-r--r--lib/oeqa/runtime/miutils/tests/squeezenet_model_download_test.py25
-rw-r--r--lib/oeqa/selftest/cases/secureboot.py176
-rw-r--r--recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb (renamed from recipes-bsp/intel-cmt-cat/intel-cmt-cat_23.11.1.bb)4
-rw-r--r--recipes-bsp/metee/metee_3.2.4.bb2
-rw-r--r--recipes-core/libxcam/libxcam_1.5.0.bb3
-rw-r--r--recipes-core/microcode/intel-microcode_20250812.bb (renamed from recipes-core/microcode/intel-microcode_20240312.bb)3
-rw-r--r--recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch129
-rw-r--r--recipes-core/ovmf/ovmf-shell-image-enrollkeys.bb13
-rw-r--r--recipes-core/ovmf/ovmf_%.bbappend6
-rw-r--r--recipes-devtools/slimboot/slimboot-tools_git.bb3
-rw-r--r--recipes-graphics/gmmlib/files/0001-Add-new-DG2-device-IDs-194.patch38
-rw-r--r--recipes-graphics/gmmlib/files/0001-Introduce-ARL-H-support-172.patch42
-rw-r--r--recipes-graphics/gmmlib/gmmlib_22.7.1.bb (renamed from recipes-graphics/gmmlib/gmmlib_22.3.15.bb)11
-rw-r--r--recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch42
-rw-r--r--recipes-graphics/hdcp/hdcp_21.2.0.bb26
-rw-r--r--recipes-graphics/libva/libva-intel-utils_2.22.0.bb (renamed from recipes-graphics/libva/libva-intel-utils_2.20.1.bb)5
-rw-r--r--recipes-graphics/libva/libva-intel_2.22.0.bb (renamed from recipes-graphics/libva/libva-intel_2.20.0.bb)5
-rw-r--r--recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb (renamed from recipes-graphics/metrics-discovery/metrics-discovery_1.12.170.bb)5
-rw-r--r--recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb (renamed from recipes-kernel/intel-ethernet/ixgbe_5.19.6.bb)12
-rw-r--r--recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb (renamed from recipes-kernel/intel-ethernet/ixgbevf_4.18.7.bb)12
-rw-r--r--recipes-kernel/iwlwifi/backport-iwlwifi_git.bb9
-rw-r--r--recipes-kernel/linux/linux-intel-rt_6.12.bb (renamed from recipes-kernel/linux/linux-intel-rt_6.6.bb)12
-rw-r--r--recipes-kernel/linux/linux-intel.inc4
-rw-r--r--recipes-kernel/linux/linux-intel/0001-lib-build_OID_registry-fix-reproducibility-issues.patch48
-rw-r--r--recipes-kernel/linux/linux-intel/0001-vt-conmakehash-improve-reproducibility.patch58
-rw-r--r--recipes-kernel/linux/linux-intel_6.12.bb23
-rw-r--r--recipes-kernel/linux/linux-intel_6.6.bb21
-rw-r--r--recipes-kernel/linux/linux-intel_6.8.bb20
-rw-r--r--recipes-multimedia/itt/itt_3.26.1.bb (renamed from recipes-multimedia/itt/itt_3.24.6.bb)9
-rw-r--r--recipes-multimedia/libva/files/0001-Disable-vp9-padding-on-mtl.patch35
-rw-r--r--recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch (renamed from recipes-multimedia/libva/files/0002-Force-ARGB-surface-to-tile4-for-ACM.patch)12
-rw-r--r--recipes-multimedia/libva/files/0004-Add-device-ID-for-ARL.patch45
-rw-r--r--recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch85
-rw-r--r--recipes-multimedia/libva/files/0005-Add-XR24-support-to-DMABuf.patch34
-rw-r--r--recipes-multimedia/libva/files/0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch214
-rw-r--r--recipes-multimedia/libva/files/0007-Skip-report-keys.patch78
-rw-r--r--recipes-multimedia/libva/files/0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch255
-rw-r--r--recipes-multimedia/libva/files/0009-Skip-cache-bucket-realloc-for-default-mode-0.patch33
-rw-r--r--recipes-multimedia/libva/files/0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch195
-rw-r--r--recipes-multimedia/libva/files/0011-Disable-422H-format-output.patch33
-rw-r--r--recipes-multimedia/libva/files/0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch32
-rw-r--r--recipes-multimedia/libva/intel-media-driver_25.1.4.bb (renamed from recipes-multimedia/libva/intel-media-driver_23.4.3.bb)17
-rw-r--r--recipes-multimedia/mediasdk/files/0001-FindITT.cmake-fix-detection-of-header-library.patch49
-rw-r--r--recipes-multimedia/mediasdk/files/fix-gcc13.patch15
-rw-r--r--recipes-multimedia/mediasdk/intel-mediasdk_23.2.2.bb63
-rw-r--r--recipes-multimedia/onevpl/files/0001-ARLH-DID-open-source-6286.patch39
-rw-r--r--recipes-multimedia/onevpl/files/0001-Fix-SetBuffersYV12-V-U-plane-offsets-calculation-647.patch32
-rw-r--r--recipes-multimedia/onevpl/files/0001-JPEGe-Enable-BGR4-JPEG-Enc-support-6470.patch96
-rw-r--r--recipes-multimedia/vpl/files/0001-Add-cstdint-header-to-resolve-build-issue-with-gcc-1.patch34
-rw-r--r--recipes-multimedia/vpl/files/0001-Update-vpl-inspect-to-remove-ReportedStats.patch73
-rw-r--r--recipes-multimedia/vpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch (renamed from recipes-multimedia/onevpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch)11
-rw-r--r--recipes-multimedia/vpl/libvpl-tools_1.3.0.bb43
-rw-r--r--recipes-multimedia/vpl/libvpl_2.14.0.bb (renamed from recipes-multimedia/onevpl/onevpl_2023.4.0.bb)25
-rw-r--r--recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb (renamed from recipes-multimedia/onevpl/onevpl-intel-gpu_23.4.3.bb)17
-rw-r--r--recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb (renamed from recipes-oneapi/crypto/intel-crypto-mb_2021.11.1.bb)6
-rw-r--r--recipes-oneapi/onedpl/onedpl_2022.8.0.bb (renamed from recipes-oneapi/onedpl/onedpl_2022.3.0.bb)10
-rw-r--r--recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb4
-rw-r--r--recipes-rt/images/core-image-rt-sdk.bb2
-rw-r--r--recipes-selftest/images/files/incorrect.crt19
-rw-r--r--recipes-selftest/images/files/incorrect.key27
-rw-r--r--recipes-selftest/images/files/refkit-db.crt18
-rw-r--r--recipes-selftest/images/files/refkit-db.key28
-rw-r--r--recipes-selftest/images/secureboot-selftest-image-signed.bb6
-rw-r--r--recipes-selftest/images/secureboot-selftest-image-unsigned.bb20
-rw-r--r--recipes-support/isa-l/isa-l_2.31.1.bb (renamed from recipes-support/isa-l/isa-l_2.31.0.bb)3
-rw-r--r--recipes-support/libipt/libipt_2.1.2.bb (renamed from recipes-support/libipt/libipt_2.1.1.bb)9
-rw-r--r--recipes-support/sbsigntool/sbsigntool-native_git.bb83
-rw-r--r--recipes-support/sbsigntool/sbsigntool/0001-configure-Fixup-build-dependencies-for-cross-compili.patch54
136 files changed, 1295 insertions, 4104 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
deleted file mode 100644
index 73a9fe3a..00000000
--- a/MAINTAINERS
+++ /dev/null
@@ -1,32 +0,0 @@
1This file contains a list of BSP maintainers for the BSPs contained in
2the meta-intel repository.
3
4The purpose of this file is to provide contact information for
5specific BSPs and other code contained within meta-intel. You should
6address questions and patches for a particular BSP or other code to
7the appropriate maintainer listed in this file, cc'ing the meta-intel
8mailing list. This ensures that your question or patch will be
9addressed by the appropriate person, and that it will be seen by other
10users who may be facing similar problems or questions.
11
12Please see the top-level README file for guidelines relating to the
13details of submitting patches, reporting problems, or asking questions
14about any of the BSPs or other recipes contained within meta-intel.
15
16Descriptions of section entries:
17
18 M: Mail patches to: FullName <address@domain>
19 F: Files and directories with wildcard patterns.
20 A trailing slash includes all files and subdirectory files.
21 F: common/ all files in and below common
22 F: common/* all files in common, but not below
23 One pattern per line. Multiple F: lines acceptable.
24
25Please keep this list in alphabetical order.
26
27Maintainers List (try to look for most precise areas first)
28
29 -----------------------------------
30
31M: Anuj Mittal <anuj.mittal@intel.com>
32F: *
diff --git a/README b/README
deleted file mode 100644
index ca2c5041..00000000
--- a/README
+++ /dev/null
@@ -1,470 +0,0 @@
1meta-intel
2==========
3
4This README file contains information on building and booting
5meta-intel BSP layers. Please see the corresponding sections below
6for details.
7
8
9Yocto Project Compatible
10========================
11
12The BSPs contained in this layer are compatible with the Yocto Project
13as per the requirements listed here:
14
15 https://www.yoctoproject.org/webform/yocto-project-compatible-registration
16
17
18Dependencies
19============
20
21This layer depends on:
22
23 URI: git://git.openembedded.org/bitbake
24
25 URI: git://git.openembedded.org/openembedded-core
26 layers: meta
27 branch: master
28
29
30Table of Contents
31=================
32
33 I. Overview
34 II. Building and booting meta-intel BSP layers
35 a. Building the intel-common BSP layers
36 b. Booting the intel-common BSP images
37 c. Building the installer image
38 III. Technical Miscellany
39 Benefits of using meta-intel
40 The intel-common kernel package architecture
41 Intel-specific machine features
42 IV. Tested Hardware
43 V. Guidelines for submitting patches
44
45
46I. Overview
47===========
48
49This is the location for Intel-maintained BSPs.
50
51For details on the intel-common, see the information below.
52
53For all others, please see the README files contained in the
54individual BSP layers for BSP-specific information.
55
56If you have problems with or questions about a particular BSP, please
57contact the maintainer listed in the MAINTAINERS file directly (cc:ing
58the Yocto mailing list puts it in the archive and helps other people
59who might have the same questions in the future), but please try to do
60the following first:
61
62 - look in the Yocto Project Bugzilla
63 (http://bugzilla.yoctoproject.org/) to see if a problem has
64 already been reported
65
66 - look through recent entries of the meta-intel
67 (https://lists.yoctoproject.org/pipermail/meta-intel/) and Yocto
68 (https://lists.yoctoproject.org/pipermail/yocto/) mailing list
69 archives to see if other people have run into similar problems or
70 had similar questions answered.
71
72If you believe you have encountered a bug, you can open a new bug and
73enter the details in the Yocto Project Bugzilla
74(http://bugzilla.yoctoproject.org/). If you're relatively certain
75that it's a bug against the BSP itself, please use the 'Yocto Project
76Components: BSPs | meta-intel' category for the bug; otherwise, please
77submit the bug against the most likely category for the problem - if
78you're wrong, it's not a big deal and the bug will be recategorized
79upon triage.
80
81
82II. Building and booting meta-intel BSP layers
83==============================================
84
85The following sections contain information on building and booting the
86BSPs contained in the meta-intel layer.
87
88Note that these instructions specifically cover the intel-common, which
89may or may not be applicable to other BSPs contained in this layer - if
90a given BSP contains its own README, that version should be used instead,
91and these instructions can be ignored.
92
93a. Building the intel-common BSP layers
94-------------------------------------------------
95
96In order to build an image with BSP support for a given release, you
97need to download the corresponding BSP tarball from the 'Board Support
98Package (BSP) Downloads' page of the Yocto Project website (or
99equivalently, check out the appropriate branch from the meta-intel git
100repository, see below). For the intel-common BSPs, those tarballs would
101correspond to the following choices in the BSP downloads section:
102
103 - Intel-core2-32 Intel® Common Core BSP (Intel-core2-32)
104 - Intel-corei7-64 Intel® Common Core BSP (Intel-corei7-64)
105
106The intel-* BSPs, also known as the intel-common BSPs, provide a few
107carefully selected tune options and generic hardware support to cover
108the majority of current Intel CPUs and devices. The naming follows the
109convention of intel-<TUNE>-<BITS>, where TUNE is the gcc cpu-type
110(used with mtune and march typically) and BITS is either 32 bit or 64
111bit.
112
113Having done that, and assuming you extracted the BSP tarball contents
114at the top-level of your yocto build tree, you can build a BSP image
115by adding the location of the meta-intel layer to bblayers.conf e.g.:
116
117 yocto/meta-intel \
118
119To enable a particular machine, you need to add a MACHINE line naming
120the BSP to the local.conf file:
121
122 MACHINE ?= "xxx"
123
124where 'xxx' is replaced by one of the following BSP names:
125
126 - intel-core2-32
127
128 This BSP is optimized for the Core2 family of CPUs as well as all
129 Atom CPUs prior to the Silvermont core.
130
131 - intel-corei7-64
132
133 This BSP is optimized for Nehalem and later Core and Xeon CPUs as
134 well as Silvermont and later Atom CPUs, such as the Baytrail SoCs.
135
136You should then be able to build an image as such:
137
138 $ source oe-init-build-env
139 $ bitbake core-image-sato
140
141At the end of a successful build, you should have an image that
142you can boot from a USB flash drive (see instructions on how to do
143that below, in the section 'Booting the intel-common BSP images').
144
145As an alternative to downloading the BSP tarball, you can also work
146directly from the meta-intel git repository. For each BSP in the
147'meta-intel' repository, there are multiple branches, one
148corresponding to each major release starting with 'laverne' (0.90), in
149addition to the latest code which tracks the current master (note that
150not all BSPs are present in every release). Instead of extracting
151a BSP tarball at the top level of your yocto build tree, you can
152equivalently check out the appropriate branch from the meta-intel
153repository at the same location.
154
155b. Booting the intel-common BSP images
156--------------------------------------
157
158If you've built your own image, either from the downloaded BSP layer
159or from the meta-intel git repository, you'll find the bootable
160image in the build/tmp/deploy/images/xxx directory, where again
161'xxx' refers to the machine name used in the build.
162
163Under Linux, insert a USB flash drive. Assuming the USB flash drive
164takes device /dev/sdf, use dd to copy the image to it. Before the image
165can be burned onto a USB drive, it should be un-mounted. Some Linux distros
166may automatically mount a USB drive when it is plugged in. Using USB device
167/dev/sdf as an example, find all mounted partitions:
168
169 $ mount | grep sdf
170
171and un-mount those that are mounted, for example:
172
173 $ umount /dev/sdf1
174 $ umount /dev/sdf2
175
176Now burn the image onto the USB drive:
177
178 $ sudo dd if=core-image-sato-intel-corei7-64.wic of=/dev/sdf status=progress
179 $ sync
180 $ eject /dev/sdf
181
182This should give you a bootable USB flash device. Insert the device
183into a bootable USB socket on the target, and power on. This should
184result in a system booted to the Sato graphical desktop.
185
186If you want a terminal, use the arrows at the top of the UI to move to
187different pages of available applications, one of which is named
188'Terminal'. Clicking that should give you a root terminal.
189
190If you want to ssh into the system, you can use the root terminal to
191ifconfig the IP address and use that to ssh in. The root password is
192empty, so to log in type 'root' for the user name and hit 'Enter' at
193the Password prompt: and you should be in.
194
195If you find you're getting corrupt images on the USB (it doesn't show
196the syslinux boot: prompt, or the boot: prompt contains strange
197characters), try doing this first:
198
199 $ dd if=/dev/zero of=/dev/sdf bs=1M count=512
200
201c. Building the installer image
202-----------------------------------------------
203
204If you plan to install your image to your target machine, you can build a wic
205based installer image instead of default wic image. To build it, you need to
206add below configuration to local.conf :
207
208 WKS_FILE = "image-installer.wks.in"
209 IMAGE_FSTYPES:append = " ext4"
210 IMAGE_TYPEDEP:wic = "ext4"
211 INITRD_IMAGE_LIVE="core-image-minimal-initramfs"
212 do_image_wic[depends] += "${INITRD_IMAGE_LIVE}:do_image_complete"
213 do_rootfs[depends] += "virtual/kernel:do_deploy"
214 IMAGE_BOOT_FILES:append = "\
215 ${KERNEL_IMAGETYPE} \
216 microcode.cpio \
217 ${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.rootfs.ext4;rootfs.img \
218 ${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', 'grub-efi-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
219 ${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', '${IMAGE_ROOTFS}/boot/EFI/BOOT/grub.cfg;EFI/BOOT/grub.cfg', '', d)} \
220 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', 'systemd-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
221 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/loader.conf;loader/loader.conf ', '', d)} \
222 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/entries/boot.conf;loader/entries/boot.conf', '', d)} "
223
224Burn the wic image onto USB flash device, insert the device to target machine
225and power on. This should start the installation process.
226
227III. Technical Miscellany
228=========================
229
230Benefits of using meta-intel
231----------------------------
232
233Using meta-intel has the following benefits over a generic BSP:
234
235tune flags
236++++++++++
237intel-* MACHINEs each have different compilation flags appropriate for their
238targeted hardware sets. intel-corei7-64 has tune flags appropriate for modern
23964-bit Intel Core i microarchitecture, and includes instruction sets up to
240SSE4.2. intel-core2-32 has tune flags appropriate for legacy 32-bit Intel Core2
241microarchitecture, and includes instruction sets up to SSE3.
242
243linux-intel kernel
244++++++++++++++++++
245The linux-intel kernel is an initiative to bring better Intel(R) hardware
246support to the current LTS linux kernel. It contains a base LTS kernel with
247additional backports from upstream Intel drivers. In addition, a default kernel
248config containing most features found on Intel boards is supplied via the
249yocto-kernel-cache.
250
251graphics stack
252++++++++++++++
253Meta-intel provides the latest Intel Graphics Linux Stack drivers to support
254Intel hardware as defined by the https://01.org/linuxgraphics.
255
256Other software
257++++++++++++++
258 * intel ucode - provides the latest microcode updates for Intel processors
259
260 * thermald - which proactively controls thermal, using P-states, T-states, and
261the Intel power clamp driver.
262(https://01.org/linux-thermal-daemon/documentation/introduction-thermal-daemon)
263
264The intel-common kernel package architecture
265--------------------------------------------
266
267These BSPs use what we call the intel-common Linux kernel package
268architecture. This includes core2-32-intel-common and
269corei7-64-intel-common. These kernel packages can also be used by any
270of the BSPs in meta-intel that choose to include the
271intel-common-pkgarch.inc file.
272
273To minimize the proliferation of vendor trees, reduce the sources we
274must support, and consolidate QA efforts, all BSP maintainers are
275encouraged to make use of the intel-common Linux kernel package
276architecture.
277
278Intel-specific machine features
279-------------------------------
280
281The meta-intel layer makes some additional machine features available
282to BSPs. These machine features can be used in a BSP layer in the
283same way that machine features are used in other layers based on
284oe-core, via the MACHINE_FEATURES variable.
285
286Requirements
287++++++++++++
288
289The meta-intel-specific machine features are only available to a BSP
290when the meta-intel layer is included in the build configuration, and
291the meta-intel.inc file is included in the machine configuration of
292that BSP.
293
294To make these features available for your machine, you will need to:
295
296 1. include a configuration line such as the below in bblayers.conf
297 BBLAYERS += "<local path>/meta-intel"
298 2. include the following line in the machine configuration file
299 require conf/machine/include/meta-intel.inc
300
301Once the above requirements are met, the machine features provided by
302the meta-intel layer will be available for the BSP to use.
303
304Available machine features
305++++++++++++++++++++++++++
306
307Currently, the meta-intel layer makes the following set of
308Intel-specific machine features available:
309
310 * intel-ucode
311
312These machine features can be included by listing them in the
313MACHINE_FEATURES variable in the machine configuration file. For
314example:
315
316 MACHINE_FEATURES += "intel-ucode"
317
318Machine feature details
319+++++++++++++++++++++++
320
321 * intel-ucode
322
323 This feature provides support for microcode updates to Intel
324 processors. The intel-ucode feature runs at early boot and uses
325 the microcode data file added by the feature into the BSP's
326 initrd. It also puts the userland microcode-updating tool,
327 iucode_tool, into the target images along with the microcode data
328 file.
329
330 Q. Why might a user want to enable the intel-ucode feature?
331
332 A. Intel releases microcode updates to correct processor behavior
333 as documented in the respective processor specification
334 updates. While the normal approach to getting such microcode
335 updates is via a BIOS upgrade, this can be an administrative
336 hassle and not always possible in the field. The intel-ucode
337 feature enables the microcode update capability present in the
338 Linux kernel. It provides an easy path for upgrading processor
339 microcode without the need to change the BIOS. If the feature
340 is enabled, it is also possible to update the existing target
341 images with a newer microcode update in the future.
342
343 Q. How would a user bundle only target-specific microcode in the
344 target image?
345
346 A. The Intel microcode data file released by Intel contains
347 microcode updates for multiple processors. If the BSP image is
348 meant to run on only a certain subset of processor types, a
349 processor-specific subset of microcode can be bundled into the
350 target image via the UCODE_FILTER_PARAMETERS variable. This
351 works by listing a sequence of iucode-tool parameters in the
352 UCODE_FILTER_PARAMETERS variable, which in this case will
353 select only the specific microcode relevant to the BSP. For
354 more information on the underlying parameters refer to the
355 iucode-tool manual page at http://manned.org/iucode-tool
356
357 To define a set of parameters for microcode-filtering via the
358 UCODE_FILTER_PARAMETERS variable, one needs to identify the
359 cpuid signatures of all the processors the BSP is meant to run
360 on. One way to determine the cpuid signature for a specific
361 processor is to build and run an intel-ucode-feature-enabled
362 image on the target hardware, without first assigning any value
363 to the UCODE_FILTER_PARAMETERS variable, and then once the
364 image is booted, run the "ucode_tool -S" command to have the
365 ucode tool scan the system for processor signatures. These
366 signatures can then be used in the UCODE_FILTER_PARAMETERS
367 variable in conjunction with -s parameter. For example, for
368 the fri2 BSP, the cpuid can be determined as such:
369
370 [root@fri2 ~]# iucode_tool -S
371 iucode_tool: system has processor(s) with signature 0x00020661
372
373 Given that output, a suitable UCODE_FILTER_PARAMETERS variable
374 definition could be specified in the machine configuration as
375 such:
376
377 UCODE_FILTER_PARAMETERS = "-s 0x00020661"
378
379 Q. Are there any reasons a user might want to disable the
380 intel-ucode feature?
381
382 A. The microcode data file and associated tools occupy a small
383 amount of space (a few KB) on the target image. BSPs which are
384 highly sensitive to target image size and which are not
385 experiencing microcode-related issues might consider not
386 enabling this feature.
387
388
389IV. Tested Hardware
390===================
391
392The following undergo regular basic testing with their respective MACHINE types.
393Note that both 64-bit and 32-bit firmware is available for the MinnowBoard
394Turbot, so it is tested against both intel-corei7-64 and intel-core2-32.
395
396intel-corei7-64:
397 Alder Lake-P
398 Alder Lake-S
399 Elkhart Lake
400 Kaby Lake
401 Raptor Lake-P
402 Tiger Lake
403
404intel-skylake-64:
405 Alder Lake-P
406 Alder Lake-S
407 Elkhart Lake
408 Kaby Lake
409 Raptor Lake-P
410 Tiger Lake
411
412intel-core2-32:
413 MinnowBoard Turbot
414
415
416V. Guidelines for submitting patches
417====================================
418
419Please submit any patches against meta-intel BSPs to the meta-intel
420mailing list (meta-intel@lists.yoctoproject.org). Also, if your patches are
421available via a public git repository, please also include a URL to
422the repo and branch containing your patches as that makes it easier
423for maintainers to grab and test your patches.
424
425There are patch submission scripts available that will, among other
426things, automatically include the repo URL and branch as mentioned.
427Please see the Yocto Project Development Manual sections entitled
428'Using Scripts to Push a Change Upstream and Request a Pull' and
429'Using Email to Submit a Patch' for details.
430
431Regardless of how you submit a patch or patchset, the patches should
432at minimum follow the suggestions outlined in the 'Submitting a Change
433to the Yocto Project' section in the Yocto Project Development Manual.
434Specifically, they should:
435
436 - Include a 'Signed-off-by:' line. A commit can't legally be pulled
437 in without this.
438
439 - Provide a single-line, short summary of the change. This short
440 description should be prefixed by the BSP or recipe name, as
441 appropriate, followed by a colon. Capitalize the first character
442 of the summary (following the colon).
443
444 - For the body of the commit message, provide detailed information
445 that describes what you changed, why you made the change, and the
446 approach you used.
447
448 - If the change addresses a specific bug or issue that is associated
449 with a bug-tracking ID, include a reference to that ID in your
450 detailed description in the following format: [YOCTO #<bug-id>].
451
452 - Pay attention to line length - please don't allow any particular
453 line in the commit message to stretch past 72 characters.
454
455 - For any non-trivial patch, provide information about how you
456 tested the patch, and for any non-trivial or non-obvious testing
457 setup, provide details of that setup.
458
459Doing a quick 'git log' in meta-intel will provide you with many
460examples of good example commits if you have questions about any
461aspect of the preferred format.
462
463The meta-intel maintainers will do their best to review and/or pull in
464a patch or patchset within 24 hours of the time it was posted. For
465larger and/or more involved patches and patchsets, the review process
466may take longer.
467
468Please see the meta-intel/MAINTAINERS file for the list of maintainers
469and their specific areas; it's also a good idea to cc: the specific
470maintainer, if applicable.
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..1bd2025f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,35 @@
1# meta-intel
2
3OpenEmbedded/Yocto BSP layer for Intel platforms.
4
5## Dependencies
6
7This layer primarily depends on OpenEmbedded-Core (OE-Core). However, certain
8recipes may require additional layers to support optional features or
9programming languages not supported by OE-Core. Such recipes are located within
10the `dynamic-layers` directory.
11
12Base dependencies:
13- [Bitbake](https://git.openembedded.org/bitbake)
14- [OE-Core](https://git.openembedded.org/openembedded-core)
15
16Dynamic additional dependencies:
17
18- [meta-openembedded](https://git.openembedded.org/meta-openembedded/tree/meta-oe)
19- [meta-python](https://git.openembedded.org/meta-openembedded/tree/meta-python)
20- [meta-clang](https://github.com/kraj/meta-clang.git)
21
22
23## Contents
24
25- [Building and booting meta-intel BSP layers](documentation/building_and_booting.md)
26- [Intel oneAPI DPC++/C++ Compiler](documentation/dpcpp-compiler.md)
27- [Build Image with OpenVINO™ toolkit](documentation/openvino.md)
28- [Tested Hardware](documentation/tested_hardware.md)
29- [Guidelines for submitting patches](documentation/submitting_patches.md)
30- [Reporting bugs](documentation/reporting_bugs.md)
31- [Reporting security bugs](SECURITY.md)
32
33## Maintainers
34
35- Yogesh Tyagi <yogesh.tyagi@intel.com>
diff --git a/classes/uefi-comboapp.bbclass b/classes/uefi-comboapp.bbclass
deleted file mode 100644
index a05e0ca0..00000000
--- a/classes/uefi-comboapp.bbclass
+++ /dev/null
@@ -1,151 +0,0 @@
1# This class brings a more generic version of the UEFI combo app from refkit to meta-intel.
2# It uses a combo file, containing kernel, initramfs and
3# command line, presented to the BIOS as UEFI application, by prepending
4# it with the efi stub obtained from systemd-boot.
5
6# Don't add syslinux or build an ISO
7PCBIOS:forcevariable = "0"
8NOISO:forcevariable = "1"
9
10# image-live.bbclass will default INITRD_LIVE to the image INITRD_IMAGE creates.
11# We want behavior to be consistent whether or not "live" is in IMAGE_FSTYPES, so
12# we default INITRD_LIVE to the INITRD_IMAGE as well.
13INITRD_IMAGE ?= "core-image-minimal-initramfs"
14INITRD_LIVE ?= " ${@ ('${DEPLOY_DIR_IMAGE}/' + d.getVar('INITRD_IMAGE', expand=True) + '-${MACHINE}.cpio.gz') if d.getVar('INITRD_IMAGE', True) else ''}"
15
16do_uefiapp[depends] += " \
17 intel-microcode:do_deploy \
18 systemd-boot:do_deploy \
19 virtual/kernel:do_deploy \
20 "
21
22# INITRD_IMAGE is added to INITRD_LIVE, which we use to create our initrd, so depend on it if it is set
23do_uefiapp[depends] += "${@ '${INITRD_IMAGE}:do_image_complete' if d.getVar('INITRD_IMAGE') else ''}"
24
25# The image does without traditional bootloader.
26# In its place, instead, it uses a single UEFI executable binary, which is
27# composed by:
28# - an UEFI stub
29# The linux kernel can generate a UEFI stub, however the one from systemd-boot can fetch
30# the command line from a separate section of the EFI application, avoiding the need to
31# rebuild the kernel.
32# - the kernel
33# - an initramfs (optional)
34
35def create_uefiapp(d, uuid=None, app_suffix=''):
36 import glob, re
37 from subprocess import check_call
38
39 build_dir = d.getVar('B')
40 deploy_dir_image = d.getVar('DEPLOY_DIR_IMAGE')
41 image_link_name = d.getVar('IMAGE_LINK_NAME')
42
43 cmdline = '%s/cmdline.txt' % build_dir
44 linux = '%s/%s' % (deploy_dir_image, d.getVar('KERNEL_IMAGETYPE'))
45 initrd = '%s/initrd' % build_dir
46
47 stub_path = '%s/linux*.efi.stub' % deploy_dir_image
48 stub = glob.glob(stub_path)[0]
49 m = re.match(r"\S*(ia32|x64)(.efi)\S*", os.path.basename(stub))
50 app = "boot%s%s%s" % (m.group(1), app_suffix, m.group(2))
51 executable = '%s/%s.%s' % (deploy_dir_image, image_link_name, app)
52
53 if d.getVar('INITRD_LIVE'):
54 with open(initrd, 'wb') as dst:
55 for cpio in d.getVar('INITRD_LIVE').split():
56 with open(cpio, 'rb') as src:
57 dst.write(src.read())
58 initrd_cmd = "--add-section .initrd=%s --change-section-vma .initrd=0x3000000 " % initrd
59 else:
60 initrd_cmd = ""
61
62 root = 'root=PARTUUID=%s' % uuid if uuid else ''
63
64 with open(cmdline, 'w') as f:
65 f.write('%s %s' % (d.getVar('APPEND'), root))
66
67 objcopy_cmd = ("objcopy "
68 "--add-section .cmdline=%s --change-section-vma .cmdline=0x30000 "
69 "--add-section .linux=%s --change-section-vma .linux=0x40000 "
70 "%s %s %s") % \
71 (cmdline, linux, initrd_cmd, stub, executable)
72
73 check_call(objcopy_cmd, shell=True)
74
75python create_uefiapps () {
76 # We must clean up anything that matches the expected output pattern, to ensure that
77 # the next steps do not accidentally use old files.
78 import glob
79 pattern = d.expand('${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.boot*.efi')
80 for old_efi in glob.glob(pattern):
81 os.unlink(old_efi)
82 uuid = d.getVar('DISK_SIGNATURE_UUID')
83 create_uefiapp(d, uuid=uuid)
84}
85
86# This is intentionally split into different parts. This way, derived
87# classes or images can extend the individual parts. We can also use
88# whatever language (shell script or Python) is more suitable.
89python do_uefiapp() {
90 bb.build.exec_func('create_uefiapps', d)
91}
92
93do_uefiapp[vardeps] += "APPEND DISK_SIGNATURE_UUID INITRD_LIVE KERNEL_IMAGETYPE IMAGE_LINK_NAME"
94
95uefiapp_deploy_at() {
96 dest=$1
97 for i in ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.boot*.efi; do
98 target=`basename $i`
99 target=`echo $target | sed -e 's/${IMAGE_LINK_NAME}.//'`
100 cp --preserve=timestamps -r $i $dest/$target
101 done
102}
103
104fakeroot do_uefiapp_deploy() {
105 rm -rf ${IMAGE_ROOTFS}/boot/*
106 dest=${IMAGE_ROOTFS}/boot/EFI/BOOT
107 mkdir -p $dest
108 uefiapp_deploy_at $dest
109}
110
111do_uefiapp_deploy[depends] += "${PN}:do_uefiapp virtual/fakeroot-native:do_populate_sysroot"
112
113
114# This decides when/how we add our tasks to the image
115python () {
116 image_fstypes = d.getVar('IMAGE_FSTYPES', True)
117 initramfs_fstypes = d.getVar('INITRAMFS_FSTYPES', True)
118
119 # Don't add any of these tasks to initramfs images
120 if initramfs_fstypes not in image_fstypes:
121 bb.build.addtask('uefiapp', 'do_image', 'do_rootfs', d)
122 bb.build.addtask('uefiapp_deploy', 'do_image', 'do_rootfs', d)
123}
124
125SIGN_AFTER ?= "do_uefiapp"
126SIGN_BEFORE ?= "do_uefiapp_deploy"
127SIGNING_DIR ?= "${DEPLOY_DIR_IMAGE}"
128SIGNING_BINARIES ?= "${IMAGE_LINK_NAME}.boot*.efi"
129inherit uefi-sign
130
131# Legacy hddimg support below this line
132efi_hddimg_populate() {
133 uefiapp_deploy_at "$1"
134}
135
136build_efi_cfg() {
137 # The command line is built into the combo app, so this is a null op
138 :
139}
140
141populate_kernel:append() {
142 # The kernel and initrd are built into the app, so we don't need these
143 if [ -f $dest/initrd ]; then
144 rm $dest/initrd
145 fi
146 if [ -f $dest/vmlinuz ]; then
147 rm $dest/vmlinuz
148 fi
149}
150
151IMAGE_FEATURES[validitems] += "secureboot"
diff --git a/classes/uefi-sign.bbclass b/classes/uefi-sign.bbclass
deleted file mode 100644
index e8f203b9..00000000
--- a/classes/uefi-sign.bbclass
+++ /dev/null
@@ -1,50 +0,0 @@
1# By default, sign all .efi binaries in ${B} after compiling and before deploying
2SIGNING_DIR ?= "${B}"
3SIGNING_BINARIES ?= "*.efi"
4SIGN_AFTER ?= "do_compile"
5SIGN_BEFORE ?= "do_deploy"
6
7python () {
8 import os
9 import hashlib
10
11 # Ensure that if the signing key or cert change, we rerun the uefiapp process
12 if bb.utils.contains('IMAGE_FEATURES', 'secureboot', True, False, d):
13 for varname in ('SECURE_BOOT_SIGNING_CERT', 'SECURE_BOOT_SIGNING_KEY'):
14 filename = d.getVar(varname)
15 if filename is None:
16 bb.fatal('%s is not set.' % varname)
17 if not os.path.isfile(filename):
18 bb.fatal('%s=%s is not a file.' % (varname, filename))
19 with open(filename, 'rb') as f:
20 data = f.read()
21 hash = hashlib.sha256(data).hexdigest()
22 d.setVar('%s_HASH' % varname, hash)
23
24 # Must reparse and thus rehash on file changes.
25 bb.parse.mark_dependency(d, filename)
26
27 bb.build.addtask('uefi_sign', d.getVar('SIGN_BEFORE'), d.getVar('SIGN_AFTER'), d)
28
29 # Original binary needs to be regenerated if the hash changes since we overwrite it
30 # SIGN_AFTER isn't necessarily when it gets generated, but its our best guess
31 d.appendVarFlag(d.getVar('SIGN_AFTER'), 'vardeps', 'SECURE_BOOT_SIGNING_CERT_HASH SECURE_BOOT_SIGNING_KEY_HASH')
32}
33
34do_uefi_sign() {
35 if [ -f ${SECURE_BOOT_SIGNING_KEY} ] && [ -f ${SECURE_BOOT_SIGNING_CERT} ]; then
36 for i in `find ${SIGNING_DIR}/ -name '${SIGNING_BINARIES}'`; do
37 sbsign --key ${SECURE_BOOT_SIGNING_KEY} --cert ${SECURE_BOOT_SIGNING_CERT} $i
38 sbverify --cert ${SECURE_BOOT_SIGNING_CERT} $i.signed
39 mv $i.signed $i
40 done
41 fi
42}
43
44do_uefi_sign[depends] += "sbsigntool-native:do_populate_sysroot"
45
46do_uefi_sign[vardeps] += "SECURE_BOOT_SIGNING_CERT_HASH \
47 SECURE_BOOT_SIGNING_KEY_HASH \
48 SIGNING_BINARIES SIGNING_DIR \
49 SIGN_BEFORE SIGN_AFTER \
50 "
diff --git a/conf/include/maintainers.inc b/conf/include/maintainers.inc
index 9849d0d8..e9a14ec4 100644
--- a/conf/include/maintainers.inc
+++ b/conf/include/maintainers.inc
@@ -7,13 +7,11 @@ RECIPE_MAINTAINER:pn-core-image-tiny = "Naveen Saini <naveen.kumar.saini@intel.c
7RECIPE_MAINTAINER:pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>" 7RECIPE_MAINTAINER:pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>"
8RECIPE_MAINTAINER:pn-embree = "Naveen Saini <naveen.kumar.saini@intel.com>" 8RECIPE_MAINTAINER:pn-embree = "Naveen Saini <naveen.kumar.saini@intel.com>"
9RECIPE_MAINTAINER:pn-gmmlib = "Lim Siew Hoon <siew.hoon.lim@intel.com>" 9RECIPE_MAINTAINER:pn-gmmlib = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
10RECIPE_MAINTAINER:pn-hdcp = "Naveen Saini <naveen.kumar.saini@intel.com>"
11RECIPE_MAINTAINER:pn-intel-cmt-cat = "Naveen Saini <naveen.kumar.saini@intel.com>" 10RECIPE_MAINTAINER:pn-intel-cmt-cat = "Naveen Saini <naveen.kumar.saini@intel.com>"
12RECIPE_MAINTAINER:pn-intel-compute-runtime = "Naveen Saini <naveen.kumar.saini@intel.com>" 11RECIPE_MAINTAINER:pn-intel-compute-runtime = "Naveen Saini <naveen.kumar.saini@intel.com>"
13RECIPE_MAINTAINER:pn-intel-crypto-mb = "Anuj Mittal <anuj.mittal@intel.com>" 12RECIPE_MAINTAINER:pn-intel-crypto-mb = "Anuj Mittal <anuj.mittal@intel.com>"
14RECIPE_MAINTAINER:pn-intel-graphics-compiler = "Naveen Saini <naveen.kumar.saini@intel.com>" 13RECIPE_MAINTAINER:pn-intel-graphics-compiler = "Naveen Saini <naveen.kumar.saini@intel.com>"
15RECIPE_MAINTAINER:pn-intel-media-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>" 14RECIPE_MAINTAINER:pn-intel-media-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
16RECIPE_MAINTAINER:pn-intel-mediasdk = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
17RECIPE_MAINTAINER:pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>" 15RECIPE_MAINTAINER:pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>"
18RECIPE_MAINTAINER:pn-intel-vaapi-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>" 16RECIPE_MAINTAINER:pn-intel-vaapi-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
19RECIPE_MAINTAINER:pn-ipmctl = "Anuj Mittal <anuj.mittal@intel.com>" 17RECIPE_MAINTAINER:pn-ipmctl = "Anuj Mittal <anuj.mittal@intel.com>"
@@ -31,6 +29,7 @@ RECIPE_MAINTAINER:pn-libxcam = "Naveen Saini <naveen.kumar.saini@intel.com>"
31RECIPE_MAINTAINER:pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>" 29RECIPE_MAINTAINER:pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>"
32RECIPE_MAINTAINER:pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>" 30RECIPE_MAINTAINER:pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>"
33RECIPE_MAINTAINER:pn-linux-intel-dev = "Naveen Saini <naveen.kumar.saini@intel.com>" 31RECIPE_MAINTAINER:pn-linux-intel-dev = "Naveen Saini <naveen.kumar.saini@intel.com>"
32RECIPE_MAINTAINER:pn-linux-npu-driver = "Naveen Saini <naveen.kumar.saini@intel.com>"
34RECIPE_MAINTAINER:pn-lms = "Anuj Mittal <anuj.mittal@intel.com>" 33RECIPE_MAINTAINER:pn-lms = "Anuj Mittal <anuj.mittal@intel.com>"
35RECIPE_MAINTAINER:pn-metee = "Naveen Saini <naveen.kumar.saini@intel.com>" 34RECIPE_MAINTAINER:pn-metee = "Naveen Saini <naveen.kumar.saini@intel.com>"
36RECIPE_MAINTAINER:pn-metrics-discovery = "Naveen Saini <naveen.kumar.saini@intel.com>" 35RECIPE_MAINTAINER:pn-metrics-discovery = "Naveen Saini <naveen.kumar.saini@intel.com>"
@@ -39,16 +38,9 @@ RECIPE_MAINTAINER:pn-onednn = "Naveen Saini <naveen.kumar.saini@intel.com>"
39RECIPE_MAINTAINER:pn-onedpl = "Naveen Saini <naveen.kumar.saini@intel.com>" 38RECIPE_MAINTAINER:pn-onedpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
40RECIPE_MAINTAINER:pn-onevpl = "Naveen Saini <naveen.kumar.saini@intel.com>" 39RECIPE_MAINTAINER:pn-onevpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
41RECIPE_MAINTAINER:pn-onevpl-intel-gpu = "Yew Chang Ching <chang.ching.yew@intel.com>" 40RECIPE_MAINTAINER:pn-onevpl-intel-gpu = "Yew Chang Ching <chang.ching.yew@intel.com>"
42RECIPE_MAINTAINER:pn-open-model-zoo = "Anuj Mittal <anuj.mittal@intel.com>"
43RECIPE_MAINTAINER:pn-opencl-clang = "Naveen Saini <naveen.kumar.saini@intel.com>" 41RECIPE_MAINTAINER:pn-opencl-clang = "Naveen Saini <naveen.kumar.saini@intel.com>"
44RECIPE_MAINTAINER:pn-openvino-inference-engine = "Anuj Mittal <anuj.mittal@intel.com>"
45RECIPE_MAINTAINER:pn-openvino-model-optimizer = "Anuj Mittal <anuj.mittal@intel.com>"
46RECIPE_MAINTAINER:pn-openvkl = "Naveen Saini <naveen.kumar.saini@intel.com>" 42RECIPE_MAINTAINER:pn-openvkl = "Naveen Saini <naveen.kumar.saini@intel.com>"
47RECIPE_MAINTAINER:pn-ospray = "Naveen Saini <naveen.kumar.saini@intel.com>" 43RECIPE_MAINTAINER:pn-ospray = "Naveen Saini <naveen.kumar.saini@intel.com>"
48RECIPE_MAINTAINER:pn-ovmf-shell-image-enrollkeys = "Naveen Saini <naveen.kumar.saini@intel.com>"
49RECIPE_MAINTAINER:pn-rkcommon = "Naveen Saini <naveen.kumar.saini@intel.com>" 44RECIPE_MAINTAINER:pn-rkcommon = "Naveen Saini <naveen.kumar.saini@intel.com>"
50RECIPE_MAINTAINER:pn-sbsigntool-native = "Anuj Mittal <anuj.mittal@intel.com>"
51RECIPE_MAINTAINER:pn-secureboot-selftest-image-signed = "Anuj Mittal <anuj.mittal@intel.com>"
52RECIPE_MAINTAINER:pn-secureboot-selftest-image-unsigned = "Anuj Mittal <anuj.mittal@intel.com>"
53RECIPE_MAINTAINER:pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>" 45RECIPE_MAINTAINER:pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>"
54RECIPE_MAINTAINER:pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>" 46RECIPE_MAINTAINER:pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>"
diff --git a/conf/layer.conf b/conf/layer.conf
index 97dfb897..9365f3a2 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -19,7 +19,7 @@ LAYERRECOMMENDS_intel = "dpdk"
19# This should only be incremented on significant changes that will 19# This should only be incremented on significant changes that will
20# cause compatibility issues with other layers 20# cause compatibility issues with other layers
21LAYERVERSION_intel = "5" 21LAYERVERSION_intel = "5"
22LAYERSERIES_COMPAT_intel = "kirkstone scarthgap" 22LAYERSERIES_COMPAT_intel = "scarthgap whinlatter"
23 23
24BBFILES_DYNAMIC += " \ 24BBFILES_DYNAMIC += " \
25 clang-layer:${LAYERDIR}/dynamic-layers/clang-layer/*/*/*.bb \ 25 clang-layer:${LAYERDIR}/dynamic-layers/clang-layer/*/*/*.bb \
@@ -42,4 +42,4 @@ PREFERRED_PROVIDER_libva-utils ?= "libva-utils"
42PREFERRED_PROVIDER_libva-utils-native ?= "libva-utils-native" 42PREFERRED_PROVIDER_libva-utils-native ?= "libva-utils-native"
43PREFERRED_PROVIDER_nativesdk-libva-utils ?= "nativesdk-libva-utils" 43PREFERRED_PROVIDER_nativesdk-libva-utils ?= "nativesdk-libva-utils"
44 44
45# addpylib ${LAYERDIR}/lib oeqa 45addpylib ${LAYERDIR}/lib oeqa
diff --git a/conf/machine/include/meta-intel.inc b/conf/machine/include/meta-intel.inc
index 230d0253..c98aa78a 100644
--- a/conf/machine/include/meta-intel.inc
+++ b/conf/machine/include/meta-intel.inc
@@ -7,9 +7,10 @@
7PREFERRED_PROVIDER_virtual/kernel ?= "linux-intel" 7PREFERRED_PROVIDER_virtual/kernel ?= "linux-intel"
8PREFERRED_PROVIDER_virtual/kernel:poky-tiny ?= "linux-intel" 8PREFERRED_PROVIDER_virtual/kernel:poky-tiny ?= "linux-intel"
9 9
10PREFERRED_VERSION_linux-intel ?= "6.6%" 10PREFERRED_VERSION_linux-intel ?= "6.12%"
11PREFERRED_VERSION_linux-intel-rt ?= "6.6%" 11PREFERRED_VERSION_linux-intel-rt ?= "6.12%"
12PREFERRED_VERSION_linux-intel:poky-altcfg ?= "6.8%" 12PREFERRED_VERSION_linux-intel:poky-altcfg ?= "6.12%"
13PREFERRED_VERSION_linux-intel-rt:poky-altcfg ?= "6.12%"
13 14
14# Need to point to latest version of libva needed for media components 15# Need to point to latest version of libva needed for media components
15PREFERRED_PROVIDER_libva = "libva-intel" 16PREFERRED_PROVIDER_libva = "libva-intel"
@@ -20,10 +21,6 @@ PREFERRED_PROVIDER_libva-utils = "libva-intel-utils"
20PREFERRED_PROVIDER_libva-utils-native = "libva-intel-utils-native" 21PREFERRED_PROVIDER_libva-utils-native = "libva-intel-utils-native"
21PREFERRED_PROVIDER_nativesdk-libva-utils = "nativesdk-libva-intel-utils" 22PREFERRED_PROVIDER_nativesdk-libva-utils = "nativesdk-libva-intel-utils"
22 23
23LLVM_MAJOR_VERSION = "${@d.getVar('LLVMVERSION').split('.')[0]}"
24PREFERRED_VERSION_opencl-clang ?= "${@bb.utils.contains('LLVM_MAJOR_VERSION', '14', '14.0.0', '15.0.0', d)}"
25PREFERRED_VERSION_opencl-clang-native ?= "${@bb.utils.contains('LLVM_MAJOR_VERSION', '14', '14.0.0', '15.0.0', d)}"
26
27XSERVER_X86_ASPEED_AST = "xf86-video-ast \ 24XSERVER_X86_ASPEED_AST = "xf86-video-ast \
28 " 25 "
29 26
diff --git a/conf/machine/intel-corei7-64.conf b/conf/machine/intel-corei7-64.conf
index 968395fe..947f72d4 100644
--- a/conf/machine/intel-corei7-64.conf
+++ b/conf/machine/intel-corei7-64.conf
@@ -11,7 +11,7 @@ MACHINE_FEATURES += "pcbios efi"
11MACHINE_FEATURES += "wifi 3g nfc" 11MACHINE_FEATURES += "wifi 3g nfc"
12MACHINE_FEATURES += "intel-ucode" 12MACHINE_FEATURES += "intel-ucode"
13 13
14MACHINE_HWCODECS ?= "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'intel-media-driver intel-mediasdk', d)} gstreamer1.0-vaapi" 14MACHINE_HWCODECS ?= "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'intel-media-driver vpl-gpu-rt', d)} gstreamer1.0-vaapi"
15 15
16# Enable optional dpdk: 16# Enable optional dpdk:
17COMPATIBLE_MACHINE:pn-dpdk = "intel-corei7-64" 17COMPATIBLE_MACHINE:pn-dpdk = "intel-corei7-64"
diff --git a/conf/machine/intel-skylake-64.conf b/conf/machine/intel-skylake-64.conf
index a2b392c2..bfaf08dd 100644
--- a/conf/machine/intel-skylake-64.conf
+++ b/conf/machine/intel-skylake-64.conf
@@ -12,7 +12,7 @@ MACHINE_FEATURES += "efi"
12MACHINE_FEATURES += "wifi 3g nfc" 12MACHINE_FEATURES += "wifi 3g nfc"
13MACHINE_FEATURES += "intel-ucode" 13MACHINE_FEATURES += "intel-ucode"
14 14
15MACHINE_HWCODECS ?= "intel-media-driver intel-mediasdk gstreamer1.0-vaapi" 15MACHINE_HWCODECS ?= "intel-media-driver vpl-gpu-rt gstreamer1.0-vaapi"
16 16
17COMPATIBLE_MACHINE:pn-dpdk = "intel-skylake-64" 17COMPATIBLE_MACHINE:pn-dpdk = "intel-skylake-64"
18COMPATIBLE_MACHINE:pn-dpdk-module = "intel-skylake-64" 18COMPATIBLE_MACHINE:pn-dpdk-module = "intel-skylake-64"
diff --git a/documentation/building_and_booting.md b/documentation/building_and_booting.md
new file mode 100644
index 00000000..478a4fb0
--- /dev/null
+++ b/documentation/building_and_booting.md
@@ -0,0 +1,134 @@
1### Building the Intel BSP layers
2
3The intel-common BSP provide a few carefully selected tune options and
4generic hardware support to cover the majority of current Intel CPUs and
5devices. The naming follows the convention of intel-<TUNE>-<BITS>, where
6TUNE is the gcc cpu-type (used with mtune and march typically) and BITS
7is either 32 bit or 64 bit.
8
9In order to build an image with BSP support for a given release, you
10need to clone the meta-intel layer from git repository:
11```
12git clone https://git.yoctoproject.org/meta-intel
13```
14
15Check out the appropriate branch or release tags. The branch name and tags
16would align with Yocto Project
17[Release Codenames](https://wiki.yoctoproject.org/wiki/Releases).
18Assuming meta-intel repository is cloned at the top-level of
19OE-Core build tree, you can build a BSP image by adding the location of
20the meta-intel layer to bblayers.conf:
21```
22BBLAYERS = " \
23 /openembedded-core/meta \
24 /openembedded-core/meta-intel "
25```
26
27To enable a particular machine, add a MACHINE line naming the BSP
28to the local.conf file:
29```
30MACHINE ?= "intel-corei7-64"
31```
32
33where this can be replaced by other MACHINE types available:
34
35 - intel-core2-32
36
37 This BSP is optimized for the Core2 family of CPUs as well as all
38 Atom CPUs prior to the Silvermont core.
39
40 - intel-corei7-64
41
42 This BSP is optimized for Nehalem and later Core and Xeon CPUs as
43 well as Silvermont and later Atom CPUs, such as the Baytrail SoCs.
44
45 - intel-skylake-64
46
47 This BSP uses [x86-64-v3 tuning](https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html).
48
49You should then be able to build an image as such:
50```
51$ source oe-init-build-env
52$ bitbake core-image-sato
53```
54
55At the end of a successful build, you should have an image that
56you can boot from a USB flash drive.
57
58
59## Booting the intel-common BSP images
60
61If you've built your own image, you'll find the bootable
62image in the build/tmp/deploy/images/{MACHINE} directory, where
63'MACHINE' refers to the machine name used in the build.
64
65Under Linux, insert a USB flash drive. Assuming the USB flash drive
66takes device /dev/sdf, use dd to copy the image to it. Before the image
67can be burned onto a USB drive, it should be un-mounted. Some Linux distros
68may automatically mount a USB drive when it is plugged in. Using USB device
69/dev/sdf as an example, find all mounted partitions:
70```
71$ mount | grep sdf
72```
73
74and un-mount those that are mounted, for example:
75```
76$ umount /dev/sdf1
77$ umount /dev/sdf2
78```
79
80Now burn the image onto the USB drive:
81```
82$ sudo dd if=core-image-sato-intel-corei7-64.wic of=/dev/sdf status=progress
83$ sync
84$ eject /dev/sdf
85```
86
87This should give you a bootable USB flash device. Insert the device
88into a bootable USB socket on the target, and power on. This should
89result in a system booted to the Sato graphical desktop.
90
91If you want a terminal, use the arrows at the top of the UI to move to
92different pages of available applications, one of which is named
93'Terminal'. Clicking that should give you a root terminal.
94
95If you want to ssh into the system, you can use the root terminal to
96ifconfig the IP address and use that to ssh in. The root password is
97empty, so to log in type 'root' for the user name and hit 'Enter' at
98the Password prompt: and you should be in.
99
100If you find you're getting corrupt images on the USB (it doesn't show
101the syslinux boot: prompt, or the boot: prompt contains strange
102characters), try doing this first:
103```
104$ dd if=/dev/zero of=/dev/sdf bs=1M count=512
105```
106
107## Building the installer image
108
109If you plan to install your image to your target machine, you can build a wic
110based installer image instead of default wic image. To build it, you need to
111add below configuration to local.conf :
112
113```
114WKS_FILE = "image-installer.wks.in"
115IMAGE_FSTYPES:append = " ext4"
116IMAGE_TYPEDEP:wic = "ext4"
117INITRD_IMAGE_LIVE="core-image-minimal-initramfs"
118do_image_wic[depends] += "${INITRD_IMAGE_LIVE}:do_image_complete"
119do_rootfs[depends] += "virtual/kernel:do_deploy"
120IMAGE_BOOT_FILES:append = "\
121 ${KERNEL_IMAGETYPE} \
122 microcode.cpio \
123 ${IMGDEPLOYDIR}/${IMAGE_BASENAME}-${MACHINE}.rootfs.ext4;rootfs.img \
124 ${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', 'grub-efi-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
125 ${@bb.utils.contains('EFI_PROVIDER', 'grub-efi', '${IMAGE_ROOTFS}/boot/EFI/BOOT/grub.cfg;EFI/BOOT/grub.cfg', '', d)} \
126 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', 'systemd-bootx64.efi;EFI/BOOT/bootx64.efi', '', d)} \
127 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/loader.conf;loader/loader.conf ', '', d)} \
128 ${@bb.utils.contains('EFI_PROVIDER', 'systemd-boot', '${IMAGE_ROOTFS}/boot/loader/entries/boot.conf;loader/entries/boot.conf', '', d)} "
129```
130
131Burn the wic image onto USB flash device, insert the device to target machine
132and power on. This should start the installation process.
133
134
diff --git a/documentation/openvino.md b/documentation/openvino.md
new file mode 100644
index 00000000..9794b928
--- /dev/null
+++ b/documentation/openvino.md
@@ -0,0 +1,92 @@
1Build a Yocto Image with OpenVINO™ toolkit
2==========================================
3
4Follow the [Yocto Project official documentation](https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html#compatible-linux-distribution) to set up and configure your host machine to be compatible with BitBake.
5
6## Step 1: Set Up Environment
7
81. Clone the repositories.
9
10```
11 git clone https://git.yoctoproject.org/git/poky
12 git clone https://github.com/openembedded/meta-openembedded
13 git clone https://git.yoctoproject.org/git/meta-intel
14 git clone https://github.com/intel/meta-openvino
15```
16
17
182. Set up the OpenEmbedded build environment.
19
20```
21 source poky/oe-init-build-env
22
23```
24
25
26
273. Add BitBake layers.
28
29
30```
31 bitbake-layers add-layer ../meta-openembedded/meta-oe
32 bitbake-layers add-layer ../meta-openembedded/meta-python
33 bitbake-layers add-layer ../meta-intel
34 bitbake-layers add-layer ../meta-openvino
35
36```
37
38
394. Set up BitBake configurations.
40 Include extra configuration in the `conf/local.conf` file in your build directory as required.
41
42
43```
44 MACHINE = "intel-skylake-64"
45
46 # Enable building OpenVINO Python API.
47 # This requires meta-python layer to be included in bblayers.conf.
48 PACKAGECONFIG:append:pn-openvino-inference-engine = " python3"
49
50 # This adds OpenVINO related libraries in the target image.
51 CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine"
52
53 # This adds OpenVINO samples in the target image.
54 CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine-samples"
55
56 # Include OpenVINO Python API package in the target image.
57 CORE_IMAGE_EXTRA_INSTALL:append = " openvino-inference-engine-python3"
58
59```
60
61## Step 2: Build a Yocto Image with OpenVINO Packages
62
63Run BitBake to build your image with OpenVINO packages. For example, to build the minimal image, run the following command:
64
65
66```
67 bitbake core-image-minimal
68
69```
70
71## Step 3: Verify the Yocto Image
72
73Verify that OpenVINO packages were built successfully. Run the following command:
74
75```
76 oe-pkgdata-util list-pkgs | grep openvino
77
78```
79
80
81If the image build is successful, it will return the list of packages as below:
82
83```
84 openvino-inference-engine
85 openvino-inference-engine-dbg
86 openvino-inference-engine-dev
87 openvino-inference-engine-python3
88 openvino-inference-engine-samples
89 openvino-inference-engine-src
90 openvino-inference-engine-doc
91
92```
diff --git a/documentation/reporting_bugs.md b/documentation/reporting_bugs.md
new file mode 100644
index 00000000..5fbc3d27
--- /dev/null
+++ b/documentation/reporting_bugs.md
@@ -0,0 +1,22 @@
1## Reporting bugs
2
3If you have problems with or questions about a particular BSP, please
4contact the maintainer listed in the [Maintainer](../README.md#maintainers) section directly (cc:ing
5the Yocto mailing list puts it in the archive and helps other people
6who might have the same questions in the future), but please try to do
7the following first:
8
9- look in the [Yocto Project Bugzilla](http://bugzilla.yoctoproject.org/) to see if a
10 problem has already been reported
11
12- look through recent entries of the [meta-intel](https://lists.yoctoproject.org/g/meta-intel/messages)
13 and [Yocto Archives](https://lists.yoctoproject.org/g/yocto/messages) mailing list archives to see
14 if other people have run into similar problems or had similar questions answered.
15
16If you believe you have encountered a bug, you can open a new bug and
17enter the details in the [Yocto Project Bugzilla](https://bugzilla.yoctoproject.org/).
18If you're relatively certain that it's a bug against the BSP itself, please use the
19'BSPs | bsps-meta-intel' category for the bug; otherwise, please submit the bug against
20the most likely category for the problem. if you're wrong, it's not a big deal and
21the bug will be recategorized upon triage.
22
diff --git a/documentation/secureboot/README b/documentation/secureboot/README
deleted file mode 100644
index 3d5703bb..00000000
--- a/documentation/secureboot/README
+++ /dev/null
@@ -1,38 +0,0 @@
1Currently, only one implementation of Secure Boot is available out of the box,
2which is using a single signed EFI application to directly boot the kernel with
3an optional initramfs.
4
5This can be added to your build either through local.conf, or via your own
6custom image recipe.
7
8If you are adding it via local.conf, set the following variables:
9
10IMAGE_FEATURES += "secureboot"
11WKS_FILE = "generic-bootdisk.wks.in"
12SECURE_BOOT_SIGNING_KEY = "/path/to/your/signing/key"
13SECURE_BOOT_SIGNING_CERT = "/path/to/your/signing/cert"
14IMAGE_CLASSES += "uefi-comboapp"
15
16If working with an image recipe, you can inherit uefi-comboapp directly instead
17of using the IMAGE_CLASSES variable.
18
19The signing keys and certs can be created via openssl commands. Here's an
20example:
21openssl req -new -x509 -newkey rsa:2048 -subj "/CN=your-subject/" -keyout \
22your-key.key -out your-key.crt -days 365 -nodes -sha256
23openssl x509 -in your-key.crt -out your-key.cer -outform DER
24
25The .crt file is your SECURE_BOOT_SIGNING_CERT, and the .key file is your
26SECURE_BOOT_SIGNING_KEY.
27
28You should enroll the .crt key in your firmware under the PK, KEK, and DB
29options (methods are different depending on your firmware). If a key should ever
30become invalid, enroll it under DBX to blacklist it.
31
32The comboapp can be further manipulated in a number of ways. You can modify the
33kernel command line via the APPEND variable, you can change the default UUID via
34the DISK_SIGNATURE_UUID variable, and you can modify the contents of the
35initramfs via the INITRD_IMAGE or INITRD_LIVE variables.
36
37A simple Secure Boot enabled image used for testing can be viewed at:
38common/recipes-selftest/images/secureboot-selftest-image-signed.bb
diff --git a/documentation/submitting_patches.md b/documentation/submitting_patches.md
new file mode 100644
index 00000000..f36c4b08
--- /dev/null
+++ b/documentation/submitting_patches.md
@@ -0,0 +1,26 @@
1## Guidelines for submitting patches
2
3Please submit any patches against meta-intel BSPs to the
4[meta-intel mailing list](https://lists.yoctoproject.org/g/meta-intel)
5(email: meta-intel@lists.yoctoproject.org). Also, if your patches are
6available via a public git repository, please also include a URL to
7the repo and branch containing your patches as that makes it easier
8for maintainers to grab and test your patches.
9
10The patches should follow the suggestions outlined in the
11[Yocto Project and OpenEmbedded Contributor Guide](https://docs.yoctoproject.org/dev/contributor-guide/index.html).
12In addition, for any non-trivial patch, provide information about how you
13tested the patch, and for any non-trivial or non-obvious testing
14setup, provide details of that setup.
15
16Doing a quick 'git log' in meta-intel will provide you with many
17examples of good example commits if you have questions about any
18aspect of the preferred format.
19
20The meta-intel maintainers will do their best to review and/or pull in
21a patch or patch sets within 24 hours of the time it was posted. For
22larger and/or more involved patches and patch sets, the review process
23may take longer.
24
25Please see the [maintainers](../README.md#maintainers) section for the list of maintainers. It's also
26a good idea to cc: the maintainer, if applicable.
diff --git a/documentation/tested_hardware.md b/documentation/tested_hardware.md
new file mode 100644
index 00000000..1fa81454
--- /dev/null
+++ b/documentation/tested_hardware.md
@@ -0,0 +1,21 @@
1## Tested Hardware
2
3The following undergo regular testing with their respective MACHINE types:
4
5- intel-corei7-64:
6 * Alder Lake-P/S/PS
7 * Amston Lake
8 * Elkhart Lake
9 * Metor Lake-P
10 * Raptor Lake-P/S
11 * Tiger Lake
12
13- intel-skylake-64:
14 * Alder Lake-P/S/PS
15 * Amston Lake
16 * Metor Lake-P
17 * Raptor Lake-P/S
18 * Tiger Lake
19
20- intel-core2-32:
21 * MinnowBoard Turbot
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.4.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
index afea70df..531f80c6 100644
--- a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.4.bb
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
@@ -14,8 +14,7 @@ inherit pkgconfig cmake ptest
14 14
15DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}" 15DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}"
16 16
17S = "${WORKDIR}/git" 17SRCREV = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af"
18SRCREV = "ecd7fb6d5a0df6503d1691c1754a684b9c769c16"
19SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \ 18SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \
20 file://run-ptest \ 19 file://run-ptest \
21 " 20 "
@@ -35,6 +34,7 @@ EXTRA_OECMAKE += " \
35 -DDNNL_ARCH_OPT_FLAGS="" \ 34 -DDNNL_ARCH_OPT_FLAGS="" \
36 -DCMAKE_SKIP_RPATH=ON \ 35 -DCMAKE_SKIP_RPATH=ON \
37 -DONEDNN_BUILD_GRAPH=OFF \ 36 -DONEDNN_BUILD_GRAPH=OFF \
37 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
38 " 38 "
39 39
40PACKAGECONFIG ??= "gpu" 40PACKAGECONFIG ??= "gpu"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch
index 265fcfa2..45288ce1 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/allow-to-find-cpp-generation-tool.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch
@@ -1,7 +1,7 @@
1From a6361d635e5f3046853883f3ac06fb175116933c Mon Sep 17 00:00:00 2001 1From 8c330d0cb5167612296801f0202b0de35e9ca88d Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com> 2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Sat, 21 Aug 2021 16:09:39 -0700 3Date: Sat, 21 Aug 2021 16:09:39 -0700
4Subject: [PATCH] Build not able to locate cpp_generation_tool. 4Subject: [PATCH 2/5] Build not able to locate cpp_generation_tool.
5 5
6Upstream-Status: Inappropriate [oe specific] 6Upstream-Status: Inappropriate [oe specific]
7 7
@@ -11,12 +11,12 @@ Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
11 shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++----- 11 shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-) 12 1 file changed, 5 insertions(+), 5 deletions(-)
13 13
14diff --git a/shared/source/built_ins/kernels/CMakeLists.txt b/shared/source/built_ins/kernels/CMakeLists.txt 14Index: git/shared/source/built_ins/kernels/CMakeLists.txt
15index ed85a37c52..f7c9e79137 100644 15===================================================================
16--- a/shared/source/built_ins/kernels/CMakeLists.txt 16--- git.orig/shared/source/built_ins/kernels/CMakeLists.txt
17+++ b/shared/source/built_ins/kernels/CMakeLists.txt 17+++ git/shared/source/built_ins/kernels/CMakeLists.txt
18@@ -107,9 +107,9 @@ function(compile_builtin core_type platform_it builtin bits builtin_options mode 18@@ -122,9 +122,9 @@ function(compile_builtin core_type platf
19 ) 19 endif()
20 add_custom_command( 20 add_custom_command(
21 OUTPUT ${OUTPUT_FILE_CPP} 21 OUTPUT ${OUTPUT_FILE_CPP}
22- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME} 22- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
@@ -27,8 +27,8 @@ index ed85a37c52..f7c9e79137 100644
27 ) 27 )
28 list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}") 28 list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}")
29 else() 29 else()
30@@ -159,9 +159,9 @@ function(generate_cpp_spirv builtin) 30@@ -176,9 +176,9 @@ function(generate_cpp_spirv builtin)
31 ) 31 endif()
32 add_custom_command( 32 add_custom_command(
33 OUTPUT ${OUTPUT_FILE_CPP} 33 OUTPUT ${OUTPUT_FILE_CPP}
34- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME} 34- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
@@ -39,13 +39,3 @@ index ed85a37c52..f7c9e79137 100644
39 ) 39 )
40 set(OUTPUT_LIST_CPP_FILES ${OUTPUT_LIST_CPP_FILES} ${OUTPUT_FILE_CPP} PARENT_SCOPE) 40 set(OUTPUT_LIST_CPP_FILES ${OUTPUT_LIST_CPP_FILES} ${OUTPUT_FILE_CPP} PARENT_SCOPE)
41 else() 41 else()
42@@ -277,4 +277,4 @@ if(NOT "${OUTPUT_LIST_CPP_FILES}" STREQUAL "")
43 )
44 endif()
45
46-apply_macro_for_each_core_type("SUPPORTED")
47\ No newline at end of file
48+apply_macro_for_each_core_type("SUPPORTED")
49--
502.43.2
51
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/external-ocloc.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
index 5f93b7b6..2001d839 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/external-ocloc.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
@@ -1,7 +1,7 @@
1From 1f58c22992ddea4167b01b44448528de427f50d5 Mon Sep 17 00:00:00 2001 1From 0006db5f55a9f08bd3452558a53704cd3bbb790f Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com> 2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Wed, 2 Mar 2022 15:52:45 -0800 3Date: Wed, 2 Mar 2022 15:52:45 -0800
4Subject: [PATCH] external ocloc 4Subject: [PATCH 3/5] external ocloc
5 5
6Upstream-Status: Inappropriate 6Upstream-Status: Inappropriate
7 7
@@ -10,11 +10,11 @@ Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
10 cmake/ocloc_cmd_prefix.cmake | 14 ++++++++------ 10 cmake/ocloc_cmd_prefix.cmake | 14 ++++++++------
11 1 file changed, 8 insertions(+), 6 deletions(-) 11 1 file changed, 8 insertions(+), 6 deletions(-)
12 12
13diff --git a/cmake/ocloc_cmd_prefix.cmake b/cmake/ocloc_cmd_prefix.cmake 13Index: git/cmake/ocloc_cmd_prefix.cmake
14index 2b44330831..03067c9df0 100644 14===================================================================
15--- a/cmake/ocloc_cmd_prefix.cmake 15--- git.orig/cmake/ocloc_cmd_prefix.cmake
16+++ b/cmake/ocloc_cmd_prefix.cmake 16+++ git/cmake/ocloc_cmd_prefix.cmake
17@@ -4,12 +4,14 @@ 17@@ -4,13 +4,15 @@
18 # SPDX-License-Identifier: MIT 18 # SPDX-License-Identifier: MIT
19 # 19 #
20 20
@@ -35,6 +35,4 @@ index 2b44330831..03067c9df0 100644
35+ endif() 35+ endif()
36 endif() 36 endif()
37 endif() 37 endif()
38-- 38
392.37.3
40
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/disable-werror.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/disable-werror.patch
deleted file mode 100644
index 20d9b847..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/disable-werror.patch
+++ /dev/null
@@ -1,16 +0,0 @@
1Upstream-Status: Inappropriate
2Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
3
4diff --git a/CMakeLists.txt b/CMakeLists.txt
5index d52e089778..bc0cf35014 100644
6--- a/CMakeLists.txt
7+++ b/CMakeLists.txt
8@@ -727,7 +727,7 @@ if(NOT MSVC)
9 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-noexcept-type") # Added for gtest
10 endif()
11 endif()
12- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Werror=vla")
13+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=vla")
14
15 if(USE_SANITIZE_UB)
16 check_cxx_compiler_flag(-fsanitize=undefined COMPILER_SUPPORTS_UNDEFINED_BEHAVIOR_SANITIZER)
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_24.05.28454.6.bb b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
index 60125171..b13daaa8 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_24.05.28454.6.bb
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
@@ -8,15 +8,12 @@ LICENSE = "MIT & Apache-2.0"
8LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \ 8LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \
9 file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" 9 file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
10 10
11SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/24.05 \ 11SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/25.13 \
12 file://disable-werror.patch \ 12 file://0002-Build-not-able-to-locate-cpp_generation_tool.patch \
13 file://allow-to-find-cpp-generation-tool.patch \ 13 file://0003-external-ocloc.patch \
14 file://external-ocloc.patch \
15 " 14 "
16 15
17SRCREV = "23a9725e62c8181193c90e5e5207507a1f136587" 16SRCREV = "a9961bdfaa07250fd52ff930bf8f31fb4e3b7799"
18
19S = "${WORKDIR}/git"
20 17
21DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native" 18DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native"
22 19
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
index 377081fd..456a8c65 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
@@ -1,4 +1,4 @@
1From 3d71670f8ad5b54d434c2f5f71713bb1d5433ae4 Mon Sep 17 00:00:00 2001 1From 1b98a931c3bf8daccc48cd618335ff35e3d382da Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com> 2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 12 Oct 2021 23:46:42 +0800 3Date: Tue, 12 Oct 2021 23:46:42 +0800
4Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS 4Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS
@@ -17,19 +17,16 @@ Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
17 IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +- 17 IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-) 18 1 file changed, 1 insertion(+), 1 deletion(-)
19 19
20diff --git a/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake b/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake 20Index: git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
21index d20d7f887..882e09fea 100644 21===================================================================
22--- a/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake 22--- git.orig/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
23+++ b/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake 23+++ git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
24@@ -109,7 +109,7 @@ function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE) 24@@ -121,7 +121,7 @@ function(vc_build_bif RES_FILE CMCL_SRC_
25 COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}" 25 COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}"
26 COMMAND CMCLTranslatorTool -o ${BIF_CMCL_BC_NAME} ${BIF_CLANG_BC_NAME_FINAL} 26 COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL}
27 COMMAND ${LLVM_OPT_EXE} ${IGC_LLVM_DEPENDENT_OPT_FLAGS} --O2 -o ${BIF_OPT_BC_NAME} ${BIF_CMCL_BC_NAME} 27 COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH}
28- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${BIF_CLANG_BC_PATH_FINAL} 28- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS})
29+ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL} 29+ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL})
30 BYPRODUCTS ${BIF_OPT_BC_PATH} 30
31 SOURCES ${CMCL_SRC_PATH}) 31 add_custom_target(${TARGET_NAME}
32 set(${RES_FILE} ${BIF_OPT_BC_NAME} PARENT_SCOPE) 32 DEPENDS ${BIF_OPT_BC_PATH}
33--
342.43.2
35
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch
new file mode 100644
index 00000000..87b094aa
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-Build-not-able-to-locate-BiFManager-bin.patch
@@ -0,0 +1,27 @@
1From 048512728eea53b3772a3f80ac9743bfc462487e Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Thu, 2 Jan 2025 15:59:27 +0530
4Subject: [PATCH] Build not able to locate BiFManager-bin
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 IGC/BiFModule/CMakeLists.txt | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13Index: git/IGC/BiFModule/CMakeLists.txt
14===================================================================
15--- git.orig/IGC/BiFModule/CMakeLists.txt
16+++ git/IGC/BiFModule/CMakeLists.txt
17@@ -655,8 +655,8 @@ set(IGC_BUILD__PROJ__BiFModuleCache_OCL
18
19 add_custom_command(
20 OUTPUT "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc"
21- COMMAND $<TARGET_FILE:BiFManager-bin> "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
22- DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc"$<TARGET_FILE:BiFManager-bin>
23+ COMMAND BiFManager-bin "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bifbc" "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.h"
24+ DEPENDS "${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_32.bc" "${IGC_BUILD__BIF_DIR}/IGCsize_t_64.bc" BiFManager-bin
25 COMMENT "BiF: ${IGC_BUILD__BIF_DIR}/OCLBiFImpl.bc: Spliting output .bc."
26 COMMAND_EXPAND_LISTS
27 )
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
index dca75e22..fc66b71d 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
@@ -1,4 +1,4 @@
1From e69a3181482e5f442756a61c7b683914072884f1 Mon Sep 17 00:00:00 2001 1From 251e2854dd206ebf66e5908d3277e4585fe2a63b Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com> 2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Mon, 9 Jan 2023 11:43:05 +0800 3Date: Mon, 9 Jan 2023 11:43:05 +0800
4Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers 4Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers
@@ -9,16 +9,15 @@ file path substitutions take place.
9Upstream-Status: Inappropriate 9Upstream-Status: Inappropriate
10 10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> 11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12
13--- 12---
14 external/SPIRV-Tools/CMakeLists.txt | 4 ++-- 13 external/SPIRV-Tools/CMakeLists.txt | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-) 14 1 file changed, 2 insertions(+), 2 deletions(-)
16 15
17diff --git a/external/SPIRV-Tools/CMakeLists.txt b/external/SPIRV-Tools/CMakeLists.txt 16Index: git/external/SPIRV-Tools/CMakeLists.txt
18index 9afa5746c..7ca24d5dc 100644 17===================================================================
19--- a/external/SPIRV-Tools/CMakeLists.txt 18--- git.orig/external/SPIRV-Tools/CMakeLists.txt
20+++ b/external/SPIRV-Tools/CMakeLists.txt 19+++ git/external/SPIRV-Tools/CMakeLists.txt
21@@ -43,8 +43,8 @@ else() #By default use build from sources 20@@ -45,8 +45,8 @@ else() #By default use build from source
22 message(STATUS "[SPIRV-Tools] : Building from source") 21 message(STATUS "[SPIRV-Tools] : Building from source")
23 message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}") 22 message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}")
24 23
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
index 39443931..3d9ae02f 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
@@ -1,19 +1,18 @@
1From 5648568e597acd0fed82aac3e6aef0f95a1b78d1 Mon Sep 17 00:00:00 2001 1From 1641dc87b2ed6b6b87b2cef824e4d66da65b0b30 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com> 2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 19 May 2022 22:50:09 +0800 3Date: Thu, 19 May 2022 22:50:09 +0800
4Subject: [PATCH] fix tblgen 4Subject: [PATCH] fix tblgen
5 5
6Upstream-Status: Inappropriate [OE specific] 6Upstream-Status: Inappropriate [OE specific]
7
8--- 7---
9 IGC/cmake/igc_llvm.cmake | 2 +- 8 IGC/cmake/igc_llvm.cmake | 2 +-
10 1 file changed, 1 insertion(+), 1 deletion(-) 9 1 file changed, 1 insertion(+), 1 deletion(-)
11 10
12diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake 11diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake
13index 10322533c..9020cb3c8 100644 12index b708cc904..fe4668890 100644
14--- a/IGC/cmake/igc_llvm.cmake 13--- a/IGC/cmake/igc_llvm.cmake
15+++ b/IGC/cmake/igc_llvm.cmake 14+++ b/IGC/cmake/igc_llvm.cmake
16@@ -52,7 +52,7 @@ else() 15@@ -53,7 +53,7 @@ else()
17 set(LLVM_OPT_EXE "opt" CACHE STRING "") 16 set(LLVM_OPT_EXE "opt" CACHE STRING "")
18 17
19 set(LLVM_TABLEGEN_EXE "llvm-tblgen") 18 set(LLVM_TABLEGEN_EXE "llvm-tblgen")
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
index 650130a8..4269fadf 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
@@ -1,4 +1,4 @@
1From 0559332abd04b6c8bc70171d201f43d2e4735336 Mon Sep 17 00:00:00 2001 1From ca136c04d4ac60e3febc8ea2b9c4d4736365a424 Mon Sep 17 00:00:00 2001
2From: Lee Chee Yang <chee.yang.lee@intel.com> 2From: Lee Chee Yang <chee.yang.lee@intel.com>
3Date: Wed, 2 Sep 2020 08:28:35 +0800 3Date: Wed, 2 Sep 2020 08:28:35 +0800
4Subject: [PATCH] Improve Reproducibility for src package 4Subject: [PATCH] Improve Reproducibility for src package
@@ -9,16 +9,15 @@ this only works on bison 3.7 onward, hence check for bison version
9before adding the flags. 9before adding the flags.
10Upstream-Status: Inappropriate [applying --file-prefix-map in such way does not work for upstream] 10Upstream-Status: Inappropriate [applying --file-prefix-map in such way does not work for upstream]
11Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> 11Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
12
13--- 12---
14 visa/CMakeLists.txt | 7 +++++-- 13 visa/CMakeLists.txt | 7 +++++--
15 1 file changed, 5 insertions(+), 2 deletions(-) 14 1 file changed, 5 insertions(+), 2 deletions(-)
16 15
17diff --git a/visa/CMakeLists.txt b/visa/CMakeLists.txt 16Index: git/visa/CMakeLists.txt
18index 6be467587..930c386a6 100644 17===================================================================
19--- a/visa/CMakeLists.txt 18--- git.orig/visa/CMakeLists.txt
20+++ b/visa/CMakeLists.txt 19+++ git/visa/CMakeLists.txt
21@@ -123,8 +123,11 @@ endif() 20@@ -135,8 +135,11 @@ endif()
22 set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp) 21 set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp)
23 set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp) 22 set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp)
24 23
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
index 96d828b6..f3c19ce1 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_1.0.15985.7.bb
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
@@ -6,31 +6,30 @@ hardware architecture."
6LICENSE = "MIT & Apache-2.0" 6LICENSE = "MIT & Apache-2.0"
7LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \ 7LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
8 file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \ 8 file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \
9 file://NOTICES.txt;md5=7f4fbc3eb2c34807465e63b1ec3c9d1a" 9 file://NOTICES.txt;md5=b81a52411c84df3419f20bad4d755880"
10 10
11SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/igc-1.0.15985 \ 11SRC_URI = "git://github.com/intel/intel-graphics-compiler.git;protocol=https;name=igc;branch=releases/2.10.x \
12 git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=git/vc-intrinsics;name=vc;nobranch=1 \ 12 git://github.com/intel/vc-intrinsics.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/vc-intrinsics;name=vc;nobranch=1 \
13 git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/SPIRV-Tools;name=spirv-tools;branch=main \ 13 git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Tools;name=spirv-tools;branch=main \
14 git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/SPIRV-Headers;name=spirv-headers;branch=main \ 14 git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/SPIRV-Headers;name=spirv-headers;branch=main \
15 file://0003-Improve-Reproducibility-for-src-package.patch \ 15 file://0003-Improve-Reproducibility-for-src-package.patch \
16 file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \ 16 file://0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch \
17 file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \ 17 file://0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch \
18 file://0001-Build-not-able-to-locate-BiFManager-bin.patch \
18 " 19 "
19 20
20SRC_URI:append:class-native = " file://0001-fix-tblgen.patch" 21SRC_URI:append:class-native = " file://0001-fix-tblgen.patch"
21 22
22SRCREV_igc = "6cc111d262e1c3abcf4bc6b6d8a589ebf821a5c0" 23SRCREV_igc = "83925314d4fc32b017fcbfcd73e0667ba833fb8f"
23SRCREV_vc = "da892e1982b6c25b9a133f85b4ac97142d8a3def" 24SRCREV_vc = "9d255266e1df8f1dc5d11e1fbb03213acfaa4fc7"
24SRCREV_spirv-tools = "f0cc85efdbbe3a46eae90e0f915dc1509836d0fc" 25SRCREV_spirv-tools = "f289d047f49fb60488301ec62bafab85573668cc"
25SRCREV_spirv-headers = "cca08c63cefa129d082abca0302adcb81610b465" 26SRCREV_spirv-headers = "0e710677989b4326ac974fd80c5308191ed80965"
26 27
27SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers" 28SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers"
28 29
29# Used to replace with relative path in reproducibility patch 30# Used to replace with relative path in reproducibility patch
30export B 31export B
31 32
32S = "${WORKDIR}/git"
33
34inherit cmake pkgconfig qemu python3native 33inherit cmake pkgconfig qemu python3native
35 34
36CXXFLAGS:append = " -Wno-error=nonnull" 35CXXFLAGS:append = " -Wno-error=nonnull"
@@ -38,7 +37,9 @@ CXXFLAGS:append = " -Wno-error=nonnull"
38COMPATIBLE_HOST = '(x86_64).*-linux' 37COMPATIBLE_HOST = '(x86_64).*-linux'
39COMPATIBLE_HOST:libc-musl = "null" 38COMPATIBLE_HOST:libc-musl = "null"
40 39
41DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native" 40DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native \
41 python3-pyyaml-native \
42 "
42 43
43RDEPENDS:${PN} += "opencl-clang" 44RDEPENDS:${PN} += "opencl-clang"
44 45
@@ -53,6 +54,7 @@ EXTRA_OECMAKE = " \
53 -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \ 54 -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \
54 -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \ 55 -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \
55 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ 56 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
57 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
56 " 58 "
57 59
58do_configure:prepend:class-target () { 60do_configure:prepend:class-target () {
@@ -65,10 +67,11 @@ EOF
65 chmod +x ${WORKDIR}/qemuwrapper 67 chmod +x ${WORKDIR}/qemuwrapper
66} 68}
67 69
68UPSTREAM_CHECK_GITTAGREGEX = "^igc-(?P<pver>(?!19\..*)\d+(\.\d+)+)$" 70
71UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
69 72
70FILES:${PN} += " \ 73FILES:${PN} += " \
71 ${libdir}/igc/NOTICES.txt \ 74 ${libdir}/igc2/NOTICES.txt \
72 " 75 "
73 76
74# libigc.so contains buildpaths 77# libigc.so contains buildpaths
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
index 31a3fb21..943ddf46 100644
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
@@ -9,7 +9,6 @@ SRC_URI = "git://github.com/intel/opencl-clang.git;branch=${BRANCH};protocol=htt
9 file://0002-Request-native-clang-only-when-cross-compiling-464.patch \ 9 file://0002-Request-native-clang-only-when-cross-compiling-464.patch \
10 file://0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch \ 10 file://0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch \
11 " 11 "
12S = "${WORKDIR}/git"
13 12
14inherit cmake 13inherit cmake
15DEPENDS += "clang" 14DEPENDS += "clang"
@@ -24,6 +23,7 @@ EXTRA_OECMAKE += "\
24 -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ 23 -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
25 -DCMAKE_SKIP_RPATH=TRUE \ 24 -DCMAKE_SKIP_RPATH=TRUE \
26 -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \ 25 -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \
26 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
27 " 27 "
28 28
29do_install:append:class-native() { 29do_install:append:class-native() {
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb
deleted file mode 100644
index 7e56af75..00000000
--- a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_14.0.0.bb
+++ /dev/null
@@ -1,5 +0,0 @@
1require opencl-clang.inc
2
3SRCREV = "980f1691c5babcf824ee10375a04a0d0c5d7d44a"
4
5BRANCH = "ocl-open-140"
diff --git a/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2024.0.0.bb b/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2024.0.0.bb
deleted file mode 100644
index 70177c28..00000000
--- a/dynamic-layers/meta-python/recipes-opencv/dldt/openvino-model-optimizer_2024.0.0.bb
+++ /dev/null
@@ -1,33 +0,0 @@
1SUMMARY = "OpenVINO Model Optimzer"
2DESCRIPTION = "Model Optimizer is a cross-platform command-line tool that \
3facilitates the transition between the training and deployment \
4environment, performs static model analysis, and adjusts deep \
5learning models for optimal execution on end-point target devices."
6HOMEPAGE = "https://01.org/openvinotoolkit"
7
8SRC_URI = "git://github.com/openvinotoolkit/openvino.git;protocol=https;branch=releases/2024/0;lfs=0 \
9 "
10SRCREV = "34caeefd07800b59065345d651949efbe8ab6649"
11
12LICENSE = "Apache-2.0"
13LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
14
15CVE_PRODUCT = "intel:openvino"
16S = "${WORKDIR}/git"
17
18inherit setuptools3
19
20SETUPTOOLS_SETUP_PATH = "${WORKDIR}/git/tools/mo"
21
22RDEPENDS:${PN} += " \
23 python3-defusedxml \
24 python3-fastjsonschema \
25 python3-networkx \
26 python3-numpy \
27 python3-protobuf \
28 python3-requests \
29 python3-urllib3 \
30 bash \
31 "
32
33UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+\.\d+\.\d+))$"
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch
new file mode 100644
index 00000000..751c7973
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-LMS-fix-build-issue-with-gcc-15.patch
@@ -0,0 +1,32 @@
1From 439af27f7641185933d7810b6c4eb17086438df3 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Mon, 19 May 2025 17:50:40 +0530
4Subject: [PATCH] LMS : fix build issue with gcc 15
5
6include cstdint header to resolve the below error with gcc 15
7
8| In file included from /lms/2406.0.0.0/git/MEIClient/src/MEICommand.cpp:11:
9| /lms/2406.0.0.0/git/MEIClient/Include/MEICommand.h:40:54: error: 'uint8_t' was not declared in this scope
10
11Upstream-Status: Submitted [https://github.com/intel/lms/pull/23]
12
13Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
14---
15 MEIClient/Include/MEICommand.h | 1 +
16 1 file changed, 1 insertion(+)
17
18diff --git a/MEIClient/Include/MEICommand.h b/MEIClient/Include/MEICommand.h
19index 6192d26..5332e44 100644
20--- a/MEIClient/Include/MEICommand.h
21+++ b/MEIClient/Include/MEICommand.h
22@@ -12,6 +12,7 @@
23 #define __MEI_COMMAND_H__
24 #include "heci.h"
25 #include "MEIClientException.h"
26+#include <cstdint>
27 #include <memory>
28 #include <vector>
29
30--
312.43.0
32
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
new file mode 100644
index 00000000..34622d42
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/files/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
@@ -0,0 +1,39 @@
1From e1f6129390706044112496b6f10baee5b604b4c8 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Wed, 23 Jul 2025 23:48:41 +0800
4Subject: [PATCH] cmake: Bump required CMake version to 3.5 to allow builds
5 with CMake 4+
6
7This enables builds with CMake 4+, fixing:
8
9 CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been
14 updated to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18Upstream-Status: Inappropriate
19
20Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
21---
22 CIM_Framework/openwsman/CMakeLists.txt | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-)
24
25diff --git a/CIM_Framework/openwsman/CMakeLists.txt b/CIM_Framework/openwsman/CMakeLists.txt
26index 6e54c66..e2ffa5f 100644
27--- a/CIM_Framework/openwsman/CMakeLists.txt
28+++ b/CIM_Framework/openwsman/CMakeLists.txt
29@@ -6,7 +6,7 @@ PROJECT(openwsman)
30
31 # 2.6 minimum because of CMP0005 (escaping defines)
32 # 2.8.12 minimum because CMake 3.19.7 says so
33-cmake_minimum_required(VERSION 2.8.12)
34+cmake_minimum_required(VERSION 3.5)
35
36 include(CTest)
37 enable_testing()
38--
392.37.3
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
index bdf32576..ae60df9e 100644
--- a/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
@@ -19,15 +19,19 @@ PACKAGECONFIG ??= "connman"
19PACKAGECONFIG[connman] = "-DNETWORK_CN=ON, -DNETWORK_CN=OFF, connman" 19PACKAGECONFIG[connman] = "-DNETWORK_CN=ON, -DNETWORK_CN=OFF, connman"
20PACKAGECONFIG[networkmanager] = "-DNETWORK_NM=ON, -DNETWORK_NM=OFF, networkmanager" 20PACKAGECONFIG[networkmanager] = "-DNETWORK_NM=ON, -DNETWORK_NM=OFF, networkmanager"
21 21
22REQUIRED_DISTRO_FEATURES= "systemd" 22REQUIRED_DISTRO_FEATURES = "systemd"
23 23
24FILES:${PN} += "${datadir}/dbus-1/system-services/*.service" 24EXTRA_OECMAKE += " \
25 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
26 "
25 27
26S = "${WORKDIR}/git" 28FILES:${PN} += "${datadir}/dbus-1/system-services/*.service"
27 29
28SYSTEMD_SERVICE:${PN} = "lms.service" 30SYSTEMD_SERVICE:${PN} = "lms.service"
29 31
30SRC_URI = "git://github.com/intel/lms.git;branch=master;protocol=https \ 32SRC_URI = "git://github.com/intel/lms.git;branch=master;protocol=https \
33 file://0001-LMS-fix-build-issue-with-gcc-15.patch \
34 file://0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch \
31 " 35 "
32SRCREV = "388f115b2aeb3ea11499971c65f828daefd32c47" 36SRCREV = "388f115b2aeb3ea11499971c65f828daefd32c47"
33 37
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/thermald/files/0001-Makefile-Fix-build-Issue.patch b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/files/0001-Makefile-Fix-build-Issue.patch
deleted file mode 100644
index 270cc84d..00000000
--- a/dynamic-layers/openembedded-layer/recipes-bsp/thermald/files/0001-Makefile-Fix-build-Issue.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From c4c049481d48f33319b1d04cad56d622c4eed65f Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Mon, 11 Mar 2024 13:13:32 +0800
4Subject: [PATCH] Makefile: Fix build Issue
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9In case build directory is different from source, make sure make is able to find the correct input files.
10
11Fixes:
12| dbus-binding-tool --prefix=thd_dbus_interface --mode=glib-server --output=thd_dbus_interface.h ../git/src/thd_dbus_interface.xml
13| glib-compile-resources --generate-source thermald-resource.gresource.xml
14| Failed to open file “thermald-resource.gresource.xml”: No such file or directory
15
16
17Upstream-Status: Submitted
18https://github.com/intel/thermal_daemon/pull/436
19
20Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
21---
22 Makefile.am | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-)
24
25diff --git a/Makefile.am b/Makefile.am
26index a0c051a..772e280 100644
27--- a/Makefile.am
28+++ b/Makefile.am
29@@ -95,6 +95,6 @@ thd_dbus_interface.h: $(top_srcdir)/src/thd_dbus_interface.xml
30 $(AM_V_GEN) dbus-binding-tool --prefix=thd_dbus_interface --mode=glib-server --output=$@ $<
31
32 thermald-resource.c: $(top_srcdir)/thermald-resource.gresource.xml
33- $(AM_V_GEN) glib-compile-resources --generate-source thermald-resource.gresource.xml
34+ $(AM_V_GEN) glib-compile-resources --generate-source --sourcedir=${top_srcdir} $<
35
36 CLEANFILES = $(BUILT_SOURCES)
37--
382.34.1
39
diff --git a/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.6.bb b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
index df242cdf..575a00e8 100644
--- a/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.6.bb
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
@@ -13,11 +13,9 @@ LICENSE = "GPL-2.0-only"
13LIC_FILES_CHKSUM = "file://COPYING;md5=ea8831610e926e2e469075b52bf08848" 13LIC_FILES_CHKSUM = "file://COPYING;md5=ea8831610e926e2e469075b52bf08848"
14 14
15SRC_URI = "git://github.com/intel/thermal_daemon/;branch=master;protocol=https \ 15SRC_URI = "git://github.com/intel/thermal_daemon/;branch=master;protocol=https \
16 file://0001-Makefile-Fix-build-Issue.patch \
17 " 16 "
18 17
19SRCREV = "3990ce2391e5c07293758c056e09e4f2453691b4" 18SRCREV = "df3b9ab0ffe780c4fbad7750987eff76f659cfd5"
20S = "${WORKDIR}/git"
21 19
22inherit pkgconfig autotools systemd gtk-doc 20inherit pkgconfig autotools systemd gtk-doc
23 21
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.23.0.bb b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
index ed8df859..f40e445c 100644
--- a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.23.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
@@ -9,8 +9,6 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \
9 9
10inherit cmake python3native ptest 10inherit cmake python3native ptest
11 11
12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \ 12SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \
15 file://0002-cmake-don-t-build-for-32-bit-targets.patch \ 13 file://0002-cmake-don-t-build-for-32-bit-targets.patch \
16 file://0001-Fix-QA-Issues.patch \ 14 file://0001-Fix-QA-Issues.patch \
@@ -18,7 +16,7 @@ SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \
18 file://run-ptest \ 16 file://run-ptest \
19 " 17 "
20 18
21SRCREV = "bcb2cf896c00f9a802a11cbf291ef6e44b205416" 19SRCREV = "d394222aef59e4759b06e39ec160e4aba6ee5f40"
22 20
23COMPATIBLE_HOST = '(x86_64).*-linux' 21COMPATIBLE_HOST = '(x86_64).*-linux'
24 22
@@ -29,7 +27,7 @@ RDEPENDS:${PN}-ptest += " python3-multiprocessing"
29PACKAGECONFIG ??= "tbb" 27PACKAGECONFIG ??= "tbb"
30PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb" 28PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb"
31 29
32YFLAGS='-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}' 30YFLAGS = '-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}'
33 31
34do_configure:prepend() { 32do_configure:prepend() {
35 sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt 33 sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt
diff --git a/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.15.8.bb b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
index 8bade9f4..21b3956f 100644
--- a/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.15.8.bb
+++ b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
@@ -4,8 +4,7 @@ LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc" 4LIC_FILES_CHKSUM = "file://LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc"
5 5
6SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https;branch=master" 6SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https;branch=master"
7SRCREV = "1685d01497428ca4d8b99200972b64685424d5c9" 7SRCREV = "9536683855b17a21508e5b54ba358225d6a976da"
8S = "${WORKDIR}/git"
9 8
10inherit cmake 9inherit cmake
11DEPENDS += "opencl-headers" 10DEPENDS += "opencl-headers"
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch
new file mode 100644
index 00000000..2748d7ab
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-Fix-the-compilation-warning-when-using-gcc-13-25.patch
@@ -0,0 +1,99 @@
1From b57297c14d94dac9bdef7570b7b33d70b10171f3 Mon Sep 17 00:00:00 2001
2From: Jozef Wludzik <jozef.wludzik@intel.com>
3Date: Tue, 26 Mar 2024 14:43:29 +0100
4Subject: [PATCH 1/2] Fix the compilation warning when using gcc-13 (#25)
5
6Added missing headers. Fixed compilation error about casting from
7unsigned to signed int.
8
9Upstream-Status: Backport [https://github.com/intel/linux-npu-driver/commit/4bcbf2abe94eb4d9c083bd616b58e309a82d008a]
10
11Signed-off-by: Jozef Wludzik <jozef.wludzik@intel.com>
12Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
13---
14 umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp | 7 ++++---
15 umd/vpu_driver/include/umd_common.hpp | 1 +
16 validation/umd-test/umd_prime_buffers.h | 9 +++++++--
17 validation/umd-test/utilities/data_handle.h | 1 +
18 4 files changed, 13 insertions(+), 5 deletions(-)
19
20diff --git a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
21index f206ebe..682e5b4 100644
22--- a/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
23+++ b/umd/level_zero_driver/ext/source/graph/vcl_symbols.hpp
24@@ -5,12 +5,13 @@
25 *
26 */
27
28-#include <dlfcn.h>
29-#include <memory>
30-
31 #include "vpux_driver_compiler.h"
32 #include "vpu_driver/source/utilities/log.hpp"
33
34+#include <array>
35+#include <dlfcn.h>
36+#include <memory>
37+
38 class Vcl {
39 public:
40 static Vcl &sym() {
41diff --git a/umd/vpu_driver/include/umd_common.hpp b/umd/vpu_driver/include/umd_common.hpp
42index 0c874a3..5ad9be2 100644
43--- a/umd/vpu_driver/include/umd_common.hpp
44+++ b/umd/vpu_driver/include/umd_common.hpp
45@@ -7,6 +7,7 @@
46
47 #pragma once
48
49+#include <cstdint>
50 #include <limits>
51 #include <linux/kernel.h>
52 #include <stdexcept>
53diff --git a/validation/umd-test/umd_prime_buffers.h b/validation/umd-test/umd_prime_buffers.h
54index 6f7c7de..ab4814c 100644
55--- a/validation/umd-test/umd_prime_buffers.h
56+++ b/validation/umd-test/umd_prime_buffers.h
57@@ -6,12 +6,17 @@
58 */
59
60 #pragma once
61+
62+#include "umd_test.h"
63+
64 #include <fcntl.h>
65-#include <linux/kernel.h>
66 #include <linux/dma-buf.h>
67 #include <linux/dma-heap.h>
68+#include <linux/kernel.h>
69+#include <stdint.h>
70 #include <sys/ioctl.h>
71 #include <sys/mman.h>
72+#include <unistd.h>
73
74 #define ALLIGN_TO_PAGE(x) __ALIGN_KERNEL((x), (UmdTest::PAGE_SIZE))
75
76@@ -60,7 +65,7 @@ class PrimeBufferHelper {
77 return false;
78
79 bufferFd = heapAlloc.fd;
80- buffers.insert({heapAlloc.fd, {size, nullptr}});
81+ buffers.insert({static_cast<int>(heapAlloc.fd), {size, nullptr}});
82 return true;
83 }
84
85diff --git a/validation/umd-test/utilities/data_handle.h b/validation/umd-test/utilities/data_handle.h
86index d6e0ec0..5d937b2 100644
87--- a/validation/umd-test/utilities/data_handle.h
88+++ b/validation/umd-test/utilities/data_handle.h
89@@ -6,6 +6,7 @@
90 */
91
92 #include <linux/kernel.h>
93+#include <stdint.h>
94 #include <string>
95 #include <vector>
96
97--
982.43.0
99
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch
new file mode 100644
index 00000000..71a60b20
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0001-linux-npu-driver-fix-multilib-install-issue.patch
@@ -0,0 +1,28 @@
1From 561e3b5edc0ec3d8835aaf8ef8e5c9e8f9b53061 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Wed, 28 May 2025 13:35:18 +0800
4Subject: [PATCH] linux-npu-driver : fix multilib install issue
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 firmware/CMakeLists.txt | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/firmware/CMakeLists.txt b/firmware/CMakeLists.txt
14index 0c093ca..ba346a0 100644
15--- a/firmware/CMakeLists.txt
16+++ b/firmware/CMakeLists.txt
17@@ -12,7 +12,7 @@ target_include_directories(${PROJECT_NAME} INTERFACE include)
18 file(GLOB FIRMWARE_BINARIES ${CMAKE_CURRENT_SOURCE_DIR}/bin/*.bin)
19 if (FIRMWARE_BINARIES)
20 install(FILES ${FIRMWARE_BINARIES}
21- DESTINATION /lib/firmware/updates/intel/vpu/
22+ DESTINATION ${CMAKE_INSTALL_FIRMWARE_DIR}/firmware/updates/intel/vpu/
23 PERMISSIONS OWNER_READ
24 COMPONENT fw-npu)
25 endif()
26--
272.37.3
28
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch
new file mode 100644
index 00000000..9fb97354
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver/0002-Fix-compilation-failure-with-GCC-14.patch
@@ -0,0 +1,110 @@
1From a9f51fd88effb7d324609e692ca7da576d6dad2e Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Tue, 28 May 2024 10:23:42 +0800
4Subject: [PATCH 2/2] Fix compilation failure with GCC-14
5
6umd/level_zero_driver/core/source/event/event.cpp:65:31: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
7| 65 | associatedJobs.erase(std::remove_if(associatedJobs.begin(),
8| | ^~~~~~~~~
9| | remove_cv
10
11| umd/vpu_driver/source/command/vpu_command.cpp: In member function 'void VPU::VPUCommand::appendAssociateBufferObject(VPU::VPUBufferObject*)':
12| umd/vpu_driver/source/command/vpu_command.cpp:126:20: error: 'find' is not a member of 'std'; did you mean 'bind'?
13| 126 | auto it = std::find(bufferObjects.begin(), bufferObjects.end(), bo);
14| | ^~~~
15| | bind
16
17| umd/vpu_driver/source/command/vpu_command_buffer.cpp: In member function 'bool VPU::VPUCommandBuffer::addCommand(VPU::VPUCommand*, uint64_t&, uint64_t&)':
18| umd/vpu_driver/source/command/vpu_command_buffer.cpp:185:24: error: 'find' is not a member of 'std'; did you mean 'bind'?
19| 185 | auto it = std::find(bufferHandles.begin(), bufferHandles.end(), bo->getHandle());
20| | ^~~~
21| | bind
22
23| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:301:32: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
24| 301 | std::max_element(stride_begin + TENSOR_5D_STRIDE_C, stride_end));
25| | ^~~~~~~~~~~
26| | tuple_element
27| umd/level_zero_driver/ext/source/graph/elf_parser.cpp:315:37: error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
28| 315 | auto max_stride_val = *std::max_element(stride_begin + TENSOR_4D_STRIDE_C, stride_end);
29| | ^~~~~~~~~~~
30
31| umd/level_zero_driver/tools/source/metrics/metric.cpp: In member function 'void L0::MetricContext::deactivateMetricGroups(int)':
32| umd/level_zero_driver/tools/source/metrics/metric.cpp:275:38: error: 'remove_if' is not a member of 'std'; did you mean 'remove_cv'?
33| 275 | activatedMetricGroups.erase(std::remove_if(activatedMetricGroups.begin(),
34| | ^~~~~~~~~
35| | remove_cv
36
37Upstream-Status: Submitted [https://github.com/intel/linux-npu-driver/pull/30]
38
39Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
40---
41 umd/level_zero_driver/core/source/event/event.cpp | 1 +
42 umd/level_zero_driver/ext/source/graph/elf_parser.cpp | 1 +
43 umd/level_zero_driver/tools/source/metrics/metric.cpp | 1 +
44 umd/vpu_driver/source/command/vpu_command.cpp | 1 +
45 umd/vpu_driver/source/command/vpu_command_buffer.cpp | 1 +
46 5 files changed, 5 insertions(+)
47
48diff --git a/umd/level_zero_driver/core/source/event/event.cpp b/umd/level_zero_driver/core/source/event/event.cpp
49index a92248f..196d176 100644
50--- a/umd/level_zero_driver/core/source/event/event.cpp
51+++ b/umd/level_zero_driver/core/source/event/event.cpp
52@@ -14,6 +14,7 @@
53
54 #include <level_zero/ze_api.h>
55 #include <thread>
56+#include <algorithm>
57
58 namespace L0 {
59
60diff --git a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
61index a1c8e14..dfbd61d 100644
62--- a/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
63+++ b/umd/level_zero_driver/ext/source/graph/elf_parser.cpp
64@@ -21,6 +21,7 @@
65 #include <vpux_headers/metadata.hpp>
66 #include <vpux_elf/types/vpu_extensions.hpp>
67 #include <vpux_elf/utils/error.hpp>
68+#include <algorithm>
69
70 namespace L0 {
71
72diff --git a/umd/level_zero_driver/tools/source/metrics/metric.cpp b/umd/level_zero_driver/tools/source/metrics/metric.cpp
73index b67750f..9497311 100644
74--- a/umd/level_zero_driver/tools/source/metrics/metric.cpp
75+++ b/umd/level_zero_driver/tools/source/metrics/metric.cpp
76@@ -7,6 +7,7 @@
77
78 #include "level_zero_driver/tools/source/metrics/metric.hpp"
79 #include "vpu_driver/source/utilities/log.hpp"
80+#include <algorithm>
81
82 namespace L0 {
83
84diff --git a/umd/vpu_driver/source/command/vpu_command.cpp b/umd/vpu_driver/source/command/vpu_command.cpp
85index f4ca23f..75331d9 100644
86--- a/umd/vpu_driver/source/command/vpu_command.cpp
87+++ b/umd/vpu_driver/source/command/vpu_command.cpp
88@@ -14,6 +14,7 @@
89 #include <cstdint>
90 #include <vector>
91 #include <map>
92+#include <algorithm>
93
94 namespace VPU {
95
96diff --git a/umd/vpu_driver/source/command/vpu_command_buffer.cpp b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
97index c4ad052..bbb80ec 100644
98--- a/umd/vpu_driver/source/command/vpu_command_buffer.cpp
99+++ b/umd/vpu_driver/source/command/vpu_command_buffer.cpp
100@@ -11,6 +11,7 @@
101 #include "vpu_driver/source/command/vpu_command_buffer.hpp"
102 #include "vpu_driver/source/command/vpu_copy_command.hpp"
103 #include "vpu_driver/source/utilities/log.hpp"
104+#include <algorithm>
105
106 namespace VPU {
107
108--
1092.43.0
110
diff --git a/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.23.0.bb b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.23.0.bb
new file mode 100644
index 00000000..d7ebcfa4
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.23.0.bb
@@ -0,0 +1,47 @@
1SUMMARY = "User Mode Driver for Intel® NPU device"
2HOMEPAGE = "https://github.com/intel/linux-npu-driver"
3LICENSE = "MIT & Apache-2.0"
4LIC_FILES_CHKSUM = "file://LICENSE.md;md5=7b256470048be42466f7d10e1d6482e6 \
5 file://third-party-programs.txt;md5=0ae40d7f1ef3bbd509197e427fdd7e70 \
6 file://third_party/vpux_elf/LICENSE;md5=5f51ea09f42b161b3013558e48d0fb20 \
7 file://third_party/level-zero/LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc \
8 "
9
10SRC_URI = "git://github.com/intel/linux-npu-driver.git;protocol=https;name=linux-npu-driver;branch=main;lfs=1 \
11 git://github.com/openvinotoolkit/npu_plugin_elf.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/vpux_elf;name=vpux-elf;nobranch=1 \
12 git://github.com/jbeder/yaml-cpp.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/yaml-cpp;name=yaml-cpp;nobranch=1 \
13 git://github.com/intel/level-zero-npu-extensions.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/level-zero-npu-extensions;name=lzvext;nobranch=1 \
14 git://github.com/google/googletest.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/googletest;name=googletest;nobranch=1 \
15 git://github.com/oneapi-src/level-zero.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/third_party/level-zero;name=level-zero;nobranch=1 \
16 file://0001-linux-npu-driver-fix-multilib-install-issue.patch \
17 "
18
19SRCREV_linux-npu-driver = "59845101f5445e66dcc691f4f8be6371700fbdf5"
20SRCREV_vpux-elf = "4b0a4a06ae09c0c3a973f8f18761c549ec2309eb"
21SRCREV_yaml-cpp = "f7320141120f720aecc4c32be25586e7da9eb978"
22SRCREV_lzvext = "8cf113bd4a4568f6555d81f316504d7ac3b82ee8"
23SRCREV_googletest = "b514bdc898e2951020cbdca1304b75f5950d1f59"
24SRCREV_level-zero = "e3b6efdd91d67bb03024b266094afabd39e213bf"
25SRCREV_FORMAT = "linux-npu-driver_vpux-elf_yaml-cpp_lzvext_googletest_level-zero"
26
27inherit cmake
28
29
30# Fix warning _FORTIFY_SOURCE requires compiling with optimization (-O)
31EXTRA_OECMAKE += " -DCMAKE_BUILD_TYPE=Release "
32EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS_RELEASE=-O2 "
33
34EXTRA_OECMAKE += " -DCMAKE_INSTALL_FIRMWARE_DIR=${nonarch_base_libdir}"
35EXTRA_OECMAKE += " -DCMAKE_POLICY_VERSION_MINIMUM=3.5"
36
37DEPENDS = "level-zero dpkg-native pkgconfig-native"
38
39PACKAGES =+ "${PN}-firmware ${PN}-tests"
40
41FILES:${PN}-firmware = "${nonarch_base_libdir}/firmware/updates/intel/vpu/*"
42FILES:${PN}-tests = "${bindir}"
43
44INSANE_SKIP:${PN} += "buildpaths"
45INSANE_SKIP:${PN}-dbg += "buildpaths"
46INSANE_SKIP:${PN}-tests += "buildpaths"
47INSANE_SKIP:${PN}-firmware += "buildpaths"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
index cedbae1e..106b3ad5 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
@@ -8,7 +8,7 @@ and compatible processors."
8 8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html" 9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10 10
11LICENSE="EULA" 11LICENSE = "EULA"
12 12
13COMPILERMAINVER = "2024.0" 13COMPILERMAINVER = "2024.0"
14 14
@@ -37,7 +37,7 @@ SRC_URI[openmp-common.sha256sum] = "8217001d78311cbef97dd139e684c6767932b532309c
37SRC_URI[license.sha256sum] = "9f9c8a12fc0bc82ab5b71e118e66745eff23f42224eba304068225b366cd74b6" 37SRC_URI[license.sha256sum] = "9f9c8a12fc0bc82ab5b71e118e66745eff23f42224eba304068225b366cd74b6"
38SRC_URI[dev-utils.sha256sum] = "c675d960a5abca361cead9217d6e74adee499ee0a095c4e44092bd710b304d50" 38SRC_URI[dev-utils.sha256sum] = "c675d960a5abca361cead9217d6e74adee499ee0a095c4e44092bd710b304d50"
39 39
40S = "${WORKDIR}/${BPN}" 40S = "${UNPACKDIR}/${BPN}"
41 41
42inherit bin_package 42inherit bin_package
43 43
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
index 90ada087..d2bd72a3 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
@@ -8,7 +8,7 @@ and compatible processors."
8 8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html" 9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10 10
11LICENSE="EULA" 11LICENSE = "EULA"
12 12
13COMPILERMAINVER = "2024.0" 13COMPILERMAINVER = "2024.0"
14 14
@@ -26,7 +26,7 @@ SRC_URI[icx-compiler.sha256sum] = "0dcbac766d5a1519d4cf393f5a85e71d19024fef65f77
26SRC_URI[compiler-linker.sha256sum] = "e00faea6d797934d62143e4aa70b727ce30f80fdf30769d22122b3051140c236" 26SRC_URI[compiler-linker.sha256sum] = "e00faea6d797934d62143e4aa70b727ce30f80fdf30769d22122b3051140c236"
27SRC_URI[shared-common.sha256sum] = "cf490a4a790f349da79e618359598d3b32312ca3b2639e5d4c84e1cfa2745558" 27SRC_URI[shared-common.sha256sum] = "cf490a4a790f349da79e618359598d3b32312ca3b2639e5d4c84e1cfa2745558"
28 28
29S = "${WORKDIR}/${BPN}" 29S = "${UNPACKDIR}/${BPN}"
30 30
31inherit bin_package 31inherit bin_package
32 32
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.1.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
index fb341b01..77549479 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.1.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
@@ -4,17 +4,15 @@ intended to graphics application engineers that want to improve the \
4performance of their application." 4performance of their application."
5HOMEPAGE = "https://github.com/embree/embree" 5HOMEPAGE = "https://github.com/embree/embree"
6 6
7LICENSE = "Apache-2.0 & syrah" 7LICENSE = "Apache-2.0 & BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \ 8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
9 file://third-party-programs.txt;md5=f989f5b74cfff0d45d3ccf0e1366cbdc \ 9 file://third-party-programs.txt;md5=f989f5b74cfff0d45d3ccf0e1366cbdc \
10 file://common/math/transcendental.h;beginline=6;endline=8;md5=73380bb2ab6613b30b8464f114bd0ca8" 10 file://common/math/transcendental.h;beginline=6;endline=8;md5=73380bb2ab6613b30b8464f114bd0ca8"
11 11
12inherit pkgconfig cmake 12inherit pkgconfig cmake
13 13
14S = "${WORKDIR}/git"
15
16SRC_URI = "git://github.com/embree/embree.git;protocol=https;branch=master" 14SRC_URI = "git://github.com/embree/embree.git;protocol=https;branch=master"
17SRCREV = "daa8de0e714e18ad5e5c9841b67c1950d9c91c51" 15SRCREV = "5730b150471602d6dc02d9b7d8a4a6ce9ceffe16"
18 16
19COMPATIBLE_HOST = '(x86_64).*-linux' 17COMPATIBLE_HOST = '(x86_64).*-linux'
20COMPATIBLE_HOST:libc-musl = "null" 18COMPATIBLE_HOST:libc-musl = "null"
@@ -28,3 +26,5 @@ EXTRA_OECMAKE += " \
28 -DEMBREE_ISPC_SUPPORT=ON \ 26 -DEMBREE_ISPC_SUPPORT=ON \
29 -DEMBREE_ZIP_MODE=OFF \ 27 -DEMBREE_ZIP_MODE=OFF \
30 " 28 "
29
30UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
index 1841253e..d10f50f9 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
@@ -21,7 +21,7 @@ SRC_URI[ipp.sha256sum] = "b51e45c6e691aa46c7136b0ab61f5abe346388433e017a30cf53fd
21SRC_URI[headers.sha256sum] = "342f37ab2f82bc9f4498435f848ee660591c2488b44d988bf6ee96b2a71fd005" 21SRC_URI[headers.sha256sum] = "342f37ab2f82bc9f4498435f848ee660591c2488b44d988bf6ee96b2a71fd005"
22SRC_URI[env.sha256sum] = "731e8c28a3b8b757730cd874d0941de2eb744856128f24ade59d36c12b415bf6" 22SRC_URI[env.sha256sum] = "731e8c28a3b8b757730cd874d0941de2eb744856128f24ade59d36c12b415bf6"
23 23
24S = "${WORKDIR}/${BPN}" 24S = "${UNPACKDIR}/${BPN}"
25 25
26COMPATIBLE_HOST:libc-musl = "null" 26COMPATIBLE_HOST:libc-musl = "null"
27 27
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
index e3e93028..e77ac588 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
@@ -34,7 +34,7 @@ SRC_URI[common-devel.sha256sum] = "adbf0ea946f63946d29b7f9c750c38a42ea7a65d8c816
34SRC_URI[devel.sha256sum] = "fab2a6f15e18bfd9b4d425f2703e4e98928c57f52c4feebc9ed886f097062e84" 34SRC_URI[devel.sha256sum] = "fab2a6f15e18bfd9b4d425f2703e4e98928c57f52c4feebc9ed886f097062e84"
35SRC_URI[common-vars.sha256sum] = "ec2b67813739fa4a2895f63479a41acba2174afe2d0cb8a0c1c9119d1317d8ef" 35SRC_URI[common-vars.sha256sum] = "ec2b67813739fa4a2895f63479a41acba2174afe2d0cb8a0c1c9119d1317d8ef"
36 36
37S = "${WORKDIR}/${BPN}" 37S = "${UNPACKDIR}/${BPN}"
38 38
39inherit bin_package 39inherit bin_package
40 40
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
index 4ea6ffbe..8005f544 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
@@ -20,4 +20,8 @@ inherit cmake
20 20
21DEPENDS += "tbb ispc-native" 21DEPENDS += "tbb ispc-native"
22 22
23do_install:append() {
24 chrpath -d ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
25}
26
23UPSTREAM_CHECK_URI = "https://github.com/OpenImageDenoise/oidn/releases" 27UPSTREAM_CHECK_URI = "https://github.com/OpenImageDenoise/oidn/releases"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
index a2d709a1..b458bb4d 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
@@ -16,8 +16,6 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
16 16
17inherit pkgconfig cmake 17inherit pkgconfig cmake
18 18
19S = "${WORKDIR}/git"
20
21SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https;branch=master \ 19SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https;branch=master \
22 " 20 "
23SRCREV = "8c6ba526813b871a624cb9d73d4cbb689ac7f4ce" 21SRCREV = "8c6ba526813b871a624cb9d73d4cbb689ac7f4ce"
@@ -29,11 +27,13 @@ DEPENDS = "ispc ispc-native rkcommon embree"
29 27
30EXTRA_OECMAKE += " \ 28EXTRA_OECMAKE += " \
31 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \ 29 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
30 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
32 " 31 "
33EXTRA_OECMAKE:intel-corei7-64 += " \ 32EXTRA_OECMAKE:intel-corei7-64 += " \
34 -DOPENVKL_ISA_AVX=OFF \ 33 -DOPENVKL_ISA_AVX=OFF \
35 -DOPENVKL_ISA_AVX2=OFF \ 34 -DOPENVKL_ISA_AVX2=OFF \
36 -DOPENVKL_ISA_AVX512SKX=OFF \ 35 -DOPENVKL_ISA_AVX512SKX=OFF \
36 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
37 " 37 "
38 38
39PACKAGES =+ "${PN}-examples" 39PACKAGES =+ "${PN}-examples"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.1.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
index 3e03dcc2..609e5dc3 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.1.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
@@ -11,11 +11,12 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1dece7821bf3fd70fe1309eaa37d52a2 \
11 11
12inherit pkgconfig cmake 12inherit pkgconfig cmake
13 13
14S = "${WORKDIR}/git" 14SRC_URI = "git://github.com/ospray/ospray.git;protocol=https;branch=master;name=ospray \
15 15 git://github.com/nothings/stb;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/apps/common/external/stb_image/stb;name=stb;nobranch=1 \
16SRC_URI = "git://github.com/ospray/ospray.git;protocol=https;branch=master \ 16 "
17 " 17SRCREV_ospray ?= "85af2929937d516997451cbd52d352cf93125ed2"
18SRCREV = "f2a61c2eb58ccd666e34abfdb0fd7049ea073194" 18SRCREV_stb ?= "af1a5bc36dff44f0a019df21c271db697d51f1a6"
19SRCREV_FORMAT = "ospray_stb"
19 20
20COMPATIBLE_HOST = '(x86_64).*-linux' 21COMPATIBLE_HOST = '(x86_64).*-linux'
21COMPATIBLE_HOST:libc-musl = "null" 22COMPATIBLE_HOST:libc-musl = "null"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/files/0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/files/0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch
new file mode 100644
index 00000000..5aef2b76
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/files/0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch
@@ -0,0 +1,49 @@
1From f0885d7d97e98ad586bbacf5edf7fa4022b425b9 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Mon, 11 Aug 2025 14:00:50 +0800
4Subject: [PATCH] use fully-qualified rkcommon::math::rsqrt to avoid overload
5 ambiguity
6
7Explicitly calling rkcommon::math::rsqrt() prevents conflict with the
8standard rsqrt(double) declared in bits/mathcalls.h, fixing the build
9error in Quaternion tests.
10
11Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
12
13Upstream-Status: Submitted [https://github.com/RenderKit/rkcommon/pull/16]
14---
15 tests/math/test_Quaternion.cpp | 2 +-
16 tests/math/test_rkmath.cpp | 4 ++--
17 2 files changed, 3 insertions(+), 3 deletions(-)
18
19diff --git a/tests/math/test_Quaternion.cpp b/tests/math/test_Quaternion.cpp
20index 760d815..f527824 100644
21--- a/tests/math/test_Quaternion.cpp
22+++ b/tests/math/test_Quaternion.cpp
23@@ -187,7 +187,7 @@ template <typename T>
24 inline void test_slerp()
25 {
26 typename T::Scalar two = 2;
27- REQUIRE(CmpT(slerp(.5f, T(1, 0, 0, 0), T(0, 1, 0, 0)), T(rsqrt(two), rsqrt(two), 0, 0)));
28+ REQUIRE(CmpT(slerp(.5f, T(1, 0, 0, 0), T(0, 1, 0, 0)), T(rkcommon::math::rsqrt(two), rkcommon::math::rsqrt(two), 0, 0)));
29 }
30
31 TEST_CASE("Quaternion functions", "[quat]")
32diff --git a/tests/math/test_rkmath.cpp b/tests/math/test_rkmath.cpp
33index 7f66532..fd18df4 100644
34--- a/tests/math/test_rkmath.cpp
35+++ b/tests/math/test_rkmath.cpp
36@@ -49,8 +49,8 @@ TEST_CASE("rkmath rcp_safe function", "[rkmath]")
37 template <typename T>
38 inline void test_rsqrt()
39 {
40- REQUIRE(CmpT<T>(rsqrt(T(1)), T(1)));
41- REQUIRE(CmpT<T>(rsqrt(T(4)), T(.5)));
42+ REQUIRE(CmpT<T>(rkcommon::math::rsqrt(T(1)), T(1)));
43+ REQUIRE(CmpT<T>(rkcommon::math::rsqrt(T(4)), T(.5)));
44 }
45
46 TEST_CASE("rkmath rsqrt function", "[rkmath]")
47--
482.37.3
49
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.13.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
index fe6b23ea..d49e8e52 100644
--- a/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.13.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
@@ -8,11 +8,10 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
8 8
9inherit pkgconfig cmake 9inherit pkgconfig cmake
10 10
11S = "${WORKDIR}/git"
12
13SRC_URI = "git://github.com/ospray/rkcommon.git;protocol=https;branch=master \ 11SRC_URI = "git://github.com/ospray/rkcommon.git;protocol=https;branch=master \
12 file://0001-use-fully-qualified-rkcommon-math-rsqrt-to-avoid-ove.patch \
14 " 13 "
15SRCREV = "7ebfa0765ea590767202b328e7da38102c2f5a15" 14SRCREV = "4a00047ae5a3ac705b6b33b4a7574588d91e7953"
16 15
17DEPENDS = "tbb" 16DEPENDS = "tbb"
18 17
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch
new file mode 100644
index 00000000..3545cd5e
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch
@@ -0,0 +1,39 @@
1From 5b8b59a18f4a54ba912faad861f0af3fdcf127c6 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Wed, 10 Sep 2025 21:15:53 +0800
4Subject: [PATCH] CMakeLists: fix build failure by removing -pie from shared
5 library targets
6
7With CMake 4.1.0 the build of libipmctl started failing with:
8
9 error: undefined reference to `main` in *.S
10
11- `-pie` is only valid when linking executables (PIE), not shared
12 libraries.
13- When applied to a shared library, the linker expects a `main`
14 symbol, causing the undefined reference error.
15- Remove `-pie` from shared libraries linker flag
16
17Upstream-Status: Submitted [https://github.com/intel/ipmctl/pull/221]
18
19Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
20---
21 CMakeLists.txt | 2 +-
22 1 file changed, 1 insertion(+), 1 deletion(-)
23
24diff --git a/CMakeLists.txt b/CMakeLists.txt
25index 1c07e682..d7aab78f 100644
26--- a/CMakeLists.txt
27+++ b/CMakeLists.txt
28@@ -156,7 +156,7 @@ endif()
29 if(UNIX)
30 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_MSABI_VA_FUNCS -std=c99 -Wformat -Wformat-security -D_XOPEN_SOURCE=500 -Wall -Wfatal-errors -MMD -fPIC -fno-strict-aliasing")
31 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wformat -Wformat-security -D_XOPEN_SOURCE=500 -Drestrict=__restrict__ -Wall -Wfatal-errors -MMD -fPIC -fno-strict-aliasing")
32- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -z noexecstack -z relro -z now -pie")
33+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -z noexecstack -z relro -z now")
34 elseif(MSVC)
35 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /GS /DynamicBase /sdl")
36 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GS /DynamicBase /sdl")
37--
382.37.3
39
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
index 11305e83..8a734ed2 100644
--- a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
@@ -6,10 +6,10 @@ Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
6 MdePkg/Include/Base.h | 12 ++++++++++++ 6 MdePkg/Include/Base.h | 12 ++++++++++++
7 1 file changed, 12 insertions(+) 7 1 file changed, 12 insertions(+)
8 8
9diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h 9Index: edk2/MdePkg/Include/Base.h
10index d209e6de28..6e61b8f3d3 100644 10===================================================================
11--- a/MdePkg/Include/Base.h 11--- edk2.orig/MdePkg/Include/Base.h
12+++ b/MdePkg/Include/Base.h 12+++ edk2/MdePkg/Include/Base.h
13@@ -316,8 +316,12 @@ struct _LIST_ENTRY { 13@@ -316,8 +316,12 @@ struct _LIST_ENTRY {
14 #define NULL __null 14 #define NULL __null
15 #endif 15 #endif
@@ -20,40 +20,43 @@ index d209e6de28..6e61b8f3d3 100644
20 #endif 20 #endif
21+#endif 21+#endif
22+#endif 22+#endif
23 23
24 // 24 //
25 // Null character 25 // Null character
26@@ -779,6 +783,8 @@ typedef UINTN *BASE_LIST; 26@@ -813,6 +817,8 @@ typedef UINTN *BASE_LIST;
27 // Section 2.3.1 of the UEFI 2.3 Specification. 27 // Section 2.3.1 of the UEFI 2.3 Specification.
28 // 28 //
29 29
30+#ifndef OS_BUILD 30+#ifndef OS_BUILD
31+#ifndef UNIT_TEST_UEFI_BUILD 31+#ifndef UNIT_TEST_UEFI_BUILD
32 STATIC_ASSERT (sizeof (BOOLEAN) == 1, "sizeof (BOOLEAN) does not meet UEFI Specification Data Type requirements"); 32 STATIC_ASSERT (sizeof (BOOLEAN) == 1, "sizeof (BOOLEAN) does not meet UEFI Specification Data Type requirements");
33 STATIC_ASSERT (sizeof (INT8) == 1, "sizeof (INT8) does not meet UEFI Specification Data Type requirements"); 33 STATIC_ASSERT (sizeof (INT8) == 1, "sizeof (INT8) does not meet UEFI Specification Data Type requirements");
34 STATIC_ASSERT (sizeof (UINT8) == 1, "sizeof (UINT8) does not meet UEFI Specification Data Type requirements"); 34 STATIC_ASSERT (sizeof (UINT8) == 1, "sizeof (UINT8) does not meet UEFI Specification Data Type requirements");
35@@ -792,6 +798,8 @@ STATIC_ASSERT (sizeof (CHAR8) == 1, "sizeof (CHAR8) does not meet UEFI Specifi 35@@ -841,7 +847,8 @@ STATIC_ASSERT (ALIGNOF (CHAR16) == size
36 STATIC_ASSERT (sizeof (CHAR16) == 2, "sizeof (CHAR16) does not meet UEFI Specification Data Type requirements"); 36 STATIC_ASSERT (ALIGNOF (INTN) == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data Type requirements");
37 STATIC_ASSERT (sizeof (L'A') == 2, "sizeof (L'A') does not meet UEFI Specification Data Type requirements"); 37 STATIC_ASSERT (ALIGNOF (UINTN) == sizeof (UINTN), "Alignment of UINTN does not meet UEFI Specification Data Type requirements");
38 STATIC_ASSERT (sizeof (L"A") == 4, "sizeof (L\"A\") does not meet UEFI Specification Data Type requirements"); 38 STATIC_ASSERT (ALIGNOF (VOID *) == sizeof (VOID *), "Alignment of VOID * does not meet UEFI Specification Data Type requirements");
39-
39+#endif 40+#endif
40+#endif 41+#endif
41
42 // 42 //
43 // The following three enum types are used to verify that the compiler 43 // The following three enum types are used to verify that the compiler
44@@ -812,9 +820,13 @@ typedef enum { 44 // configuration for enum types is compliant with Section 2.3.1 of the
45 __VerifyUint32EnumValue = 0xffffffff 45@@ -861,6 +868,8 @@ typedef enum {
46 } __VERIFY_UINT32_ENUM_SIZE; 46 __VerifyInt32EnumValue = 0x7fffffff
47 47 } __VERIFY_INT32_ENUM_SIZE;
48
48+#ifndef OS_BUILD 49+#ifndef OS_BUILD
49+#ifndef UNIT_TEST_UEFI_BUILD 50+#ifndef UNIT_TEST_UEFI_BUILD
50 STATIC_ASSERT (sizeof (__VERIFY_UINT8_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements"); 51 STATIC_ASSERT (sizeof (__VERIFY_UINT8_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
51 STATIC_ASSERT (sizeof (__VERIFY_UINT16_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements"); 52 STATIC_ASSERT (sizeof (__VERIFY_UINT16_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
52 STATIC_ASSERT (sizeof (__VERIFY_UINT32_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements"); 53 STATIC_ASSERT (sizeof (__VERIFY_INT32_ENUM_SIZE) == 4, "Size of enum does not meet UEFI Specification Data Type requirements");
54@@ -868,6 +877,8 @@ STATIC_ASSERT (sizeof (__VERIFY_INT32_EN
55 STATIC_ASSERT (ALIGNOF (__VERIFY_UINT8_ENUM_SIZE) == sizeof (__VERIFY_UINT8_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
56 STATIC_ASSERT (ALIGNOF (__VERIFY_UINT16_ENUM_SIZE) == sizeof (__VERIFY_UINT16_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
57 STATIC_ASSERT (ALIGNOF (__VERIFY_INT32_ENUM_SIZE) == sizeof (__VERIFY_INT32_ENUM_SIZE), "Alignment of enum does not meet UEFI Specification Data Type requirements");
53+#endif 58+#endif
54+#endif 59+#endif
55 60
56 /** 61 /**
57 Macro that returns a pointer to the data structure that contains a specified field of 62 Macro that returns a pointer to the data structure that contains a specified field of
58--
592.37.3
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0485.bb b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
index c4743d1c..a0877071 100644
--- a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0485.bb
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
@@ -15,24 +15,25 @@ LICENSE = "BSD-3-Clause | BSD-2-Clause"
15LIC_FILES_CHKSUM = "file://LICENSE;md5=72b9da60da6219d612ce30b746a0fe71 \ 15LIC_FILES_CHKSUM = "file://LICENSE;md5=72b9da60da6219d612ce30b746a0fe71 \
16 file://edk2/License.txt;md5=6123e5bf044a66db96c4ce88a36b2d08" 16 file://edk2/License.txt;md5=6123e5bf044a66db96c4ce88a36b2d08"
17 17
18SRC_URI = "git://github.com/intel/ipmctl.git;protocol=https;branch=master;name=ipmctl; \ 18SRC_URI = "git://github.com/intel/ipmctl.git;protocol=https;branch=master_3_0;name=ipmctl; \
19 git://github.com/tianocore/edk2.git;protocol=https;name=edk2;destsuffix=git/edk2;branch=master \ 19 git://github.com/tianocore/edk2.git;protocol=https;name=edk2;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/edk2;branch=master \
20 file://0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch;patchdir=edk2 \ 20 file://0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch;patchdir=edk2 \
21 file://0001-CMakeLists-disable-Werror.patch \ 21 file://0001-CMakeLists-disable-Werror.patch \
22 file://0001-CMakeLists-fix-build-failure-by-removing-pie-from-sh.patch \
22" 23"
23 24
24SRCREV_ipmctl = "c75bd840ea7820c8f93a5488fcff75d08beedd51" 25SRCREV_ipmctl = "a71f2fb1c90dd07f9862b71c789881132193e8f9"
25#tag edk2-stable202302 26#tag edk2-stable202408
26SRCREV_edk2 = "f80f052277c88a67c55e107b550f504eeea947d3" 27SRCREV_edk2 = "b158dad150bf02879668f72ce306445250838201"
27SRCREV_FORMAT = "ipmctl_edk2" 28SRCREV_FORMAT = "ipmctl_edk2"
28 29
29S = "${WORKDIR}/git"
30
31inherit cmake dos2unix 30inherit cmake dos2unix
32 31
33DEPENDS = "ndctl pkgconfig-native" 32DEPENDS = "ndctl pkgconfig-native"
34 33
35EXTRA_OECMAKE = "-DRELEASE=ON" 34EXTRA_OECMAKE = "-DRELEASE=ON \
35 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
36 "
36 37
37do_configure:prepend() { 38do_configure:prepend() {
38 for dir in BaseTools MdeModulePkg MdePkg ShellPkg ; do 39 for dir in BaseTools MdeModulePkg MdePkg ShellPkg ; do
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-CPU-Solving-the-build-failure-caused-by-setting-the-.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-CPU-Solving-the-build-failure-caused-by-setting-the-.patch
deleted file mode 100644
index d1851406..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-CPU-Solving-the-build-failure-caused-by-setting-the-.patch
+++ /dev/null
@@ -1,43 +0,0 @@
1From b8c3bae71e6d3417ade5cb537cb1785fd75a75c8 Mon Sep 17 00:00:00 2001
2From: Razvan Apetroaie <117895604+razvanapetroaie@users.noreply.github.com>
3Date: Tue, 20 Feb 2024 02:28:14 +0200
4Subject: [PATCH] [CPU] Solving the build failure caused by setting the
5 "ENABLE_OV_ONNX_FRONTEND" option to "OFF" (#22934)
6
7### Details:
8See the [ticket
9description](https://jira.devtools.intel.com/browse/CVS-132119). The
10solution was checked only on a local setup on Ubuntu, if there's a way
11to check that using the CI please let me know (or if you could run the
12job and paste the link in the comments I would be grateful).
13
14Disclaimer: I'm not a CPU plugin developer, so I can't tell for sure if
15this is the ideal fix and no side effects are introduced. Please take
16that into account when reviewing/merging.
17
18### Tickets:
19 - [CVS-132119](https://jira.devtools.intel.com/browse/CVS-132119)
20
21Upstream-Status: Backport [https://github.com/openvinotoolkit/openvino/commit/b8c3bae71e6d3417ade5cb537cb1785fd75a75c8]
22
23Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
24---
25 src/plugins/intel_cpu/tests/functional/CMakeLists.txt | 2 +-
26 1 file changed, 1 insertion(+), 1 deletion(-)
27
28diff --git a/src/plugins/intel_cpu/tests/functional/CMakeLists.txt b/src/plugins/intel_cpu/tests/functional/CMakeLists.txt
29index db5ae8d01c..6941cb528d 100644
30--- a/src/plugins/intel_cpu/tests/functional/CMakeLists.txt
31+++ b/src/plugins/intel_cpu/tests/functional/CMakeLists.txt
32@@ -16,7 +16,7 @@ set(LINK_LIBRARIES funcSharedTests cpuSpecificRtInfo openvino::snippets ov_snipp
33 if(ENABLE_OV_ONNX_FRONTEND)
34 list(APPEND DEFINES TEST_MODELS="${TEST_MODEL_ZOO}")
35 else()
36- set(EXCLUDED_SOURCE_PATHS ${CMAKE_CURRENT_SOURCE_DIR}/extension ${CMAKE_CURRENT_SOURCE_DIR}/shared_tests_instances/onnx)
37+ set(EXCLUDED_SOURCE_PATHS ${CMAKE_CURRENT_SOURCE_DIR}/custom/extension ${CMAKE_CURRENT_SOURCE_DIR}/shared_tests_instances/onnx)
38 endif()
39
40 if(NOT (ARM OR AARCH64))
41--
422.34.1
43
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-fix-build-when-using-sysroot.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-fix-build-when-using-sysroot.patch
deleted file mode 100644
index d251f21b..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-fix-build-when-using-sysroot.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From b5dfcf8bc1245e804c847745c237068eb6f19931 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Fri, 15 Mar 2024 16:28:41 +0800
4Subject: [PATCH] cmake: fix build when using sysroot
5
6When cross-compiling against a sysroot, system headers will not be at a place
7that starts with /usr. Update conditional check to exclude directories
8which have "/usr/include" in them to not add <sysroot>/usr/include as well.
9
10Upstream-Status: Submitted [https://github.com/openvinotoolkit/openvino/pull/23486]
11
12Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
13---
14 src/cmake/ov_parallel.cmake | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/src/cmake/ov_parallel.cmake b/src/cmake/ov_parallel.cmake
18index 3793db98e30..819d3410531 100644
19--- a/src/cmake/ov_parallel.cmake
20+++ b/src/cmake/ov_parallel.cmake
21@@ -296,7 +296,7 @@ function(ov_set_threading_interface_for TARGET_NAME)
22 if(include_directories)
23 foreach(include_directory IN LISTS include_directories)
24 # cannot include /usr/include headers as SYSTEM
25- if(NOT "${include_directory}" MATCHES "^/usr.*$")
26+ if(NOT "${include_directory}" MATCHES ".*/usr/include.*$")
27 target_include_directories(${TARGET_NAME} SYSTEM
28 ${LINK_TYPE} $<BUILD_INTERFACE:${include_directory}>)
29 else()
30--
312.34.1
32
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-yocto-specific-tweaks-to-the-build-process.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-yocto-specific-tweaks-to-the-build-process.patch
deleted file mode 100644
index 7ab31309..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0001-cmake-yocto-specific-tweaks-to-the-build-process.patch
+++ /dev/null
@@ -1,90 +0,0 @@
1From bfcf5ae581ca4e7266cf7dc65b1c71754cd78cc0 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 29 Nov 2023 12:42:57 +0530
4Subject: [PATCH 1/4] cmake: yocto specific tweaks to the build process
5
6* Dont try to detect glibc version as that doesn't work when cross compiling.
7* Install sample binaries as well.
8* Dont strip binaries.
9* Dont try to write triggers for CPack. We package ourselves.
10* Fix the installation path for Python modules when baselib = lib64.
11
12Upstream-Status: Inappropriate
13
14Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
15---
16 cmake/developer_package/packaging/rpm/rpm.cmake | 2 +-
17 cmake/developer_package/target_flags.cmake | 2 +-
18 samples/cpp/CMakeLists.txt | 6 +++---
19 src/bindings/python/CMakeLists.txt | 2 +-
20 src/bindings/python/wheel/setup.py | 1 -
21 5 files changed, 6 insertions(+), 7 deletions(-)
22
23diff --git a/cmake/developer_package/packaging/rpm/rpm.cmake b/cmake/developer_package/packaging/rpm/rpm.cmake
24index a7c0ec2cf61..40448e8a962 100644
25--- a/cmake/developer_package/packaging/rpm/rpm.cmake
26+++ b/cmake/developer_package/packaging/rpm/rpm.cmake
27@@ -154,7 +154,7 @@ ov_rpm_specific_settings()
28 # needed to add triggers for packages with libraries
29 set(def_triggers "${OpenVINO_BINARY_DIR}/_CPack_Packages/triggers")
30 set(triggers_content "# /bin/sh -p\n/sbin/ldconfig\n")
31-file(WRITE "${def_triggers}" "${triggers_content}")
32+#file(WRITE "${def_triggers}" "${triggers_content}")
33
34 #
35 # Functions helpful for packaging your modules with RPM cpack
36diff --git a/cmake/developer_package/target_flags.cmake b/cmake/developer_package/target_flags.cmake
37index 29f23e713e1..942dd445b19 100644
38--- a/cmake/developer_package/target_flags.cmake
39+++ b/cmake/developer_package/target_flags.cmake
40@@ -145,4 +145,4 @@ function(ov_glibc_version)
41 endif()
42 endfunction()
43
44-ov_glibc_version()
45+#ov_glibc_version()
46diff --git a/samples/cpp/CMakeLists.txt b/samples/cpp/CMakeLists.txt
47index c814cc37e2c..431e7bd2ed3 100644
48--- a/samples/cpp/CMakeLists.txt
49+++ b/samples/cpp/CMakeLists.txt
50@@ -206,9 +206,9 @@ macro(ov_add_sample)
51 target_link_libraries(${SAMPLE_NAME} PRIVATE ${ov_link_libraries} Threads::Threads ${SAMPLE_DEPENDENCIES})
52
53 install(TARGETS ${SAMPLE_NAME}
54- RUNTIME DESTINATION samples_bin/
55- COMPONENT samples_bin
56- EXCLUDE_FROM_ALL)
57+ DESTINATION ${CMAKE_INSTALL_BINDIR}
58+ COMPONENT samples_bin)
59+
60
61 # create global target with all samples / demo apps
62 if(NOT TARGET ov_samples)
63diff --git a/src/bindings/python/CMakeLists.txt b/src/bindings/python/CMakeLists.txt
64index 58ff9b74302..4763994ba56 100644
65--- a/src/bindings/python/CMakeLists.txt
66+++ b/src/bindings/python/CMakeLists.txt
67@@ -356,7 +356,7 @@ if(ENABLE_PYTHON_PACKAGING)
68 endif()
69
70 set(python_package_prefix "${CMAKE_CURRENT_BINARY_DIR}/install_${pyversion}")
71- set(install_lib "${python_package_prefix}/lib/${python_versioned_folder}/${ov_site_packages}")
72+ set(install_lib "${python_package_prefix}/${CMAKE_INSTALL_LIBDIR}/${python_versioned_folder}/${ov_site_packages}")
73 set(meta_info_subdir "openvino-${OpenVINO_VERSION}-py${python_xy}.egg-info")
74 set(meta_info_file "${install_lib}/${meta_info_subdir}/PKG-INFO")
75
76diff --git a/src/bindings/python/wheel/setup.py b/src/bindings/python/wheel/setup.py
77index 4b056912212..5f05d891310 100644
78--- a/src/bindings/python/wheel/setup.py
79+++ b/src/bindings/python/wheel/setup.py
80@@ -270,7 +270,6 @@ class CustomBuild(build):
81 self.spawn(["cmake", "--install", binary_dir,
82 "--prefix", prefix,
83 "--config", CONFIG,
84- "--strip",
85 "--component", cpack_comp_name])
86
87 def run(self):
88--
892.34.1
90
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-cmake-Fix-overloaded-virtual-error.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-cmake-Fix-overloaded-virtual-error.patch
deleted file mode 100644
index e0967d55..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0003-cmake-Fix-overloaded-virtual-error.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 900eeeb2953095e651270c0f42ccd8b26fd7885c Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 29 Nov 2023 12:49:35 +0530
4Subject: [PATCH 3/4] cmake: Fix overloaded-virtual error
5
6* Remove -Werror for:
7|git/src/plugins/intel_gpu/src/kernel_selector/jitter.h:129:28: error: 'virtual kernel_selector::JitDefinitions kernel_selector::JitConstant::GetDefinitions() const' was hidden [-Werror=overloaded-virtual=]
8| 129 | virtual JitDefinitions GetDefinitions() const = 0;
9| |
10
11Upstream-Status: Pending
12
13Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
14---
15 src/plugins/intel_gpu/CMakeLists.txt | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/src/plugins/intel_gpu/CMakeLists.txt b/src/plugins/intel_gpu/CMakeLists.txt
19index b0c66a435d6..a3037147cc2 100644
20--- a/src/plugins/intel_gpu/CMakeLists.txt
21+++ b/src/plugins/intel_gpu/CMakeLists.txt
22@@ -38,7 +38,7 @@ add_subdirectory(thirdparty)
23 include(thirdparty/cmake/rapidjson.cmake)
24
25 if(CMAKE_COMPILER_IS_GNUCXX)
26- ov_add_compiler_flags(-Werror)
27+ #ov_add_compiler_flags(-Werror)
28 endif()
29
30 add_subdirectory(src/runtime)
31--
322.34.1
33
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-protobuf-allow-target-protoc-to-be-built.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-protobuf-allow-target-protoc-to-be-built.patch
deleted file mode 100644
index 59095133..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/files/0004-protobuf-allow-target-protoc-to-be-built.patch
+++ /dev/null
@@ -1,45 +0,0 @@
1From 3e288ed876c6bcb6aa3174e52446b479255ddf22 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 29 Nov 2023 12:55:19 +0530
4Subject: [PATCH 4/4] protobuf: allow target protoc to be built
5
6We can run target binaries using a qemu wrapper so allow these to be
7built and run.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 cmake/developer_package/frontends/frontends.cmake | 2 +-
14 thirdparty/protobuf/CMakeLists.txt | 2 +-
15 2 files changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/cmake/developer_package/frontends/frontends.cmake b/cmake/developer_package/frontends/frontends.cmake
18index 49c5b881030..2a1ea8562bc 100644
19--- a/cmake/developer_package/frontends/frontends.cmake
20+++ b/cmake/developer_package/frontends/frontends.cmake
21@@ -143,7 +143,7 @@ macro(ov_add_frontend)
22 set(OUTPUT_PB_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${relative_path}/${FILE_WE}.pb.h)
23 add_custom_command(
24 OUTPUT "${OUTPUT_PB_SRC}" "${OUTPUT_PB_HEADER}"
25- COMMAND ${PROTOC_EXECUTABLE} ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} -I ${protofiles_root_dir} ${proto_file}
26+ COMMAND protoc ARGS --cpp_out ${CMAKE_CURRENT_BINARY_DIR} -I ${protofiles_root_dir} ${proto_file}
27 DEPENDS ${PROTOC_DEPENDENCY} ${proto_file}
28 COMMENT "Running C++ protocol buffer compiler (${PROTOC_EXECUTABLE}) on ${proto_file_relative}"
29 VERBATIM
30diff --git a/thirdparty/protobuf/CMakeLists.txt b/thirdparty/protobuf/CMakeLists.txt
31index 4b6d6da87f3..409e492a5b3 100644
32--- a/thirdparty/protobuf/CMakeLists.txt
33+++ b/thirdparty/protobuf/CMakeLists.txt
34@@ -28,7 +28,7 @@ set(ABSL_PROPAGATE_CXX_STD ON CACHE BOOL "Abseil protogate CXX standard to depen
35 if(CMAKE_CROSSCOMPILING OR
36 (APPLE AND (HOST_X86_64 AND AARCH64)) OR
37 (MSVC AND (HOST_X86_64 AND (AARCH64 OR ARM))))
38- set(protobuf_BUILD_PROTOC_BINARIES OFF CACHE BOOL "Build protoc binaries" FORCE)
39+ set(protobuf_BUILD_PROTOC_BINARIES ON CACHE BOOL "Build protoc binaries" FORCE)
40 else()
41 set(protobuf_BUILD_PROTOC_BINARIES ON CACHE BOOL "Build protoc binaries" FORCE)
42 endif()
43--
442.34.1
45
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch
deleted file mode 100644
index 816a98a3..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo/0001-use-oe-gflags.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From 804b08023b3f8e72b8e3eb09e464d6775c11d966 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Fri, 21 Oct 2022 11:38:23 +0800
4Subject: [PATCH] demos: use gflags from meta-oe
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
9Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
10
11---
12 demos/CMakeLists.txt | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/demos/CMakeLists.txt b/demos/CMakeLists.txt
16index 51767051c..fb7e3d22f 100644
17--- a/demos/CMakeLists.txt
18+++ b/demos/CMakeLists.txt
19@@ -141,7 +141,7 @@ endmacro()
20 find_package(OpenCV REQUIRED COMPONENTS core highgui videoio imgproc imgcodecs)
21 find_package(OpenVINO REQUIRED COMPONENTS Runtime)
22
23-add_subdirectory(thirdparty/gflags)
24+#add_subdirectory(thirdparty/gflags)
25 add_subdirectory(common/cpp)
26
27 find_package(OpenCV QUIET COMPONENTS gapi)
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2024.0.0.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2024.0.0.bb
deleted file mode 100644
index 495a4786..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/open-model-zoo_2024.0.0.bb
+++ /dev/null
@@ -1,54 +0,0 @@
1SUMMARY = "OpenVINO(TM) Toolkit - Open Model Zoo repository"
2HOMEPAGE = "https://github.com/opencv/open_model_zoo"
3DESCRIPTION = "This repository includes optimized deep learning \
4models and a set of demos to expedite development of high-performance \
5deep learning inference applications."
6
7SRC_URI = "git://github.com/opencv/open_model_zoo.git;protocol=https;branch=master \
8 file://0001-use-oe-gflags.patch \
9 "
10
11SRCREV = "37f60eb7fe1dcdedc552b2fb184d646723ed5e80"
12
13LICENSE = "Apache-2.0"
14LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
15"
16
17inherit cmake
18
19S = "${WORKDIR}/git"
20OECMAKE_SOURCEPATH = "${S}/demos"
21
22DEPENDS += "openvino-inference-engine opencv gflags"
23
24RDEPENDS:${PN} += " \
25 python3-decorator \
26 python3-defusedxml \
27 python3-networkx \
28 python3-protobuf \
29 python3-requests \
30 python3-pyyaml \
31 python3-numpy \
32 bash \
33"
34
35COMPATIBLE_HOST = '(x86_64).*-linux'
36COMPATIBLE_HOST:libc-musl = "null"
37
38EXTRA_OECMAKE += " \
39 -DENABLE_SAMPLES=ON \
40 "
41
42do_install(){
43 install -d ${D}${libdir}
44 install -d ${D}${bindir}
45 install -d ${D}${datadir}/openvino/open-model-zoo/tools
46 install -d ${D}${datadir}/openvino/open-model-zoo/demos
47 cp -rf ${WORKDIR}/build/intel64/Release/*.a ${D}${libdir}
48 cp -rf ${WORKDIR}/build/intel64/Release/*_demo* ${D}${bindir}
49 cp -rf ${WORKDIR}/git/models ${D}${datadir}/openvino/open-model-zoo
50 cp -rf ${WORKDIR}/git/demos ${D}${datadir}/openvino/open-model-zoo
51 cp -rf ${WORKDIR}/git/tools/model_tools ${D}${datadir}/openvino/open-model-zoo/tools
52}
53
54FILES:${PN} += "${datadir}/openvino"
diff --git a/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2024.0.0.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2024.0.0.bb
deleted file mode 100644
index 94edd1b8..00000000
--- a/dynamic-layers/openembedded-layer/recipes-support/opencv/openvino-inference-engine_2024.0.0.bb
+++ /dev/null
@@ -1,143 +0,0 @@
1SUMMARY = "OpenVINO(TM) Toolkit - Deep Learning Deployment Toolkit"
2HOMEPAGE = "https://github.com/opencv/dldt"
3DESCRIPTION = "This toolkit allows developers to deploy pre-trained \
4deep learning models through a high-level C++ Inference Engine API \
5integrated with application logic."
6
7SRC_URI = "git://github.com/openvinotoolkit/openvino.git;protocol=https;name=openvino;branch=releases/2024/0;lfs=0 \
8 git://github.com/openvinotoolkit/oneDNN.git;protocol=https;destsuffix=git/src/plugins/intel_cpu/thirdparty/onednn;name=mkl;nobranch=1 \
9 git://github.com/oneapi-src/oneDNN.git;protocol=https;destsuffix=git/src/plugins/intel_gpu/thirdparty/onednn_gpu;name=onednn;nobranch=1 \
10 git://github.com/herumi/xbyak.git;protocol=https;destsuffix=git/thirdparty/xbyak;name=xbyak;branch=master \
11 git://github.com/nlohmann/json.git;protocol=https;destsuffix=git/thirdparty/json/nlohmann_json;name=json;branch=develop \
12 git://github.com/opencv/ade.git;protocol=https;destsuffix=git/thirdparty/ade;name=ade;nobranch=1 \
13 git://github.com/protocolbuffers/protobuf.git;protocol=https;destsuffix=git/thirdparty/protobuf/protobuf;name=protobuf;branch=3.20.x \
14 git://github.com/gflags/gflags.git;protocol=https;destsuffix=git/thirdparty/gflags/gflags;name=gflags;nobranch=1 \
15 git://github.com/madler/zlib.git;protocol=https;destsuffix=git/thirdparty/zlib/zlib;name=zlib;nobranch=1 \
16 git://github.com/openvinotoolkit/mlas.git;protocol=https;destsuffix=git/src/plugins/intel_cpu/thirdparty/mlas;name=mlas;nobranch=1 \
17 git://github.com/nodejs/node-api-headers.git;protocol=https;destsuffix=git/node-api-headers-src;name=node-api-headers;nobranch=1 \
18 git://github.com/nodejs/node-addon-api.git;protocol=https;destsuffix=git/node-addon-api-src;name=node-addon-api;nobranch=1 \
19 file://0001-cmake-yocto-specific-tweaks-to-the-build-process.patch \
20 file://0003-cmake-Fix-overloaded-virtual-error.patch \
21 file://0004-protobuf-allow-target-protoc-to-be-built.patch \
22 file://0001-cmake-fix-build-when-using-sysroot.patch \
23 file://0001-CPU-Solving-the-build-failure-caused-by-setting-the-.patch \
24 "
25
26SRCREV_openvino = "34caeefd07800b59065345d651949efbe8ab6649"
27SRCREV_mkl = "f82148befdbdc9576ec721c9d500155ee4de8060"
28SRCREV_onednn = "494af5f9921bdae98f1a0e2955fa7d76ff386c4f"
29SRCREV_xbyak = "740dff2e866f3ae1a70dd42d6e8836847ed95cc2"
30SRCREV_json = "9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03"
31SRCREV_ade = "0e8a2ccdd34f29dba55894f5f3c5179809888b9e"
32SRCREV_protobuf = "fe271ab76f2ad2b2b28c10443865d2af21e27e0e"
33SRCREV_gflags = "e171aa2d15ed9eb17054558e0b3a6a413bb01067"
34SRCREV_zlib = "09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851"
35SRCREV_mlas = "d1bc25ec4660cddd87804fcf03b2411b5dfb2e94"
36SRCREV_node-api-headers = "186e04b5e40e54d7fd1655bc67081cc483f12488"
37SRCREV_node-addon-api = "39a25bf27788ff7a7ea5c64978c4dcd1e7b9d80d"
38SRCREV_FORMAT = "openvino_mkl_onednn_xbyak_json_ade_protobuf_gflags_zlib_node-api-headers_node-addon-api_mlas"
39
40LICENSE = "Apache-2.0 & MIT & BSD-3-Clause & Zlib"
41LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
42 file://thirdparty/xbyak/COPYRIGHT;md5=3c98edfaa50a86eeaef4c6109e803f16 \
43 file://thirdparty/cnpy/LICENSE;md5=689f10b06d1ca2d4b1057e67b16cd580 \
44 file://thirdparty/json/nlohmann_json/LICENSE.MIT;md5=f969127d7b7ed0a8a63c2bbeae002588 \
45 file://thirdparty/ade/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
46 file://thirdparty/gflags/gflags/COPYING.txt;md5=c80d1a3b623f72bb85a4c75b556551df \
47 file://thirdparty/zlib/zlib/LICENSE;md5=b51a40671bc46e961c0498897742c0b8 \
48 file://src/plugins/intel_cpu/thirdparty/mlas/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
49 file://src/plugins/intel_cpu/thirdparty/onednn/LICENSE;md5=3b64000f6e7d52516017622a37a94ce9 \
50 file://src/plugins/intel_gpu/thirdparty/onednn_gpu/LICENSE;md5=3b64000f6e7d52516017622a37a94ce9 \
51 file://node-api-headers-src/LICENSE;md5=6adb2909701d4605b4b2ae1a9b25d8bd \
52 file://node-addon-api-src/LICENSE.md;md5=0492ef29a9d558a3e9660e7accc9ca6a \
53"
54
55inherit cmake python3native pkgconfig qemu
56
57S = "${WORKDIR}/git"
58EXTRA_OECMAKE += " \
59 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
60 -DENABLE_OPENCV=OFF \
61 -DENABLE_INTEL_GNA=OFF \
62 -DENABLE_SYSTEM_TBB=ON \
63 -DPYTHON_EXECUTABLE=${PYTHON} \
64 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
65 -DTHREADING=TBB -DTBB_DIR="${STAGING_LIBDIR}/cmake/TBB" \
66 -DTREAT_WARNING_AS_ERROR=FALSE \
67 -DENABLE_DATA=FALSE \
68 -DENABLE_SYSTEM_PUGIXML=TRUE \
69 -DENABLE_OV_ONNX_FRONTEND=FALSE \
70 -DUSE_BUILD_TYPE_SUBFOLDER=OFF \
71 -DENABLE_FUZZING=OFF \
72 -DENABLE_TBBBIND_2_5=OFF \
73 -DCPACK_GENERATOR=RPM \
74 -DENABLE_SYSTEM_FLATBUFFERS=ON \
75 -DENABLE_SYSTEM_SNAPPY=ON \
76 -DFETCHCONTENT_BASE_DIR="${S}" \
77 "
78
79DEPENDS += "\
80 flatbuffers-native \
81 pugixml \
82 python3-pybind11 \
83 python3-pybind11-native \
84 qemu-native \
85 snappy \
86 tbb \
87 "
88
89COMPATIBLE_HOST = '(x86_64).*-linux'
90COMPATIBLE_HOST:libc-musl = "null"
91
92PACKAGECONFIG ?= "opencl samples"
93PACKAGECONFIG[opencl] = "-DENABLE_INTEL_GPU=TRUE, -DENABLE_INTEL_GPU=FALSE, virtual/opencl-icd opencl-headers opencl-clhpp,"
94PACKAGECONFIG[python3] = "-DENABLE_PYTHON=ON -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIR} -DENABLE_PYTHON_PACKAGING=ON, -DENABLE_PYTHON=OFF, patchelf-native, python3 python3-numpy python3-progress"
95PACKAGECONFIG[samples] = "-DENABLE_SAMPLES=ON -DENABLE_COMPILE_TOOL=ON, -DENABLE_SAMPLES=OFF -DENABLE_COMPILE_TOOL=OFF, opencv"
96PACKAGECONFIG[verbose] = "-DVERBOSE_BUILD=1,-DVERBOSE_BUILD=0"
97
98do_configure:prepend() {
99 # Dont set PROJECT_ROOT_DIR
100 sed -i -e 's:\${OpenVINO_SOURCE_DIR}::;' ${S}/src/CMakeLists.txt
101
102 # qemu wrapper that can be used by cmake to run target binaries.
103 qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
104 cat > ${WORKDIR}/qemuwrapper << EOF
105#!/bin/sh
106$qemu_binary "\$@"
107EOF
108 chmod +x ${WORKDIR}/qemuwrapper
109}
110
111do_install:append() {
112 rm -rf ${D}${prefix}/install_dependencies
113 rm -rf ${D}${prefix}/setupvars.sh
114
115 find ${B}/src/plugins/intel_cpu/cross-compiled/ -type f -name *_disp.cpp -exec sed -i -e 's%'"${S}"'%'"${TARGET_DBGSRC_DIR}"'%g' {} +
116}
117
118# Otherwise e.g. ros-openvino-toolkit-dynamic-vino-sample when using dldt-inference-engine uses dldt-inference-engine WORKDIR
119# instead of RSS
120SSTATE_SCAN_FILES:append = " *.cmake"
121
122FILES:${PN} += "\
123 ${libdir}/openvino-${PV}/lib*${SOLIBSDEV} \
124 ${libdir}/openvino-${PV}/plugins.xml \
125 ${libdir}/openvino-${PV}/cache.json \
126 "
127
128# Move inference engine samples into a separate package
129PACKAGES =+ "${PN}-samples"
130
131FILES:${PN}-samples = "${datadir}/openvino \
132 ${bindir} \
133 ${libdir}/libformat_reader.a \
134 ${libdir}/libopencv_c_wrapper.a \
135 "
136RDEPENDS:${PN}-samples += "python3-core"
137
138# Package for inference engine python API
139PACKAGES =+ "${PN}-python3"
140
141FILES:${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}"
142
143UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+\.\d+\.\d+))$"
diff --git a/lib/oeqa/runtime/cases/dldt_inference_engine.py b/lib/oeqa/runtime/cases/dldt_inference_engine.py
deleted file mode 100644
index fb35d52f..00000000
--- a/lib/oeqa/runtime/cases/dldt_inference_engine.py
+++ /dev/null
@@ -1,109 +0,0 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.core.decorator.depends import OETestDepends
4from oeqa.runtime.miutils.targets.oeqatarget import OEQATarget
5from oeqa.runtime.miutils.tests.squeezenet_model_download_test import SqueezenetModelDownloadTest
6from oeqa.runtime.miutils.tests.dldt_model_optimizer_test import DldtModelOptimizerTest
7from oeqa.runtime.miutils.tests.dldt_inference_engine_test import DldtInferenceEngineTest
8from oeqa.runtime.miutils.dldtutils import get_testdata_config
9
10class DldtInferenceEngine(OERuntimeTestCase):
11
12 @classmethod
13 def setUpClass(cls):
14 cls.sqn_download = SqueezenetModelDownloadTest(OEQATarget(cls.tc.target), '/tmp/ie/md')
15 cls.sqn_download.setup()
16 cls.dldt_mo = DldtModelOptimizerTest(OEQATarget(cls.tc.target), '/tmp/ie/ir')
17 cls.dldt_mo.setup()
18 cls.dldt_ie = DldtInferenceEngineTest(OEQATarget(cls.tc.target), '/tmp/ie/inputs')
19 cls.dldt_ie.setup()
20 cls.ir_files_dir = cls.dldt_mo.work_dir
21
22 @classmethod
23 def tearDownClass(cls):
24 cls.dldt_ie.tear_down()
25 cls.dldt_mo.tear_down()
26 cls.sqn_download.tear_down()
27
28 @OEHasPackage(['dldt-model-optimizer'])
29 @OEHasPackage(['wget'])
30 def test_dldt_ie_can_create_ir_and_download_input(self):
31 proxy_port = get_testdata_config(self.tc.td, 'DLDT_PIP_PROXY')
32 if not proxy_port:
33 self.skipTest('Need to configure bitbake configuration (DLDT_PIP_PROXY="proxy.server:port").')
34 (status, output) = self.sqn_download.test_can_download_squeezenet_model(proxy_port)
35 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
36 (status, output) = self.sqn_download.test_can_download_squeezenet_prototxt(proxy_port)
37 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
38
39 mo_exe_dir = get_testdata_config(self.tc.td, 'DLDT_MO_EXE_DIR')
40 if not mo_exe_dir:
41 self.skipTest('Need to configure bitbake configuration (DLDT_MO_EXE_DIR="directory_to_mo.py").')
42 mo_files_dir = self.sqn_download.work_dir
43 (status, output) = self.dldt_mo.test_dldt_mo_can_create_ir(mo_exe_dir, mo_files_dir)
44 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
45
46 (status, output) = self.dldt_ie.test_can_download_input_file(proxy_port)
47 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
48
49 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
50 @OEHasPackage(['dldt-inference-engine'])
51 @OEHasPackage(['dldt-inference-engine-samples'])
52 def test_dldt_ie_classification_with_cpu(self):
53 (status, output) = self.dldt_ie.test_dldt_ie_classification_with_device('CPU', self.ir_files_dir)
54 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
55
56 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
57 @OEHasPackage(['dldt-inference-engine'])
58 @OEHasPackage(['dldt-inference-engine-samples'])
59 @OEHasPackage(['intel-compute-runtime'])
60 @OEHasPackage(['ocl-icd'])
61 def test_dldt_ie_classification_with_gpu(self):
62 (status, output) = self.dldt_ie.test_dldt_ie_classification_with_device('GPU', self.ir_files_dir)
63 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
64
65 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
66 @OEHasPackage(['dldt-inference-engine'])
67 @OEHasPackage(['dldt-inference-engine-samples'])
68 @OEHasPackage(['dldt-inference-engine-vpu-firmware'])
69 def test_dldt_ie_classification_with_myriad(self):
70 device = 'MYRIAD'
71 (status, output) = self.dldt_ie.test_check_if_openvino_device_available(device)
72 if not status:
73 self.skipTest('OpenVINO %s device not available on target machine(availalbe devices: %s)' % (device, output))
74 (status, output) = self.dldt_ie.test_dldt_ie_classification_with_device(device, self.ir_files_dir)
75 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
76
77 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
78 @OEHasPackage(['dldt-inference-engine'])
79 @OEHasPackage(['dldt-inference-engine-python3'])
80 @OEHasPackage(['python3-opencv'])
81 @OEHasPackage(['python3-numpy'])
82 def test_dldt_ie_classification_python_api_with_cpu(self):
83 (status, output) = self.dldt_ie.test_dldt_ie_classification_python_api_with_device('CPU', self.ir_files_dir)
84 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
85
86 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
87 @OEHasPackage(['dldt-inference-engine'])
88 @OEHasPackage(['dldt-inference-engine-python3'])
89 @OEHasPackage(['intel-compute-runtime'])
90 @OEHasPackage(['ocl-icd'])
91 @OEHasPackage(['python3-opencv'])
92 @OEHasPackage(['python3-numpy'])
93 def test_dldt_ie_classification_python_api_with_gpu(self):
94 (status, output) = self.dldt_ie.test_dldt_ie_classification_python_api_with_device('GPU', self.ir_files_dir)
95 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
96
97 @OETestDepends(['dldt_inference_engine.DldtInferenceEngine.test_dldt_ie_can_create_ir_and_download_input'])
98 @OEHasPackage(['dldt-inference-engine'])
99 @OEHasPackage(['dldt-inference-engine-python3'])
100 @OEHasPackage(['dldt-inference-engine-vpu-firmware'])
101 @OEHasPackage(['python3-opencv'])
102 @OEHasPackage(['python3-numpy'])
103 def test_dldt_ie_classification_python_api_with_myriad(self):
104 device = 'MYRIAD'
105 (status, output) = self.dldt_ie.test_check_if_openvino_device_available(device)
106 if not status:
107 self.skipTest('OpenVINO %s device not available on target machine(availalbe devices: %s)' % (device, output))
108 (status, output) = self.dldt_ie.test_dldt_ie_classification_python_api_with_device(device, self.ir_files_dir)
109 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/cases/dldt_model_optimizer.py b/lib/oeqa/runtime/cases/dldt_model_optimizer.py
deleted file mode 100644
index 736ea661..00000000
--- a/lib/oeqa/runtime/cases/dldt_model_optimizer.py
+++ /dev/null
@@ -1,38 +0,0 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.runtime.miutils.targets.oeqatarget import OEQATarget
4from oeqa.runtime.miutils.tests.squeezenet_model_download_test import SqueezenetModelDownloadTest
5from oeqa.runtime.miutils.tests.dldt_model_optimizer_test import DldtModelOptimizerTest
6from oeqa.runtime.miutils.dldtutils import get_testdata_config
7
8class DldtModelOptimizer(OERuntimeTestCase):
9
10 @classmethod
11 def setUpClass(cls):
12 cls.sqn_download = SqueezenetModelDownloadTest(OEQATarget(cls.tc.target), '/tmp/mo/md')
13 cls.sqn_download.setup()
14 cls.dldt_mo = DldtModelOptimizerTest(OEQATarget(cls.tc.target), '/tmp/mo/ir')
15 cls.dldt_mo.setup()
16
17 @classmethod
18 def tearDownClass(cls):
19 cls.dldt_mo.tear_down()
20 cls.sqn_download.tear_down()
21
22 @OEHasPackage(['dldt-model-optimizer'])
23 @OEHasPackage(['wget'])
24 def test_dldt_mo_can_create_ir(self):
25 proxy_port = get_testdata_config(self.tc.td, 'DLDT_PIP_PROXY')
26 if not proxy_port:
27 self.skipTest('Need to configure bitbake configuration (DLDT_PIP_PROXY="proxy.server:port").')
28 (status, output) = self.sqn_download.test_can_download_squeezenet_model(proxy_port)
29 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
30 (status, output) = self.sqn_download.test_can_download_squeezenet_prototxt(proxy_port)
31 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
32
33 mo_exe_dir = get_testdata_config(self.tc.td, 'DLDT_MO_EXE_DIR')
34 if not mo_exe_dir:
35 self.skipTest('Need to configure bitbake configuration (DLDT_MO_EXE_DIR="directory_to_mo.py").')
36 mo_files_dir = self.sqn_download.work_dir
37 (status, output) = self.dldt_mo.test_dldt_mo_can_create_ir(mo_exe_dir, mo_files_dir)
38 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/files/dldt-inference-engine/classification_sample.py b/lib/oeqa/runtime/files/dldt-inference-engine/classification_sample.py
deleted file mode 100644
index 1906e9fe..00000000
--- a/lib/oeqa/runtime/files/dldt-inference-engine/classification_sample.py
+++ /dev/null
@@ -1,135 +0,0 @@
1#!/usr/bin/env python3
2"""
3 Copyright (C) 2018-2019 Intel Corporation
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16"""
17from __future__ import print_function
18import sys
19import os
20from argparse import ArgumentParser, SUPPRESS
21import cv2
22import numpy as np
23import logging as log
24from time import time
25from openvino.inference_engine import IENetwork, IECore
26
27
28def build_argparser():
29 parser = ArgumentParser(add_help=False)
30 args = parser.add_argument_group('Options')
31 args.add_argument('-h', '--help', action='help', default=SUPPRESS, help='Show this help message and exit.')
32 args.add_argument("-m", "--model", help="Required. Path to an .xml file with a trained model.", required=True,
33 type=str)
34 args.add_argument("-i", "--input", help="Required. Path to a folder with images or path to an image files",
35 required=True,
36 type=str, nargs="+")
37 args.add_argument("-l", "--cpu_extension",
38 help="Optional. Required for CPU custom layers. "
39 "MKLDNN (CPU)-targeted custom layers. Absolute path to a shared library with the"
40 " kernels implementations.", type=str, default=None)
41 args.add_argument("-d", "--device",
42 help="Optional. Specify the target device to infer on; CPU, GPU, FPGA, HDDL, MYRIAD or HETERO: is "
43 "acceptable. The sample will look for a suitable plugin for device specified. Default "
44 "value is CPU",
45 default="CPU", type=str)
46 args.add_argument("--labels", help="Optional. Path to a labels mapping file", default=None, type=str)
47 args.add_argument("-nt", "--number_top", help="Optional. Number of top results", default=10, type=int)
48
49 return parser
50
51
52def main():
53 log.basicConfig(format="[ %(levelname)s ] %(message)s", level=log.INFO, stream=sys.stdout)
54 args = build_argparser().parse_args()
55 model_xml = args.model
56 model_bin = os.path.splitext(model_xml)[0] + ".bin"
57
58 # Plugin initialization for specified device and load extensions library if specified
59 log.info("Creating Inference Engine")
60 ie = IECore()
61 if args.cpu_extension and 'CPU' in args.device:
62 ie.add_extension(args.cpu_extension, "CPU")
63 # Read IR
64 log.info("Loading network files:\n\t{}\n\t{}".format(model_xml, model_bin))
65 net = IENetwork(model=model_xml, weights=model_bin)
66
67 if "CPU" in args.device:
68 supported_layers = ie.query_network(net, "CPU")
69 not_supported_layers = [l for l in net.layers.keys() if l not in supported_layers]
70 if len(not_supported_layers) != 0:
71 log.error("Following layers are not supported by the plugin for specified device {}:\n {}".
72 format(args.device, ', '.join(not_supported_layers)))
73 log.error("Please try to specify cpu extensions library path in sample's command line parameters using -l "
74 "or --cpu_extension command line argument")
75 sys.exit(1)
76
77 assert len(net.inputs.keys()) == 1, "Sample supports only single input topologies"
78 assert len(net.outputs) == 1, "Sample supports only single output topologies"
79
80 log.info("Preparing input blobs")
81 input_blob = next(iter(net.inputs))
82 out_blob = next(iter(net.outputs))
83 net.batch_size = len(args.input)
84
85 # Read and pre-process input images
86 n, c, h, w = net.inputs[input_blob].shape
87 images = np.ndarray(shape=(n, c, h, w))
88 for i in range(n):
89 image = cv2.imread(args.input[i])
90 if image.shape[:-1] != (h, w):
91 log.warning("Image {} is resized from {} to {}".format(args.input[i], image.shape[:-1], (h, w)))
92 image = cv2.resize(image, (w, h))
93 image = image.transpose((2, 0, 1)) # Change data layout from HWC to CHW
94 images[i] = image
95 log.info("Batch size is {}".format(n))
96
97 # Loading model to the plugin
98 log.info("Loading model to the plugin")
99 exec_net = ie.load_network(network=net, device_name=args.device)
100
101 # Start sync inference
102 log.info("Starting inference in synchronous mode")
103 res = exec_net.infer(inputs={input_blob: images})
104
105 # Processing output blob
106 log.info("Processing output blob")
107 res = res[out_blob]
108 log.info("Top {} results: ".format(args.number_top))
109 if args.labels:
110 with open(args.labels, 'r') as f:
111 labels_map = [x.split(sep=' ', maxsplit=1)[-1].strip() for x in f]
112 else:
113 labels_map = None
114 classid_str = "classid"
115 probability_str = "probability"
116 for i, probs in enumerate(res):
117 probs = np.squeeze(probs)
118 top_ind = np.argsort(probs)[-args.number_top:][::-1]
119 print("Image {}\n".format(args.input[i]))
120 print(classid_str, probability_str)
121 print("{} {}".format('-' * len(classid_str), '-' * len(probability_str)))
122 for id in top_ind:
123 det_label = labels_map[id] if labels_map else "{}".format(id)
124 label_length = len(det_label)
125 space_num_before = (len(classid_str) - label_length) // 2
126 space_num_after = len(classid_str) - (space_num_before + label_length) + 2
127 space_num_before_prob = (len(probability_str) - len(str(probs[id]))) // 2
128 print("{}{}{}{}{:.7f}".format(' ' * space_num_before, det_label,
129 ' ' * space_num_after, ' ' * space_num_before_prob,
130 probs[id]))
131 print("\n")
132 log.info("This sample is an API example, for any performance measurements please use the dedicated benchmark_app tool\n")
133
134if __name__ == '__main__':
135 sys.exit(main() or 0)
diff --git a/lib/oeqa/runtime/miutils/dldtutils.py b/lib/oeqa/runtime/miutils/dldtutils.py
deleted file mode 100644
index 45bf2e12..00000000
--- a/lib/oeqa/runtime/miutils/dldtutils.py
+++ /dev/null
@@ -1,3 +0,0 @@
1
2def get_testdata_config(testdata, config):
3 return testdata.get(config)
diff --git a/lib/oeqa/runtime/miutils/tests/dldt_inference_engine_test.py b/lib/oeqa/runtime/miutils/tests/dldt_inference_engine_test.py
deleted file mode 100644
index 31bfb539..00000000
--- a/lib/oeqa/runtime/miutils/tests/dldt_inference_engine_test.py
+++ /dev/null
@@ -1,56 +0,0 @@
1import os
2script_path = os.path.dirname(os.path.realpath(__file__))
3files_path = os.path.join(script_path, '../../files/')
4
5class DldtInferenceEngineTest(object):
6 ie_input_files = {'ie_python_sample': 'classification_sample.py',
7 'input': 'chicky_512.png',
8 'input_download': 'https://raw.githubusercontent.com/opencv/opencv/master/samples/data/chicky_512.png',
9 'model': 'squeezenet_v1.1.xml'}
10
11 def __init__(self, target, work_dir):
12 self.target = target
13 self.work_dir = work_dir
14
15 def setup(self):
16 self.target.run('mkdir -p %s' % self.work_dir)
17 self.target.copy_to(os.path.join(files_path, 'dldt-inference-engine', self.ie_input_files['ie_python_sample']),
18 self.work_dir)
19 python_cmd = 'from openvino.inference_engine import IENetwork, IECore; ie = IECore(); print(ie.available_devices)'
20 __, output = self.target.run('python3 -c "%s"' % python_cmd)
21 self.available_devices = output
22
23 def tear_down(self):
24 self.target.run('rm -rf %s' % self.work_dir)
25
26 def test_check_if_openvino_device_available(self, device):
27 if device not in self.available_devices:
28 return False, self.available_devices
29 return True, self.available_devices
30
31 def test_can_download_input_file(self, proxy_port):
32 return self.target.run('cd %s; wget %s -e https_proxy=%s' %
33 (self.work_dir,
34 self.ie_input_files['input_download'],
35 proxy_port))
36
37 def test_dldt_ie_classification_with_device(self, device, ir_files_dir):
38 return self.target.run('classification_sample_async -d %s -i %s -m %s' %
39 (device,
40 os.path.join(self.work_dir, self.ie_input_files['input']),
41 os.path.join(ir_files_dir, self.ie_input_files['model'])))
42
43 def test_dldt_ie_classification_python_api_with_device(self, device, ir_files_dir, extension=''):
44 if extension:
45 return self.target.run('python3 %s -d %s -i %s -m %s -l %s' %
46 (os.path.join(self.work_dir, self.ie_input_files['ie_python_sample']),
47 device,
48 os.path.join(self.work_dir, self.ie_input_files['input']),
49 os.path.join(ir_files_dir, self.ie_input_files['model']),
50 extension))
51 else:
52 return self.target.run('python3 %s -d %s -i %s -m %s' %
53 (os.path.join(self.work_dir, self.ie_input_files['ie_python_sample']),
54 device,
55 os.path.join(self.work_dir, self.ie_input_files['input']),
56 os.path.join(ir_files_dir, self.ie_input_files['model'])))
diff --git a/lib/oeqa/runtime/miutils/tests/dldt_model_optimizer_test.py b/lib/oeqa/runtime/miutils/tests/dldt_model_optimizer_test.py
deleted file mode 100644
index 7d3db15b..00000000
--- a/lib/oeqa/runtime/miutils/tests/dldt_model_optimizer_test.py
+++ /dev/null
@@ -1,23 +0,0 @@
1import os
2
3class DldtModelOptimizerTest(object):
4 mo_input_files = {'model': 'squeezenet_v1.1.caffemodel',
5 'prototxt': 'deploy.prototxt'}
6 mo_exe = 'mo.py'
7
8 def __init__(self, target, work_dir):
9 self.target = target
10 self.work_dir = work_dir
11
12 def setup(self):
13 self.target.run('mkdir -p %s' % self.work_dir)
14
15 def tear_down(self):
16 self.target.run('rm -rf %s' % self.work_dir)
17
18 def test_dldt_mo_can_create_ir(self, mo_exe_dir, mo_files_dir):
19 return self.target.run('python3 %s --input_model %s --input_proto %s --output_dir %s --data_type FP16' %
20 (os.path.join(mo_exe_dir, self.mo_exe),
21 os.path.join(mo_files_dir, self.mo_input_files['model']),
22 os.path.join(mo_files_dir, self.mo_input_files['prototxt']),
23 self.work_dir))
diff --git a/lib/oeqa/runtime/miutils/tests/squeezenet_model_download_test.py b/lib/oeqa/runtime/miutils/tests/squeezenet_model_download_test.py
deleted file mode 100644
index a3e46a0a..00000000
--- a/lib/oeqa/runtime/miutils/tests/squeezenet_model_download_test.py
+++ /dev/null
@@ -1,25 +0,0 @@
1class SqueezenetModelDownloadTest(object):
2 download_files = {'squeezenet1.1.prototxt': 'https://raw.githubusercontent.com/DeepScale/SqueezeNet/a47b6f13d30985279789d08053d37013d67d131b/SqueezeNet_v1.1/deploy.prototxt',
3 'squeezenet1.1.caffemodel': 'https://github.com/DeepScale/SqueezeNet/raw/a47b6f13d30985279789d08053d37013d67d131b/SqueezeNet_v1.1/squeezenet_v1.1.caffemodel'}
4
5 def __init__(self, target, work_dir):
6 self.target = target
7 self.work_dir = work_dir
8
9 def setup(self):
10 self.target.run('mkdir -p %s' % self.work_dir)
11
12 def tear_down(self):
13 self.target.run('rm -rf %s' % self.work_dir)
14
15 def test_can_download_squeezenet_model(self, proxy_port):
16 return self.target.run('cd %s; wget %s -e https_proxy=%s' %
17 (self.work_dir,
18 self.download_files['squeezenet1.1.caffemodel'],
19 proxy_port))
20
21 def test_can_download_squeezenet_prototxt(self, proxy_port):
22 return self.target.run('cd %s; wget %s -e https_proxy=%s' %
23 (self.work_dir,
24 self.download_files['squeezenet1.1.prototxt'],
25 proxy_port))
diff --git a/lib/oeqa/selftest/cases/secureboot.py b/lib/oeqa/selftest/cases/secureboot.py
deleted file mode 100644
index 4c059e25..00000000
--- a/lib/oeqa/selftest/cases/secureboot.py
+++ /dev/null
@@ -1,176 +0,0 @@
1#!/usr/bin/env python
2# ex:ts=4:sw=4:sts=4:et
3# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
4#
5# Copyright (c) 2017, Intel Corporation.
6# All rights reserved.
7#
8# This program is free software; you can redistribute it and/or modify
9# it under the terms of the GNU General Public License version 2 as
10# published by the Free Software Foundation.
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License along
18# with this program; if not, write to the Free Software Foundation, Inc.,
19# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20#
21# AUTHORS
22# Mikko Ylinen <mikko.ylinen@linux.intel.com>
23#
24# Based on meta/lib/oeqa/selftest/* and meta-refkit/lib/oeqa/selftest/*
25
26"""Test cases for secure boot with QEMU running OVMF."""
27
28import os
29import unittest
30import re
31import glob
32from shutil import rmtree, copy
33
34from oeqa.core.decorator.depends import OETestDepends
35from oeqa.selftest.case import OESelftestTestCase
36from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu
37
38class SecureBootTests(OESelftestTestCase):
39 """Secure Boot test class."""
40
41 ovmf_keys_enrolled = False
42 ovmf_qemuparams = ''
43 ovmf_dir = ''
44 test_image_unsigned = 'secureboot-selftest-image-unsigned'
45 test_image_signed = 'secureboot-selftest-image-signed'
46 correct_key = 'refkit-db'
47 incorrect_key = 'incorrect'
48
49 @classmethod
50 def setUpLocal(self):
51
52 if not SecureBootTests.ovmf_keys_enrolled:
53 bitbake('ovmf ovmf-shell-image-enrollkeys', output_log=self.logger)
54
55 bb_vars = get_bb_vars(['TMPDIR', 'DEPLOY_DIR_IMAGE'])
56
57 SecureBootTests.ovmf_dir = os.path.join(bb_vars['TMPDIR'], 'oeselftest', 'secureboot', 'ovmf')
58 bb.utils.mkdirhier(SecureBootTests.ovmf_dir)
59
60 # Copy (all) OVMF in a temporary location
61 for src in glob.glob('%s/ovmf.*' % bb_vars['DEPLOY_DIR_IMAGE']):
62 copy(src, SecureBootTests.ovmf_dir)
63
64 SecureBootTests.ovmf_qemuparams = '-drive if=pflash,format=qcow2,file=%s/ovmf.secboot.qcow2' % SecureBootTests.ovmf_dir
65
66 cmd = ("runqemu "
67 "qemuparams='%s' "
68 "ovmf-shell-image-enrollkeys wic intel-corei7-64 "
69 "nographic slirp") % SecureBootTests.ovmf_qemuparams
70 print('Running "%s"' % cmd)
71 status = runCmd(cmd)
72
73 if not re.search('info: success', status.output, re.M):
74 self.fail('Failed to enroll keys. EFI shell log:\n%s' % status.output)
75 else:
76 # keys enrolled in ovmf.secboot.vars
77 SecureBootTests.ovmf_keys_enrolled = True
78
79 @classmethod
80 def tearDownLocal(self):
81 # Seems this is mandatory between the tests (a signed image is booted
82 # when running test_boot_unsigned_image after test_boot_signed_image).
83 # bitbake('-c clean %s' % test_image, output_log=self.logger)
84 #
85 # Whatever the problem was, it no longer seems to be necessary, so
86 # we can skip the time-consuming clean + full rebuild (5:04 min instead
87 # of 6:55min here).
88 pass
89
90 @classmethod
91 def tearDownClass(self):
92 bitbake('ovmf-shell-image-enrollkeys:do_cleanall', output_log=self.logger)
93 rmtree(self.ovmf_dir, ignore_errors=True)
94
95 def secureboot_with_image(self, boot_timeout=300, signing_key=None):
96 """Boot the image with UEFI SecureBoot enabled and see the result. """
97
98 config = ""
99
100 if signing_key:
101 test_image = self.test_image_signed
102 config += 'SECURE_BOOT_SIGNING_KEY = "${THISDIR}/files/%s.key"\n' % signing_key
103 config += 'SECURE_BOOT_SIGNING_CERT = "${THISDIR}/files/%s.crt"\n' % signing_key
104 else:
105 test_image = self.test_image_unsigned
106
107 self.write_config(config)
108 bitbake(test_image, output_log=self.logger)
109 self.remove_config(config)
110
111 # Some of the cases depend on the timeout to expire. Allow overrides
112 # so that we don't have to wait 1000s which is the default.
113 overrides = {
114 'TEST_QEMUBOOT_TIMEOUT': boot_timeout,
115 }
116
117 print('Booting %s' % test_image)
118
119 try:
120 with runqemu(test_image, ssh=False,
121 runqemuparams='nographic slirp',
122 qemuparams=self.ovmf_qemuparams,
123 overrides=overrides,
124 image_fstype='wic') as qemu:
125
126 cmd = 'uname -a'
127
128 status, output = qemu.run_serial(cmd)
129
130 self.assertTrue(status, 'Could not run \'uname -a\' (status=%s):\n%s' % (status, output))
131
132 # if we got this far without a correctly signed image, something went wrong
133 if signing_key != self.correct_key:
134 self.fail('The image not give a Security violation when expected. Boot log:\n%s' % output)
135
136
137 except Exception:
138
139 # Currently runqemu() fails if 'login:' prompt is not seen and it's
140 # not possible to login as 'root'. Those conditions aren't met when
141 # booting to EFI shell (See [YOCTO #11438]). We catch the failure
142 # and parse the boot log to determine the success. Note: the
143 # timeout triggers verbose bb.error() but that's normal with some
144 # of the test cases.
145
146 workdir = get_bb_var('WORKDIR', test_image)
147 bootlog = "%s/testimage/qemu_boot_log" % workdir
148
149 with open(bootlog, "r") as log:
150
151 # This isn't right but all we can do at this point. The right
152 # approach would run commands in the EFI shell to determine
153 # the BIOS rejects unsigned and/or images signed with keys in
154 # dbx key store but that needs changes in oeqa framework.
155
156 output = log.read()
157
158 # PASS if we see a security violation on unsigned or incorrectly signed images, otherwise fail
159 if signing_key == self.correct_key:
160 self.fail('Correctly signed image failed to boot. Boot log:\n%s' % output)
161 elif not re.search('Security Violation', output):
162 self.fail('The image not give a Security violation when expected. Boot log:\n%s' % output)
163
164 def test_boot_unsigned_image(self):
165 """ Boot unsigned image with secureboot enabled in UEFI."""
166 self.secureboot_with_image(boot_timeout=120, signing_key=None)
167
168 @OETestDepends(['secureboot.SecureBootTests.test_boot_unsigned_image'])
169 def test_boot_incorrectly_signed_image(self):
170 """ Boot (correctly) signed image with secureboot enabled in UEFI."""
171 self.secureboot_with_image(boot_timeout=120, signing_key=self.incorrect_key)
172
173 @OETestDepends(['secureboot.SecureBootTests.test_boot_incorrectly_signed_image'])
174 def test_boot_correctly_signed_image(self):
175 """ Boot (correctly) signed image with secureboot enabled in UEFI."""
176 self.secureboot_with_image(boot_timeout=150, signing_key=self.correct_key)
diff --git a/recipes-bsp/intel-cmt-cat/intel-cmt-cat_23.11.1.bb b/recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb
index 60d0dfd2..4f9efc7d 100644
--- a/recipes-bsp/intel-cmt-cat/intel-cmt-cat_23.11.1.bb
+++ b/recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb
@@ -7,9 +7,7 @@ LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=4b63c65942e1c16fd897f8cd20abebf8" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=4b63c65942e1c16fd897f8cd20abebf8"
8 8
9SRC_URI = "git://github.com/intel/intel-cmt-cat;protocol=https;branch=master" 9SRC_URI = "git://github.com/intel/intel-cmt-cat;protocol=https;branch=master"
10SRCREV = "b26b31b0ae6980c5939a421cefe0316cae884626" 10SRCREV = "17629d0b726875836af6c7d9cb38b8ed23f32089"
11
12S = "${WORKDIR}/git"
13 11
14COMPATIBLE_HOST = '(x86_64).*-linux' 12COMPATIBLE_HOST = '(x86_64).*-linux'
15COMPATIBLE_HOST:libc-musl = "null" 13COMPATIBLE_HOST:libc-musl = "null"
diff --git a/recipes-bsp/metee/metee_3.2.4.bb b/recipes-bsp/metee/metee_3.2.4.bb
index da8220b9..7b505453 100644
--- a/recipes-bsp/metee/metee_3.2.4.bb
+++ b/recipes-bsp/metee/metee_3.2.4.bb
@@ -14,5 +14,3 @@ SRC_URI = "git://github.com/intel/metee.git;branch=master;protocol=https \
14" 14"
15SRCREV = "db45e37e146fd9c06907a15ade55eba06ad1f951" 15SRCREV = "db45e37e146fd9c06907a15ade55eba06ad1f951"
16 16
17S = "${WORKDIR}/git"
18
diff --git a/recipes-core/libxcam/libxcam_1.5.0.bb b/recipes-core/libxcam/libxcam_1.5.0.bb
index 31e9344b..7f67b55b 100644
--- a/recipes-core/libxcam/libxcam_1.5.0.bb
+++ b/recipes-core/libxcam/libxcam_1.5.0.bb
@@ -6,7 +6,6 @@ SECTION = "lib"
6 6
7inherit autotools pkgconfig 7inherit autotools pkgconfig
8 8
9S = "${WORKDIR}/git"
10SRCREV = "231a1d5243cd45c7a6b511b667f1ec52178fdda8" 9SRCREV = "231a1d5243cd45c7a6b511b667f1ec52178fdda8"
11SRC_URI = "git://github.com/intel/libxcam.git;branch=1.5.0;protocol=https \ 10SRC_URI = "git://github.com/intel/libxcam.git;branch=1.5.0;protocol=https \
12 file://0001-fake_v4l2_device.h-fix-narrowing-warning.patch \ 11 file://0001-fake_v4l2_device.h-fix-narrowing-warning.patch \
@@ -30,7 +29,7 @@ PACKAGECONFIG[dnn] = "--enable-dnn, --disable-dnn,"
30 29
31do_install:append () { 30do_install:append () {
32 install -d ${D}${bindir}/libxcam 31 install -d ${D}${bindir}/libxcam
33 cp -r ${WORKDIR}/build/tests/.libs/* ${D}${bindir}/libxcam/ 32 cp -r ${B}/tests/.libs/* ${D}${bindir}/libxcam/
34} 33}
35 34
36FILES:${PN} += "${libdir}/gstreamer-*/*.so" 35FILES:${PN} += "${libdir}/gstreamer-*/*.so"
diff --git a/recipes-core/microcode/intel-microcode_20240312.bb b/recipes-core/microcode/intel-microcode_20250812.bb
index 00b18231..a719679f 100644
--- a/recipes-core/microcode/intel-microcode_20240312.bb
+++ b/recipes-core/microcode/intel-microcode_20250812.bb
@@ -16,10 +16,9 @@ LIC_FILES_CHKSUM = "file://license;md5=d8405101ec6e90c1d84b082b0c40c721"
16SRC_URI = "git://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files.git;protocol=https;branch=main \ 16SRC_URI = "git://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files.git;protocol=https;branch=main \
17 " 17 "
18 18
19SRCREV = "41af34500598418150aa298bb04e7edacc547897" 19SRCREV = "4ded52b4b0e1d60e83259cc88d1f5ad22f71a63e"
20 20
21DEPENDS = "iucode-tool-native" 21DEPENDS = "iucode-tool-native"
22S = "${WORKDIR}/git"
23 22
24COMPATIBLE_HOST = "(i.86|x86_64).*-linux" 23COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
25PACKAGE_ARCH = "${MACHINE_ARCH}" 24PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch b/recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch
deleted file mode 100644
index 7eb3bc69..00000000
--- a/recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch
+++ /dev/null
@@ -1,129 +0,0 @@
1From b2099e7184d48a6d05c8713b6fd5dac0e2e70963 Mon Sep 17 00:00:00 2001
2From: Mikko Ylinen <mikko.ylinen@linux.intel.com>
3Date: Wed, 2 Mar 2022 10:55:35 +0800
4Subject: [PATCH] ovmf: RefkitTestCA: TEST UEFI SecureBoot
5
6This patch adds refkit-db.cer (via xxd -i) in OVMF's db
7signature database when used with EnrollDefaultKeys EFI
8application. It's used for testing purposes only.
9
10Images signed with refkit-db keys are allowed to boot.
11
12Upstream-Status: Inappropriate
13
14Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
15Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
16---
17 OvmfPkg/EnrollDefaultKeys/AuthData.c | 69 +++++++++++++++++++
18 OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c | 3 +
19 OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.h | 2 +
20 3 files changed, 74 insertions(+)
21
22diff --git a/OvmfPkg/EnrollDefaultKeys/AuthData.c b/OvmfPkg/EnrollDefaultKeys/AuthData.c
23index 53ee7f7003..127131cd05 100644
24--- a/OvmfPkg/EnrollDefaultKeys/AuthData.c
25+++ b/OvmfPkg/EnrollDefaultKeys/AuthData.c
26@@ -395,6 +395,75 @@ CONST UINT8 mMicrosoftUefiCa[] = {
27
28 CONST UINTN mSizeOfMicrosoftUefiCa = sizeof mMicrosoftUefiCa;
29
30+CONST UINT8 mRefkitTestCA[] = {
31+ 0x30, 0x82, 0x02, 0xfb, 0x30, 0x82, 0x01, 0xe3, 0xa0, 0x03, 0x02, 0x01,
32+ 0x02, 0x02, 0x09, 0x00, 0xd4, 0xf6, 0x48, 0xc2, 0x68, 0x19, 0x91, 0xac,
33+ 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
34+ 0x0b, 0x05, 0x00, 0x30, 0x14, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55,
35+ 0x04, 0x03, 0x0c, 0x09, 0x72, 0x65, 0x66, 0x6b, 0x69, 0x74, 0x2d, 0x64,
36+ 0x62, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x37, 0x30, 0x34, 0x32, 0x30, 0x31,
37+ 0x32, 0x30, 0x36, 0x33, 0x32, 0x5a, 0x17, 0x0d, 0x31, 0x38, 0x30, 0x34,
38+ 0x32, 0x30, 0x31, 0x32, 0x30, 0x36, 0x33, 0x32, 0x5a, 0x30, 0x14, 0x31,
39+ 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x09, 0x72, 0x65,
40+ 0x66, 0x6b, 0x69, 0x74, 0x2d, 0x64, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30,
41+ 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01,
42+ 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02,
43+ 0x82, 0x01, 0x01, 0x00, 0xb4, 0x1c, 0x22, 0xa6, 0x22, 0x01, 0x57, 0xcd,
44+ 0xf1, 0x4f, 0xaf, 0x72, 0xe3, 0xd9, 0x01, 0x80, 0x50, 0x55, 0xef, 0x02,
45+ 0x5e, 0xeb, 0x99, 0x35, 0xcb, 0x7f, 0x2a, 0x79, 0xff, 0xb5, 0x3e, 0xec,
46+ 0x5d, 0x92, 0x06, 0x30, 0x20, 0xe7, 0x95, 0xad, 0xa4, 0x84, 0x2e, 0x3f,
47+ 0xfa, 0xd7, 0x46, 0xdd, 0x49, 0xa8, 0xe8, 0xe3, 0x79, 0x49, 0xf6, 0x8f,
48+ 0x0b, 0x1d, 0xfe, 0x63, 0xa8, 0xd1, 0x63, 0xa3, 0xd6, 0x0d, 0x4e, 0x6c,
49+ 0x66, 0x5c, 0xd6, 0x66, 0x26, 0xd1, 0x26, 0x98, 0xd4, 0x4f, 0x76, 0xc9,
50+ 0x65, 0x48, 0x58, 0x13, 0x08, 0x31, 0xbc, 0xe5, 0x47, 0x25, 0x65, 0x95,
51+ 0x39, 0x89, 0x5f, 0x02, 0xf1, 0xc5, 0x06, 0x17, 0x58, 0xca, 0x09, 0xfd,
52+ 0xf6, 0x1e, 0xc5, 0x97, 0xda, 0xa3, 0x4e, 0x1a, 0x48, 0xbe, 0xcf, 0x96,
53+ 0x27, 0x04, 0x4b, 0xb7, 0x6d, 0x67, 0xb6, 0x50, 0x18, 0x04, 0x73, 0x51,
54+ 0xd2, 0x6a, 0x2d, 0xdf, 0x3b, 0xab, 0xf2, 0x2d, 0x95, 0xd7, 0xa8, 0xb8,
55+ 0xa8, 0x30, 0xa1, 0xab, 0x8b, 0x92, 0x2b, 0x60, 0x3e, 0x3a, 0xe5, 0x86,
56+ 0x40, 0x71, 0xc1, 0x3f, 0x2d, 0x2e, 0x90, 0xe7, 0xd6, 0xec, 0xcc, 0xc2,
57+ 0x0b, 0x79, 0x83, 0x71, 0x6d, 0xf6, 0xa3, 0xa9, 0x4c, 0xcd, 0x46, 0x81,
58+ 0xdc, 0xef, 0xec, 0x51, 0xbe, 0x81, 0x2a, 0xf1, 0x78, 0x73, 0x41, 0xdb,
59+ 0x54, 0xce, 0x7c, 0xce, 0xa2, 0xe3, 0x90, 0x4f, 0x45, 0x1a, 0xf9, 0x3d,
60+ 0x88, 0xfc, 0x0e, 0xed, 0xd3, 0x69, 0x22, 0x4c, 0xfa, 0x0a, 0x69, 0xd1,
61+ 0x48, 0xc0, 0xaa, 0xa9, 0x3a, 0xb3, 0x8f, 0x10, 0x3a, 0x76, 0xa8, 0x0c,
62+ 0x7a, 0x3d, 0xd8, 0x79, 0xce, 0x1c, 0x96, 0x62, 0xf4, 0x06, 0xee, 0x47,
63+ 0xe8, 0xe0, 0x69, 0x91, 0xae, 0xea, 0x34, 0xcf, 0xda, 0xa8, 0xb4, 0x39,
64+ 0x5e, 0xf3, 0x7a, 0xd0, 0x88, 0x48, 0x47, 0x69, 0x02, 0x03, 0x01, 0x00,
65+ 0x01, 0xa3, 0x50, 0x30, 0x4e, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
66+ 0x04, 0x16, 0x04, 0x14, 0x68, 0x60, 0x11, 0x25, 0x85, 0x14, 0x78, 0x1b,
67+ 0x1a, 0x9f, 0x46, 0x12, 0xe6, 0x21, 0xe4, 0xef, 0xfb, 0x3b, 0xaa, 0xdd,
68+ 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80,
69+ 0x14, 0x68, 0x60, 0x11, 0x25, 0x85, 0x14, 0x78, 0x1b, 0x1a, 0x9f, 0x46,
70+ 0x12, 0xe6, 0x21, 0xe4, 0xef, 0xfb, 0x3b, 0xaa, 0xdd, 0x30, 0x0c, 0x06,
71+ 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30,
72+ 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b,
73+ 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x8f, 0xd2, 0x84, 0x7c, 0x43,
74+ 0x47, 0xca, 0x6b, 0xfd, 0x87, 0x83, 0xd0, 0xef, 0x75, 0xd3, 0x20, 0x52,
75+ 0x73, 0x18, 0xaa, 0x32, 0x71, 0xfb, 0xa5, 0xf4, 0xc9, 0x11, 0xa3, 0x68,
76+ 0x4d, 0xb7, 0x9d, 0xe6, 0xd9, 0x46, 0x24, 0xdc, 0xc7, 0xc2, 0x3b, 0xf9,
77+ 0xb0, 0x98, 0xfc, 0xee, 0x34, 0x6e, 0x10, 0x9b, 0x3d, 0x44, 0x6e, 0x33,
78+ 0x09, 0x11, 0xb8, 0x29, 0xd6, 0x2d, 0x06, 0xcf, 0x67, 0x8f, 0x96, 0x85,
79+ 0x9d, 0x63, 0x72, 0xbf, 0x64, 0x5f, 0x0d, 0xe3, 0xc9, 0x63, 0x19, 0x71,
80+ 0xd4, 0x7d, 0x4c, 0x9c, 0x77, 0x46, 0xda, 0x20, 0x97, 0x6d, 0xbc, 0xdd,
81+ 0xc2, 0x1f, 0xf3, 0x40, 0x38, 0x1e, 0xe7, 0xcc, 0x55, 0x05, 0x72, 0xba,
82+ 0x24, 0x4f, 0xb3, 0x8a, 0x93, 0x0c, 0x30, 0x60, 0xda, 0x9f, 0x6f, 0x35,
83+ 0xf6, 0xfb, 0xb0, 0x1f, 0xb3, 0x00, 0xdd, 0xc4, 0xa6, 0xbc, 0xe2, 0x37,
84+ 0xc1, 0xa3, 0xef, 0xd9, 0xa1, 0x86, 0xf9, 0xeb, 0xa4, 0xa5, 0x45, 0x38,
85+ 0xff, 0x4e, 0x87, 0x4a, 0x41, 0xcf, 0x6e, 0x69, 0x7e, 0x97, 0xbe, 0x2d,
86+ 0x22, 0xbc, 0x8d, 0xa0, 0x1a, 0x21, 0x8f, 0x4b, 0x72, 0x90, 0x01, 0x5c,
87+ 0xba, 0xa5, 0x9c, 0x2d, 0xd7, 0x25, 0x24, 0xfc, 0xff, 0x5c, 0x58, 0x14,
88+ 0x46, 0x30, 0x09, 0x7c, 0x55, 0x64, 0x83, 0x0b, 0xb9, 0xdf, 0xcf, 0x25,
89+ 0xee, 0xec, 0xf7, 0xcb, 0xdb, 0xd1, 0x5b, 0x93, 0x93, 0xc8, 0x8a, 0x10,
90+ 0x46, 0xb8, 0xb0, 0x35, 0x1c, 0x6c, 0x0d, 0x8f, 0x03, 0x6a, 0x8f, 0x1b,
91+ 0x36, 0x68, 0xf3, 0x53, 0x89, 0x36, 0x5b, 0x21, 0x80, 0xde, 0xe3, 0x92,
92+ 0x52, 0x94, 0x97, 0x9d, 0x49, 0x89, 0x7d, 0x3e, 0xde, 0x29, 0x51, 0xba,
93+ 0x11, 0xf7, 0xba, 0x01, 0xf7, 0xab, 0xea, 0xc1, 0xa7, 0x2e, 0xa3, 0x4d,
94+ 0x65, 0xfd, 0x40, 0x71, 0xf1, 0xe2, 0x3f, 0x6c, 0x28, 0xcb, 0xd3
95+};
96+
97+CONST UINTN mSizeOfRefkitTestCA = sizeof mRefkitTestCA;
98+
99 //
100 // The Microsoft.UefiSecureBootLogo.Tests.OutOfBoxConfirmDBXisPresent test case
101 // of the Secure Boot Logo Test in the Microsoft Hardware Certification Kit
102diff --git a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
103index 094e4c821b..0a7eef54dc 100644
104--- a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
105+++ b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
106@@ -702,6 +702,9 @@ ShellAppMain (
107 mMicrosoftUefiCa,
108 mSizeOfMicrosoftUefiCa,
109 &gMicrosoftVendorGuid,
110+ mRefkitTestCA,
111+ mSizeOfRefkitTestCA,
112+ &gEfiCallerIdGuid,
113 NULL
114 );
115 }
116diff --git a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.h b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.h
117index 56da9c71d6..8de1dfe4e0 100644
118--- a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.h
119+++ b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.h
120@@ -133,4 +133,6 @@ extern CONST UINTN mSizeOfMicrosoftUefiCa;
121 extern CONST UINT8 mSha256OfDevNull[];
122 extern CONST UINTN mSizeOfSha256OfDevNull;
123
124+extern CONST UINT8 mRefkitTestCA[];
125+extern CONST UINTN mSizeOfRefkitTestCA;
126 #endif /* ENROLL_DEFAULT_KEYS_H_ */
127--
1282.17.1
129
diff --git a/recipes-core/ovmf/ovmf-shell-image-enrollkeys.bb b/recipes-core/ovmf/ovmf-shell-image-enrollkeys.bb
deleted file mode 100644
index ca3cfc15..00000000
--- a/recipes-core/ovmf/ovmf-shell-image-enrollkeys.bb
+++ /dev/null
@@ -1,13 +0,0 @@
1require recipes-core/ovmf/ovmf-shell-image.bb
2
3WKS_SEARCH_PATH:append = ":${COREBASE}/meta/recipes-core/ovmf"
4
5QB_DRIVE_TYPE = "/dev/vd"
6
7do_image:append() {
8 cat > ${IMAGE_ROOTFS}/startup.nsh << EOF
9EnrollDefaultKeys
10reset
11EOF
12
13}
diff --git a/recipes-core/ovmf/ovmf_%.bbappend b/recipes-core/ovmf/ovmf_%.bbappend
deleted file mode 100644
index 34a9dd1b..00000000
--- a/recipes-core/ovmf/ovmf_%.bbappend
+++ /dev/null
@@ -1,6 +0,0 @@
1FILESEXTRAPATHS:prepend:intel-x86-common := "${THISDIR}/files:"
2
3SRC_URI:append:intel-x86-common = " \
4 file://0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch \
5"
6PACKAGECONFIG:append:intel-x86-common = " secureboot"
diff --git a/recipes-devtools/slimboot/slimboot-tools_git.bb b/recipes-devtools/slimboot/slimboot-tools_git.bb
index b65b182d..15b4254f 100644
--- a/recipes-devtools/slimboot/slimboot-tools_git.bb
+++ b/recipes-devtools/slimboot/slimboot-tools_git.bb
@@ -5,11 +5,10 @@ Operating Systems or Hypervisors."
5HOMEPAGE = "https://slimbootloader.github.io/tools/index.html" 5HOMEPAGE = "https://slimbootloader.github.io/tools/index.html"
6 6
7SRC_URI = "git://github.com/slimbootloader/slimbootloader;protocol=https;branch=master" 7SRC_URI = "git://github.com/slimbootloader/slimbootloader;protocol=https;branch=master"
8SRCREV = "df5bd0bc2a522afcb8945a6797592b04838db753" 8SRCREV = "a63818df94d3c9d8c04cdca5869ba7cde9fb5a38"
9PV = "0.0.0+git${SRCPV}" 9PV = "0.0.0+git${SRCPV}"
10LICENSE = "BSD-2-Clause-Patent" 10LICENSE = "BSD-2-Clause-Patent"
11LIC_FILES_CHKSUM = "file://LICENSE;md5=ef7fba7be2819ac13aaf5d0f842ce5d9" 11LIC_FILES_CHKSUM = "file://LICENSE;md5=ef7fba7be2819ac13aaf5d0f842ce5d9"
12S = "${WORKDIR}/git"
13 12
14inherit python3native 13inherit python3native
15BBCLASSEXTEND = "native" 14BBCLASSEXTEND = "native"
diff --git a/recipes-graphics/gmmlib/files/0001-Add-new-DG2-device-IDs-194.patch b/recipes-graphics/gmmlib/files/0001-Add-new-DG2-device-IDs-194.patch
deleted file mode 100644
index 21cffe24..00000000
--- a/recipes-graphics/gmmlib/files/0001-Add-new-DG2-device-IDs-194.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From 8729d66800995a9b7e693bd78249932bd12383e1 Mon Sep 17 00:00:00 2001
2From: John Machado <john.machado@intel.com>
3Date: Mon, 25 Mar 2024 11:13:27 +0530
4Subject: [PATCH] Add new DG2 device IDs (#194)
5
6Upstream-status: Backport
7https://github.com/intel/gmmlib/commit/dcc4b85ea3728c848b62fbb164c00f43b519b6fb
8
9Signed-off-by: Hoe, Sheng Yang <sheng.yang.hoe@intel.com>
10---
11 Source/inc/common/igfxfmid.h | 4 ++++
12 1 file changed, 4 insertions(+)
13
14diff --git a/Source/inc/common/igfxfmid.h b/Source/inc/common/igfxfmid.h
15index 7969779..8e2c955 100644
16--- a/Source/inc/common/igfxfmid.h
17+++ b/Source/inc/common/igfxfmid.h
18@@ -1932,6 +1932,8 @@ typedef enum __NATIVEGTTYPE
19 #define DEV_ID_56BB 0x56BB
20 #define DEV_ID_56BC 0x56BC
21 #define DEV_ID_56BD 0x56BD
22+#define DEV_ID_56BE 0x56BE
23+#define DEV_ID_56BF 0x56BF
24 #define DEV_ID_56C0 0x56C0
25 #define DEV_ID_56C1 0x56C1
26
27@@ -1992,6 +1994,8 @@ typedef enum __NATIVEGTTYPE
28 ( d == DEV_ID_5690 ) || \
29 ( d == DEV_ID_5691 ) || \
30 ( d == DEV_ID_5692 ) || \
31+ ( d == DEV_ID_56BE ) || \
32+ ( d == DEV_ID_56BF ) || \
33 ( d == DEV_ID_56C0 ) || \
34 ( d == DEV_ID_4F80 ) || \
35 ( d == DEV_ID_4F81 ) || \
36--
372.34.1
38
diff --git a/recipes-graphics/gmmlib/files/0001-Introduce-ARL-H-support-172.patch b/recipes-graphics/gmmlib/files/0001-Introduce-ARL-H-support-172.patch
deleted file mode 100644
index ab4cb178..00000000
--- a/recipes-graphics/gmmlib/files/0001-Introduce-ARL-H-support-172.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From 2b267b72d6aaa922861b120da9c1543161797046 Mon Sep 17 00:00:00 2001
2From: John Machado <john.machado@intel.com>
3Date: Fri, 9 Feb 2024 13:10:18 +0530
4Subject: [PATCH] Introduce ARL-H support (#172)
5
6Upstream-Status: Backport [https://github.com/intel/gmmlib/commit/544a8be6f66631e085c86c453aafd78b0e7f5179]
7Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
8---
9 Source/inc/common/igfxfmid.h | 10 ++++++++++
10 1 file changed, 10 insertions(+)
11
12diff --git a/Source/inc/common/igfxfmid.h b/Source/inc/common/igfxfmid.h
13index 99fc624..19aa505 100644
14--- a/Source/inc/common/igfxfmid.h
15+++ b/Source/inc/common/igfxfmid.h
16@@ -1966,6 +1966,11 @@ typedef enum __NATIVEGTTYPE
17 // ARL-S
18 #define DEV_ID_7D67 0x7D67
19
20+// ARL-H
21+#define DEV_ID_7D41 0x7D41
22+#define DEV_ID_7D51 0x7D51
23+#define DEV_ID_7DD1 0x7DD1
24+
25 #define MGM_HAS 0
26
27 //#define SDG_HAS 1 //Reserve place for Springdale-G HAS
28@@ -2012,6 +2017,11 @@ typedef enum __NATIVEGTTYPE
29 // Macro to identify ARL-S Device ID
30 #define GFX_IS_ARL_S(d) ( ( d == DEV_ID_7D67 ) )
31
32+// Macro to identify ARL-H Device ID
33+#define GFX_IS_ARL_H(d) ( ( d == DEV_ID_7D41 ) || \
34+ ( d == DEV_ID_7D51 ) || \
35+ ( d == DEV_ID_7DD1 ))
36+
37 //we define the highest cap and lower cap of stepping IDs
38 #define SI_REV_ID(lo,hi) (lo | hi<<16)
39
40--
412.40.1
42
diff --git a/recipes-graphics/gmmlib/gmmlib_22.3.15.bb b/recipes-graphics/gmmlib/gmmlib_22.7.1.bb
index 875fbaf5..77c5e217 100644
--- a/recipes-graphics/gmmlib/gmmlib_22.3.15.bb
+++ b/recipes-graphics/gmmlib/gmmlib_22.7.1.bb
@@ -8,13 +8,9 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=465fe90caea3edd6a2cecb3f0c28a654"
8 8
9SRC_URI = " \ 9SRC_URI = " \
10 git://github.com/intel/gmmlib.git;protocol=https;branch=master \ 10 git://github.com/intel/gmmlib.git;protocol=https;branch=master \
11 file://0001-Introduce-ARL-H-support-172.patch \
12 file://0001-Add-new-DG2-device-IDs-194.patch \
13 " 11 "
14 12
15SRCREV = "5fb4180e22695ad4e3c155cf680119913c9f44bc" 13SRCREV = "aa4e5d6c8f1d798b78ffd7ea85296fdd3a3946b2"
16
17S = "${WORKDIR}/git"
18 14
19COMPATIBLE_HOST:x86-x32 = "null" 15COMPATIBLE_HOST:x86-x32 = "null"
20 16
@@ -22,6 +18,9 @@ UPSTREAM_CHECK_GITTAGREGEX = "^intel-gmmlib-(?P<pver>(\d+(\.\d+)+))$"
22 18
23inherit pkgconfig cmake 19inherit pkgconfig cmake
24 20
25EXTRA_OECMAKE += "-DRUN_TEST_SUITE=OFF" 21EXTRA_OECMAKE += " \
22 -DRUN_TEST_SUITE=OFF \
23 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
24 "
26 25
27BBCLASSEXTEND = "native nativesdk" 26BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch b/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch
deleted file mode 100644
index 6d32da43..00000000
--- a/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From 5cbcecff0bb7fa1c617d3082e7ad94c22e5f4eb1 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 3 Jul 2019 17:13:15 +0800
4Subject: [PATCH] main: fix hdcpd service failure
5
6Child process not able to finish before parent process
7exits, which causing hdcpd service failure.
8
9Added wait function to block parent process
10until child process exits.
11
12Upstream-Status: Submitted [https://github.com/intel/hdcp/pull/17]
13
14Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
15---
16 daemon/main.cpp | 3 +++
17 1 file changed, 3 insertions(+)
18
19diff --git a/daemon/main.cpp b/daemon/main.cpp
20index 9a028d7..ef1e047 100644
21--- a/daemon/main.cpp
22+++ b/daemon/main.cpp
23@@ -36,6 +36,7 @@
24 #include <sys/ioctl.h>
25 #include <fcntl.h>
26 #include <iostream>
27+#include <sys/wait.h>
28
29 #include "hdcpdef.h"
30 #include "srm.h"
31@@ -93,6 +94,8 @@ int32_t daemon_init(void)
32 }
33 else if (pid != 0)
34 {
35+ int status;
36+ wait(&status);
37 exit(SUCCESS); // parent exit
38 }
39
40--
412.17.1
42
diff --git a/recipes-graphics/hdcp/hdcp_21.2.0.bb b/recipes-graphics/hdcp/hdcp_21.2.0.bb
deleted file mode 100644
index 8529b5ab..00000000
--- a/recipes-graphics/hdcp/hdcp_21.2.0.bb
+++ /dev/null
@@ -1,26 +0,0 @@
1SUMMARY = "Intel(R) unified HDCP SDK"
2DESCRIPTION = "This is a user space implementation to prevent copying of \
3digital audio & video content across digital display interfaces. It provides \
4Linux user space implementation to enable the HDCP1.4 and HDCP2.2 protection \
5for external digital display interface"
6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://LICENSE.md;md5=c50969be4feb8b99c6baa3795ede4dce"
8SECTION = "lib"
9
10inherit pkgconfig cmake useradd systemd features_check
11
12SRC_URI = "git://github.com/intel/hdcp.git;branch=master;protocol=https \
13 file://0001-main-fix-hdcpd-service-failure.patch \
14"
15SRCREV = "cacc352159c5bdaf1c21846cecdd1eb7b031e1d3"
16S = "${WORKDIR}/git"
17
18REQUIRED_DISTRO_FEATURES = "systemd"
19
20DEPENDS = "libdrm virtual/mesa systemd"
21
22USERADD_PACKAGES = "${PN}"
23USERADD_PARAM:${PN} = "--system --no-create-home --shell /bin/false --gid nogroup media"
24
25SYSTEMD_SERVICE:${PN} = "hdcpd.service"
26SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/recipes-graphics/libva/libva-intel-utils_2.20.1.bb b/recipes-graphics/libva/libva-intel-utils_2.22.0.bb
index 9c26f009..041ea1ed 100644
--- a/recipes-graphics/libva/libva-intel-utils_2.20.1.bb
+++ b/recipes-graphics/libva/libva-intel-utils_2.22.0.bb
@@ -14,9 +14,8 @@ SECTION = "x11"
14LICENSE = "MIT" 14LICENSE = "MIT"
15LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" 15LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e"
16 16
17SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.20-branch;protocol=https" 17SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.22-branch;protocol=https"
18SRCREV = "2ad888bb463dc9bfb3deb512ec9faf78f1d3bfa8" 18SRCREV = "1a13ae13382b7b548f3a7e8035e1d7df66662c0a"
19S = "${WORKDIR}/git"
20 19
21UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))" 20UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
22 21
diff --git a/recipes-graphics/libva/libva-intel_2.20.0.bb b/recipes-graphics/libva/libva-intel_2.22.0.bb
index c81ed65c..b6b1f6ed 100644
--- a/recipes-graphics/libva/libva-intel_2.20.0.bb
+++ b/recipes-graphics/libva/libva-intel_2.22.0.bb
@@ -17,11 +17,10 @@ SECTION = "x11"
17LICENSE = "MIT" 17LICENSE = "MIT"
18LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" 18LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f"
19 19
20SRC_URI = "https://github.com/intel/libva/releases/download/${PV}/libva-${PV}.tar.bz2 \ 20SRC_URI = "git://github.com/intel/libva.git;protocol=https;branch=v2.22-branch \
21 " 21 "
22SRC_URI[sha256sum] = "f72bdb4f48dfe71ad01f1cbefe069672a2c949a6abd51cf3c4d4784210badc49"
23 22
24S = "${WORKDIR}/libva-${PV}" 23SRCREV = "217da1c28336d6a7e9c0c4cb8f1c303968a675f1"
25 24
26UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases" 25UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases"
27 26
diff --git a/recipes-graphics/metrics-discovery/metrics-discovery_1.12.170.bb b/recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb
index 3ed1c9bd..decac761 100644
--- a/recipes-graphics/metrics-discovery/metrics-discovery_1.12.170.bb
+++ b/recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb
@@ -2,13 +2,12 @@ SUMMARY = "Intel Metrics Discovery Application Programming Interface"
2DESCRIPTION = "This software is a user mode library that provides access to \ 2DESCRIPTION = "This software is a user mode library that provides access to \
3GPU performance data." 3GPU performance data."
4LICENSE = "MIT" 4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://LICENSE.md;md5=8c5c9ac8ffd04a5614befdf63fba6ba8" 5LIC_FILES_CHKSUM = "file://LICENSE.md;md5=195912d57508b573e068231099eba64c"
6SECTION = "lib" 6SECTION = "lib"
7 7
8inherit pkgconfig cmake 8inherit pkgconfig cmake
9 9
10S = "${WORKDIR}/git" 10SRCREV = "65ffef89cf79d704f618768bcd3d95f4dd6d875b"
11SRCREV = "75b292eb1309e4ea10dce403065ee8ca5bf29ecc"
12SRC_URI = "git://github.com/intel/metrics-discovery.git;branch=master;protocol=https \ 11SRC_URI = "git://github.com/intel/metrics-discovery.git;branch=master;protocol=https \
13 " 12 "
14 13
diff --git a/recipes-kernel/intel-ethernet/ixgbe_5.19.6.bb b/recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb
index 7ef38650..75ebf6f4 100644
--- a/recipes-kernel/intel-ethernet/ixgbe_5.19.6.bb
+++ b/recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb
@@ -1,25 +1,25 @@
1SUMMARY="ixgbe kernel driver for Intel Magnolia Park 10GbE" 1SUMMARY = "ixgbe kernel driver for Intel Magnolia Park 10GbE"
2DESCRIPTION="The ixgbe driver supports 82598- and 82599-based \ 2DESCRIPTION = "The ixgbe driver supports 82598- and 82599-based \
3PCI Express* 10 Gigabit Network Connections." 3PCI Express* 10 Gigabit Network Connections."
4 4
5HOMEPAGE = "https://sourceforge.net/projects/e1000/" 5HOMEPAGE = "https://sourceforge.net/projects/e1000/"
6SECTION = "kernel/network" 6SECTION = "kernel/network"
7LICENSE = "GPL-2.0-only" 7LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417" 8LIC_FILES_CHKSUM = "file://${UNPACKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417"
9 9
10SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/${PV}/${BP}.tar.gz \ 10SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/${PV}/${BP}.tar.gz \
11 " 11 "
12 12
13SRC_URI[sha256sum] = "a844f1fea8064e30b276792455c3b286c1d7af26731e8f865d4a4e9ed1dcf4ab" 13SRC_URI[sha256sum] = "da7e7b62ffb85a820d7541623fbef5c4abef8d1df7ac0af3f1acc3b3d76c9822"
14 14
15UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/" 15UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/"
16UPSTREAM_CHECK_REGEX = "ixgbe%20stable/(?P<pver>\d+(\.\d+)+)/" 16UPSTREAM_CHECK_REGEX = "ixgbe%20stable/(?P<pver>\d+(\.\d+)+)/"
17 17
18CVE_PRODUCT = "linux:linux_kernel_ixgbe" 18CVE_PRODUCT = "linux:linux_kernel_ixgbe"
19 19
20S = "${WORKDIR}/${BP}/src" 20S = "${UNPACKDIR}/${BP}/src"
21 21
22EXTRA_OEMAKE=' KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"' 22EXTRA_OEMAKE = ' KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
23 23
24KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbe" 24KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbe"
25KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbe" 25KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbe"
diff --git a/recipes-kernel/intel-ethernet/ixgbevf_4.18.7.bb b/recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb
index b21796c6..8bb0923c 100644
--- a/recipes-kernel/intel-ethernet/ixgbevf_4.18.7.bb
+++ b/recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb
@@ -1,5 +1,5 @@
1SUMMARY="ixgbevf kernel driver for Intel Magnolia Park 10GbE" 1SUMMARY = "ixgbevf kernel driver for Intel Magnolia Park 10GbE"
2DESCRIPTION="This virtual function driver supports kernel versions 2.6.x and newer \ 2DESCRIPTION = "This virtual function driver supports kernel versions 2.6.x and newer \
3This driver supports 82599, X540, X550, and X552-based virtual function devices \ 3This driver supports 82599, X540, X550, and X552-based virtual function devices \
4that can only be activated on kernels that support SR-IOV. \ 4that can only be activated on kernels that support SR-IOV. \
5SR-IOV requires the correct platform and OS support. \ 5SR-IOV requires the correct platform and OS support. \
@@ -8,21 +8,21 @@ The guest OS loading this driver must support MSI-X interrupts."
8HOMEPAGE = "https://sourceforge.net/projects/e1000/" 8HOMEPAGE = "https://sourceforge.net/projects/e1000/"
9SECTION = "kernel/network" 9SECTION = "kernel/network"
10LICENSE = "GPL-2.0-only" 10LICENSE = "GPL-2.0-only"
11LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417" 11LIC_FILES_CHKSUM = "file://${UNPACKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417"
12 12
13SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/${PV}/${BP}.tar.gz \ 13SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/${PV}/${BP}.tar.gz \
14 " 14 "
15 15
16SRC_URI[sha256sum] = "90f6cd614008839b6fc748ae0f4ad3503435f8b788318d4f40cfc83c7029025e" 16SRC_URI[sha256sum] = "73c6a27be324a48b069dbda0d1d07212a2214c71f54df57bca7177fc92b04881"
17 17
18UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/" 18UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/"
19UPSTREAM_CHECK_REGEX = "ixgbevf%20stable/(?P<pver>\d+(\.\d+)+)/" 19UPSTREAM_CHECK_REGEX = "ixgbevf%20stable/(?P<pver>\d+(\.\d+)+)/"
20 20
21CVE_PRODUCT = "linux:linux_kernel_ixgbe" 21CVE_PRODUCT = "linux:linux_kernel_ixgbe"
22 22
23S = "${WORKDIR}/${BP}/src" 23S = "${UNPACKDIR}/${BP}/src"
24 24
25EXTRA_OEMAKE='KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"' 25EXTRA_OEMAKE = 'KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
26 26
27KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbevf" 27KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbevf"
28KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbevf" 28KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbevf"
diff --git a/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb b/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
index ea36cfc3..07d2b500 100644
--- a/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
+++ b/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
@@ -17,8 +17,8 @@ inherit module features_check
17# When updating this recipe, ensure that the proper firmware is included from 17# When updating this recipe, ensure that the proper firmware is included from
18# either the linux-firmware or iwlwifi-firmware repos. 18# either the linux-firmware or iwlwifi-firmware repos.
19 19
20PV = "79" 20PV = "96"
21SRCREV = "574631d89d736fd2c76b0e2ea489270c50903e52" 21SRCREV = "d16e74cc1c76ffbfc335153daa86660f199a90da"
22 22
23SRC_URI = " \ 23SRC_URI = " \
24 git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/backport-iwlwifi;branch=release/core${PV} \ 24 git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/backport-iwlwifi;branch=release/core${PV} \
@@ -26,7 +26,6 @@ SRC_URI = " \
26 file://iwlwifi.conf \ 26 file://iwlwifi.conf \
27 " 27 "
28 28
29S = "${WORKDIR}/git"
30 29
31EXTRA_OEMAKE = "INSTALL_MOD_PATH=${D} KLIB_BUILD=${KBUILD_OUTPUT}" 30EXTRA_OEMAKE = "INSTALL_MOD_PATH=${D} KLIB_BUILD=${KBUILD_OUTPUT}"
32 31
@@ -34,12 +33,12 @@ do_configure() {
34 CC=gcc CFLAGS= LDFLAGS= make defconfig-iwlwifi-public KLIB_BUILD=${KBUILD_OUTPUT} 33 CC=gcc CFLAGS= LDFLAGS= make defconfig-iwlwifi-public KLIB_BUILD=${KBUILD_OUTPUT}
35} 34}
36 35
37MODULES_INSTALL_TARGET="install" 36MODULES_INSTALL_TARGET = "install"
38 37
39do_install:append() { 38do_install:append() {
40 ## install configs and service scripts 39 ## install configs and service scripts
41 install -d ${D}${sysconfdir}/modprobe.d 40 install -d ${D}${sysconfdir}/modprobe.d
42 install -m 0644 ${WORKDIR}/iwlwifi.conf ${D}${sysconfdir}/modprobe.d 41 install -m 0644 ${UNPACKDIR}/iwlwifi.conf ${D}${sysconfdir}/modprobe.d
43} 42}
44 43
45RDEPENDS:${PN} = "linux-firmware-iwlwifi" 44RDEPENDS:${PN} = "linux-firmware-iwlwifi"
diff --git a/recipes-kernel/linux/linux-intel-rt_6.6.bb b/recipes-kernel/linux/linux-intel-rt_6.12.bb
index 23e79a43..47dc5cbd 100644
--- a/recipes-kernel/linux/linux-intel-rt_6.6.bb
+++ b/recipes-kernel/linux/linux-intel-rt_6.12.bb
@@ -12,8 +12,8 @@ python () {
12 raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-intel-rt to enable it") 12 raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-intel-rt to enable it")
13} 13}
14 14
15KBRANCH = "6.6/preempt-rt" 15KBRANCH = "6.12/linux"
16KMETA_BRANCH = "yocto-6.6" 16KMETA_BRANCH = "yocto-6.12"
17 17
18LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" 18LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
19 19
@@ -21,13 +21,13 @@ DEPENDS += "elfutils-native openssl-native util-linux-native"
21 21
22LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}" 22LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}"
23 23
24LINUX_VERSION ?= "6.6.23" 24LINUX_VERSION ?= "6.12.27"
25SRCREV_machine ?= "73113409624a0a68494db7b1c1d535d1c8b96689" 25SRCREV_machine ?= "9e2f92c31c6353101755c83670232c94e0c07ddc"
26SRCREV_meta ?= "eb283ea577df80542d48f0c498365960b4c4ecd9" 26SRCREV_meta ?= "da71eb19ceab34a7a6ff4284f1580e043c870168"
27 27
28LINUX_KERNEL_TYPE = "preempt-rt" 28LINUX_KERNEL_TYPE = "preempt-rt"
29 29
30# Functionality flags 30# Functionality flags
31KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc" 31KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc"
32 32
33UPSTREAM_CHECK_GITTAGREGEX = "^lts-(?P<pver>v6.6.(\d+)-rt(\d)-preempt-rt-(\d+)T(\d+)Z)$" 33UPSTREAM_CHECK_GITTAGREGEX = "^lts-(?P<pver>v6.12.(\d+)-linux-(\d+)T(\d+)Z)$"
diff --git a/recipes-kernel/linux/linux-intel.inc b/recipes-kernel/linux/linux-intel.inc
index f78f5205..c698ae28 100644
--- a/recipes-kernel/linux/linux-intel.inc
+++ b/recipes-kernel/linux/linux-intel.inc
@@ -3,12 +3,10 @@ require recipes-kernel/linux/meta-intel-compat-kernel.inc
3 3
4FILESEXTRAPATHS:prepend := "${THISDIR}/linux-intel:" 4FILESEXTRAPATHS:prepend := "${THISDIR}/linux-intel:"
5 5
6KERNEL_CONFIG_URI ?= "git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=${KMETA_BRANCH};destsuffix=${KMETA}" 6KERNEL_CONFIG_URI ?= "git://git.yoctoproject.org/yocto-kernel-cache;protocol=https;type=kmeta;name=meta;branch=${KMETA_BRANCH};destsuffix=${KMETA}"
7 7
8SRC_URI = " \ 8SRC_URI = " \
9 ${KERNEL_CONFIG_URI} \ 9 ${KERNEL_CONFIG_URI} \
10 file://0001-vt-conmakehash-improve-reproducibility.patch \
11 file://0001-lib-build_OID_registry-fix-reproducibility-issues.patch \
12 file://fix-perf-reproducibility.patch \ 10 file://fix-perf-reproducibility.patch \
13 file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch \ 11 file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch \
14 file://0002-mconf-fix-output-of-cflags-and-libraries.patch \ 12 file://0002-mconf-fix-output-of-cflags-and-libraries.patch \
diff --git a/recipes-kernel/linux/linux-intel/0001-lib-build_OID_registry-fix-reproducibility-issues.patch b/recipes-kernel/linux/linux-intel/0001-lib-build_OID_registry-fix-reproducibility-issues.patch
deleted file mode 100644
index d41c3f0b..00000000
--- a/recipes-kernel/linux/linux-intel/0001-lib-build_OID_registry-fix-reproducibility-issues.patch
+++ /dev/null
@@ -1,48 +0,0 @@
1From 2fca0fd719812ea2ff67630b01355aa80481623e Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Sun, 10 Jul 2022 22:56:53 -0400
4Subject: [PATCH] lib/build_OID_registry: fix reproducibility issues
5
6The script build_OID_registry captures the full path of itself
7in the generated data. This causes reproduciblity issues as the
8path is captured and packaged.
9
10We use the basename of the script instead, and that allows us
11to be reprodicible, with slightly less information captured in
12the output data (but the generating script can still easily
13be found).
14
15Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
16Upstream-Status: Inappropriate
17
18Taken from linux-yocto, v5.15/standard/base.
19
20Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
21---
22 lib/build_OID_registry | 3 ++-
23 1 file changed, 2 insertions(+), 1 deletion(-)
24
25diff --git a/lib/build_OID_registry b/lib/build_OID_registry
26index d7fc32ea8ac2..f6de0a7f7457 100755
27--- a/lib/build_OID_registry
28+++ b/lib/build_OID_registry
29@@ -8,6 +8,7 @@
30 #
31
32 use strict;
33+use File::Basename;
34
35 my @names = ();
36 my @oids = ();
37@@ -35,7 +36,7 @@ close IN_FILE || die;
38 #
39 open C_FILE, ">$ARGV[1]" or die;
40 print C_FILE "/*\n";
41-print C_FILE " * Automatically generated by ", $0, ". Do not edit\n";
42+print C_FILE " * Automatically generated by ", basename $0, ". Do not edit\n";
43 print C_FILE " */\n";
44
45 #
46--
472.36.1
48
diff --git a/recipes-kernel/linux/linux-intel/0001-vt-conmakehash-improve-reproducibility.patch b/recipes-kernel/linux/linux-intel/0001-vt-conmakehash-improve-reproducibility.patch
deleted file mode 100644
index 33280063..00000000
--- a/recipes-kernel/linux/linux-intel/0001-vt-conmakehash-improve-reproducibility.patch
+++ /dev/null
@@ -1,58 +0,0 @@
1From 0f586f4ee8adacac79b64d1f3d47799a5eb7fbea Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Sun, 10 Jul 2022 21:37:07 -0400
4Subject: [PATCH] vt/conmakehash: improve reproducibility
5
6The file generated by conmakehash capture the application
7path used to generate the file. While that can be informative,
8it varies based on where the kernel was built, as the full
9path is captured.
10
11We tweak the application to use a second input as the "capture
12name", and then modify the Makefile to pass the basename of
13the source, making it reproducible.
14
15This could be improved by using some sort of path mapping,
16or the application manipualing argv[1] itself, but for now
17this solves the reprodicibility issue.
18
19Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
20
21Upstream-Status: Inappropriate
22
23Taken from linux-yocto, v5.15/standard/base
24Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
25---
26 drivers/tty/vt/Makefile | 2 +-
27 drivers/tty/vt/conmakehash.c | 2 +-
28 2 files changed, 2 insertions(+), 2 deletions(-)
29
30diff --git a/drivers/tty/vt/Makefile b/drivers/tty/vt/Makefile
31index fe30ce512819..cb51c21b58f9 100644
32--- a/drivers/tty/vt/Makefile
33+++ b/drivers/tty/vt/Makefile
34@@ -15,7 +15,7 @@ clean-files := consolemap_deftbl.c defkeymap.c
35 hostprogs += conmakehash
36
37 quiet_cmd_conmk = CONMK $@
38- cmd_conmk = $(obj)/conmakehash $< > $@
39+ cmd_conmk = $(obj)/conmakehash $< $(shell basename $<) > $@
40
41 $(obj)/consolemap_deftbl.c: $(src)/$(FONTMAPFILE) $(obj)/conmakehash
42 $(call cmd,conmk)
43diff --git a/drivers/tty/vt/conmakehash.c b/drivers/tty/vt/conmakehash.c
44index cddd789fe46e..d62510b280e9 100644
45--- a/drivers/tty/vt/conmakehash.c
46+++ b/drivers/tty/vt/conmakehash.c
47@@ -253,7 +253,7 @@ int main(int argc, char *argv[])
48 #include <linux/types.h>\n\
49 \n\
50 u8 dfont_unicount[%d] = \n\
51-{\n\t", argv[1], fontlen);
52+{\n\t", argv[2], fontlen);
53
54 for ( i = 0 ; i < fontlen ; i++ )
55 {
56--
572.36.1
58
diff --git a/recipes-kernel/linux/linux-intel_6.12.bb b/recipes-kernel/linux/linux-intel_6.12.bb
new file mode 100644
index 00000000..1ebd7fae
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel_6.12.bb
@@ -0,0 +1,23 @@
1require linux-intel.inc
2
3SRC_URI:prepend = "git://github.com/intel/linux-intel-lts.git;protocol=https;name=machine;branch=${KBRANCH}; \
4 "
5KBRANCH = "6.12/linux"
6KMETA_BRANCH = "yocto-6.12"
7
8LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
9
10DEPENDS += "elfutils-native openssl-native util-linux-native"
11
12LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}"
13
14LINUX_VERSION ?= "6.12.27"
15SRCREV_machine ?= "9e2f92c31c6353101755c83670232c94e0c07ddc"
16SRCREV_meta ?= "da71eb19ceab34a7a6ff4284f1580e043c870168"
17
18# Functionality flags
19KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc \
20 features/security/security.scc \
21 features/intel-npu/intel-npu.scc"
22
23UPSTREAM_CHECK_GITTAGREGEX = "^lts-(?P<pver>v6.12.(\d+)-linux-(\d+)T(\d+)Z)$"
diff --git a/recipes-kernel/linux/linux-intel_6.6.bb b/recipes-kernel/linux/linux-intel_6.6.bb
deleted file mode 100644
index 0d914b73..00000000
--- a/recipes-kernel/linux/linux-intel_6.6.bb
+++ /dev/null
@@ -1,21 +0,0 @@
1require linux-intel.inc
2
3SRC_URI:prepend = "git://github.com/intel/linux-intel-lts.git;protocol=https;name=machine;branch=${KBRANCH}; \
4 "
5KBRANCH = "6.6/linux"
6KMETA_BRANCH = "yocto-6.6"
7
8LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
9
10DEPENDS += "elfutils-native openssl-native util-linux-native"
11
12LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}"
13
14LINUX_VERSION ?= "6.6.23"
15SRCREV_machine ?= "lts-v6.6.23-linux-240407T055600Z"
16SRCREV_meta ?= "eb283ea577df80542d48f0c498365960b4c4ecd9"
17
18# Functionality flags
19KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc"
20
21UPSTREAM_CHECK_GITTAGREGEX = "^lts-(?P<pver>v6.6.(\d+)-linux-(\d+)T(\d+)Z)$"
diff --git a/recipes-kernel/linux/linux-intel_6.8.bb b/recipes-kernel/linux/linux-intel_6.8.bb
deleted file mode 100644
index 036879db..00000000
--- a/recipes-kernel/linux/linux-intel_6.8.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1require linux-intel.inc
2
3SRC_URI:prepend = "git://github.com/intel/mainline-tracking.git;protocol=https;name=machine;nobranch=1; \
4 "
5KMETA_BRANCH = "master"
6
7LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
8
9DEPENDS += "elfutils-native openssl-native util-linux-native"
10
11LINUX_VERSION_EXTENSION ??= "-mainline-tracking-${LINUX_KERNEL_TYPE}"
12
13LINUX_VERSION ?= "6.8"
14SRCREV_machine ?= "efbae83db36abbbbdb946d4f7bbdfda174107cd2"
15SRCREV_meta ?= "27907f391a4fc508da21358b13419c6e86926c34"
16
17# Functionality flags
18KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc"
19
20UPSTREAM_CHECK_GITTAGREGEX = "^mainline-tracking-v6.7-rc3-linux-(?P<pver>(\d+)T(\d+)Z)$"
diff --git a/recipes-multimedia/itt/itt_3.24.6.bb b/recipes-multimedia/itt/itt_3.26.1.bb
index 1c4759f9..27b967f5 100644
--- a/recipes-multimedia/itt/itt_3.24.6.bb
+++ b/recipes-multimedia/itt/itt_3.26.1.bb
@@ -9,8 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSES/BSD-3-Clause.txt;md5=c551872bcf41ce707df54c7
9 " 9 "
10 10
11SRC_URI = "git://github.com/intel/ittapi.git;protocol=https;branch=master" 11SRC_URI = "git://github.com/intel/ittapi.git;protocol=https;branch=master"
12SRCREV = "ec077431fc725dba590b09b2cec5137878b14783" 12SRCREV = "e535d565c88e4407f044719e2e9ec70c0b023d23"
13S = "${WORKDIR}/git"
14PE = "1" 13PE = "1"
15 14
16UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$" 15UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
@@ -28,12 +27,6 @@ do_install() {
28 cp -r ${S}/include/* ${D}${includedir}/ittnotify 27 cp -r ${S}/include/* ${D}${includedir}/ittnotify
29 cp -r ${S}/src/ittnotify/*.h ${D}${includedir}/ittnotify 28 cp -r ${S}/src/ittnotify/*.h ${D}${includedir}/ittnotify
30 rm -r ${D}${includedir}/ittnotify/fortran/win32 29 rm -r ${D}${includedir}/ittnotify/fortran/win32
31 if [ "${TARGET_ARCH}" = "x86_64" ]; then
32 rm -r ${D}${includedir}/ittnotify/fortran/posix/x86
33 else
34 rm -r ${D}${includedir}/ittnotify/fortran/posix/x86_64
35 fi
36
37} 30}
38 31
39RDEPENDS:${PN}-dev:remove = "${PN} (= ${EXTENDPKGV})" 32RDEPENDS:${PN}-dev:remove = "${PN} (= ${EXTENDPKGV})"
diff --git a/recipes-multimedia/libva/files/0001-Disable-vp9-padding-on-mtl.patch b/recipes-multimedia/libva/files/0001-Disable-vp9-padding-on-mtl.patch
deleted file mode 100644
index 90dff8d1..00000000
--- a/recipes-multimedia/libva/files/0001-Disable-vp9-padding-on-mtl.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From 1b303f417113ad1aa6b63fc024fbe4aa0c943f57 Mon Sep 17 00:00:00 2001
2From: Lim Siew Hoon <siew.hoon.lim@intel.com>
3Date: Tue, 5 Sep 2023 16:13:42 +0800
4Subject: [PATCH 01/12] Disable vp9 padding on mtl.
5
6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1720]
7
8Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
9---
10 media_softlet/linux/Xe_M_plus/ddi/media_sku_wa_mtl.cpp | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/media_softlet/linux/Xe_M_plus/ddi/media_sku_wa_mtl.cpp b/media_softlet/linux/Xe_M_plus/ddi/media_sku_wa_mtl.cpp
14index 844545a87..72265289c 100644
15--- a/media_softlet/linux/Xe_M_plus/ddi/media_sku_wa_mtl.cpp
16+++ b/media_softlet/linux/Xe_M_plus/ddi/media_sku_wa_mtl.cpp
17@@ -284,7 +284,7 @@ static bool InitMtlMediaWaExt(struct GfxDeviceInfo *devInfo,
18
19 MEDIA_WR_WA(waTable, WaDisableSetObjectCapture, 1);
20
21- MEDIA_WR_WA(waTable, Wa_Vp9UnalignedHeight, 1);
22+ MEDIA_WR_WA(waTable, Wa_Vp9UnalignedHeight, 0);
23
24 MEDIA_WR_WA(waTable, Wa_15013355402, 1);
25
26@@ -337,4 +337,4 @@ static struct LinuxDeviceInit arlDeviceInit =
27 };
28
29 static bool arlDeviceRegister = DeviceInfoFactory<LinuxDeviceInit>::
30- RegisterDevice((uint32_t)IGFX_ARROWLAKE, &arlDeviceInit);
31\ No newline at end of file
32+ RegisterDevice((uint32_t)IGFX_ARROWLAKE, &arlDeviceInit);
33--
342.40.1
35
diff --git a/recipes-multimedia/libva/files/0002-Force-ARGB-surface-to-tile4-for-ACM.patch b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch
index df3d9805..ffb5b747 100644
--- a/recipes-multimedia/libva/files/0002-Force-ARGB-surface-to-tile4-for-ACM.patch
+++ b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch
@@ -1,7 +1,7 @@
1From 1580f01ec5ad5afdad58c39dded999494275be10 Mon Sep 17 00:00:00 2001 1From 6132115dd2f1db55a6a5371618247dfaa334a035 Mon Sep 17 00:00:00 2001
2From: Lim Siew Hoon <siew.hoon.lim@intel.com> 2From: Lim Siew Hoon <siew.hoon.lim@intel.com>
3Date: Wed, 11 Oct 2023 15:36:21 +0800 3Date: Wed, 11 Oct 2023 15:36:21 +0800
4Subject: [PATCH 02/12] Force ARGB surface to tile4 for ACM 4Subject: [PATCH 3/7] Force ARGB surface to tile4 for ACM
5 5
6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728] 6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728]
7 7
@@ -12,10 +12,10 @@ Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
12 1 file changed, 10 insertions(+) 12 1 file changed, 10 insertions(+)
13 13
14diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp 14diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp
15index 63c173419..73be76366 100755 15index a4e12edfa..11634f66e 100755
16--- a/media_driver/linux/common/ddi/media_libva_util.cpp 16--- a/media_driver/linux/common/ddi/media_libva_util.cpp
17+++ b/media_driver/linux/common/ddi/media_libva_util.cpp 17+++ b/media_driver/linux/common/ddi/media_libva_util.cpp
18@@ -504,6 +504,7 @@ VAStatus DdiMediaUtil_AllocateSurface( 18@@ -521,6 +521,7 @@ VAStatus DdiMediaUtil_AllocateSurface(
19 gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0; 19 gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0;
20 } 20 }
21 } 21 }
@@ -23,7 +23,7 @@ index 63c173419..73be76366 100755
23 break; 23 break;
24 case TILING_X: 24 case TILING_X:
25 gmmCustomParams.Flags.Info.TiledX = true; 25 gmmCustomParams.Flags.Info.TiledX = true;
26@@ -685,6 +686,15 @@ VAStatus DdiMediaUtil_AllocateSurface( 26@@ -702,6 +703,15 @@ VAStatus DdiMediaUtil_AllocateSurface(
27 } 27 }
28 } 28 }
29 } 29 }
@@ -40,5 +40,5 @@ index 63c173419..73be76366 100755
40 case TILING_X: 40 case TILING_X:
41 gmmParams.Flags.Info.TiledX = true; 41 gmmParams.Flags.Info.TiledX = true;
42-- 42--
432.40.1 432.43.0
44 44
diff --git a/recipes-multimedia/libva/files/0004-Add-device-ID-for-ARL.patch b/recipes-multimedia/libva/files/0004-Add-device-ID-for-ARL.patch
deleted file mode 100644
index 59fff127..00000000
--- a/recipes-multimedia/libva/files/0004-Add-device-ID-for-ARL.patch
+++ /dev/null
@@ -1,45 +0,0 @@
1From bb860c0bfe53060925b1dce50da4e6e94cfc8cae Mon Sep 17 00:00:00 2001
2From: huangli2018 <li.h.huang@intel.com>
3Date: Wed, 20 Dec 2023 15:47:43 +0800
4Subject: [PATCH 04/13] Add device ID for ARL
5
6Add device ID for ARL
7
8Upstream-Status: Backport [https://github.com/intel/media-driver/commit/95cbfce81cafa3c24d9d4601d41a855093bc51fb]
9Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
10---
11 .../linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp | 13 +++++++++++--
12 1 file changed, 11 insertions(+), 2 deletions(-)
13
14diff --git a/media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp b/media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp
15index 426bd795f..7b73dfaff 100644
16--- a/media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp
17+++ b/media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp
18@@ -1,6 +1,6 @@
19 /*===================== begin_copyright_notice ==================================
20
21-Copyright (c) 2022, Intel Corporation
22+Copyright (c) 2023, Intel Corporation
23
24 Permission is hereby granted, free of charge, to any person obtaining a
25 copy of this software and associated documentation files (the "Software"),
26@@ -218,4 +218,13 @@ static struct GfxDeviceInfo arlInfo = {
27 };
28
29 static bool arlsDevice7d67 = DeviceInfoFactory<GfxDeviceInfo>::
30- RegisterDevice(0x7D67, &arlInfo);
31\ No newline at end of file
32+ RegisterDevice(0x7D67, &arlInfo);
33+
34+static bool arlhDevice7d51 = DeviceInfoFactory<GfxDeviceInfo>::
35+ RegisterDevice(0x7D51, &arlInfo);
36+
37+static bool arlhDevice7dd1 = DeviceInfoFactory<GfxDeviceInfo>::
38+ RegisterDevice(0x7DD1, &arlInfo);
39+
40+static bool arlhDevice7d41 = DeviceInfoFactory<GfxDeviceInfo>::
41+ RegisterDevice(0x7D41, &arlInfo);
42\ No newline at end of file
43--
442.40.1
45
diff --git a/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch b/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch
new file mode 100644
index 00000000..49e3ff13
--- /dev/null
+++ b/recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch
@@ -0,0 +1,85 @@
1From a32b95e58fd3e34847e799b909e08dbe5c9dc692 Mon Sep 17 00:00:00 2001
2From: Lim Siew Hoon <siew.hoon.lim@intel.com>
3Date: Fri, 2 Aug 2024 13:25:13 +0800
4Subject: [PATCH 4/7] Fix failed 4k videowalll test case and color corruption
5 of video composition in Gen12 platform
6
7Fix failed 4k video wall test case from 16CH video only show
81CH output and corruption observed on certain number of video
9composition when doing sample_multi_transcode in legacy path.
10
11platform: TGL/ADL/RPL
12
13Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1839]
14
15Signed-off-by: xupianch <xu.pian.chan@intel.com>
16Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
17---
18 .../common/vp/hal/vphal_render_composite.cpp | 9 ++++++++-
19 .../linux/common/vp/ddi/media_libva_vp.c | 18 +++++-------------
20 2 files changed, 13 insertions(+), 14 deletions(-)
21
22diff --git a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp
23index 169030209..cc7c241c1 100644
24--- a/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp
25+++ b/media_driver/agnostic/common/vp/hal/vphal_render_composite.cpp
26@@ -6784,6 +6784,13 @@ bool CompositeState::BuildFilter(
27
28 for (i = 0; (i < (int)pCompParams->uSourceCount) && (iMaxFilterSize > 0); i++)
29 {
30+ if (i > 0)
31+ {
32+ if (!RECT1_CONTAINS_RECT2(pCompParams->pSource[0]->rcDst, pCompParams->pSource[i]->rcDst))
33+ {
34+ pFilter->forceToTargetColorSpace = true;
35+ }
36+ }
37 pSrc = pCompParams->pSource[i];
38
39 //--------------------------------
40@@ -8154,4 +8161,4 @@ bool CompositeState::IsSamplerIDForY(
41 return true;
42 }
43 return false;
44- }
45\ No newline at end of file
46+ }
47diff --git a/media_driver/linux/common/vp/ddi/media_libva_vp.c b/media_driver/linux/common/vp/ddi/media_libva_vp.c
48index 48a452315..4f0fc2c48 100644
49--- a/media_driver/linux/common/vp/ddi/media_libva_vp.c
50+++ b/media_driver/linux/common/vp/ddi/media_libva_vp.c
51@@ -1148,7 +1148,7 @@ DdiVp_SetProcPipelineParams(
52
53 // Background Colorfill
54 // According to libva definition, if alpha in output background color is zero, then colorfill is not needed
55- if ((pPipelineParam->output_background_color >> 24) != 0 || pVpHalTgtSurf->ColorSpace == CSpace_sRGB)
56+ if ((pPipelineParam->output_background_color >> 24) != 0)
57 {
58 if (pVpHalRenderParams->pColorFillParams == nullptr)
59 {
60@@ -1157,18 +1157,10 @@ DdiVp_SetProcPipelineParams(
61
62 DDI_CHK_NULL(pVpHalRenderParams->pColorFillParams, "Null pColorFillParams.", VA_STATUS_ERROR_UNKNOWN);
63
64- if (pVpHalTgtSurf->ColorSpace == CSpace_sRGB && (pPipelineParam->output_background_color >> 24) == 0)
65- {
66- // set color space for sRGB output
67- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
68- }
69- else
70- {
71- // set background colorfill option
72- pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color;
73- pVpHalRenderParams->pColorFillParams->bYCbCr = false;
74- pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
75- }
76+ // set background colorfill option
77+ pVpHalRenderParams->pColorFillParams->Color = pPipelineParam->output_background_color;
78+ pVpHalRenderParams->pColorFillParams->bYCbCr = false;
79+ pVpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
80 }else
81 {
82 MOS_FreeMemAndSetNull(pVpHalRenderParams->pColorFillParams);
83--
842.43.0
85
diff --git a/recipes-multimedia/libva/files/0005-Add-XR24-support-to-DMABuf.patch b/recipes-multimedia/libva/files/0005-Add-XR24-support-to-DMABuf.patch
deleted file mode 100644
index a9cd2317..00000000
--- a/recipes-multimedia/libva/files/0005-Add-XR24-support-to-DMABuf.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From bbd3af94a6146d702909ff7e25b0c0547ecbb895 Mon Sep 17 00:00:00 2001
2From: jlui <jonathan.ming.jun.lui@intel.com>
3Date: Wed, 15 Nov 2023 10:48:34 +0800
4Subject: [PATCH 05/13] Add XR24 support to DMABuf
5
6This is to enable XR24/BGRX support for DMABuf
7
8Signed-off-by: Lui, Jonathan Ming Jun <jonathan.ming.jun.lui@intel.com>
9
10Upstream-Status: Backport [https://github.com/intel/media-driver/commit/3910b7029f5416fd0b5972f940c65d0a82c48c7b]
11
12Signed-off-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
13---
14 .../vp/ddi/capstable_data_vp_xe_lpm_plus_r0_specific.h | 3 ++-
15 1 file changed, 2 insertions(+), 1 deletion(-)
16
17diff --git a/media_softlet/linux/xe_lpm_plus_r0/vp/ddi/capstable_data_vp_xe_lpm_plus_r0_specific.h b/media_softlet/linux/xe_lpm_plus_r0/vp/ddi/capstable_data_vp_xe_lpm_plus_r0_specific.h
18index fdcca8873..2dcf440a4 100644
19--- a/media_softlet/linux/xe_lpm_plus_r0/vp/ddi/capstable_data_vp_xe_lpm_plus_r0_specific.h
20+++ b/media_softlet/linux/xe_lpm_plus_r0/vp/ddi/capstable_data_vp_xe_lpm_plus_r0_specific.h
21@@ -55,8 +55,9 @@ static ProfileSurfaceAttribInfo surfaceAttribInfo_VAEntrypointVideoProc_VAProfil
22 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('4', '2', '2', 'V')}}},
23 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('R', 'G', 'B', 'A')}}},
24 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('B', 'G', 'R', 'A')}}},
25- {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, { VA_FOURCC('R', 'G', 'B', 'P')}}},
26+ {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('R', 'G', 'B', 'P')}}},
27 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('R', 'G', 'B', 'X')}}},
28+ {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('X', 'R', 'G', 'B')}}},
29 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('P', '0', '1', '0')}}},
30 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC('R', 'G', '2', '4')}}},
31 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_ARGB}}},
32--
332.40.1
34
diff --git a/recipes-multimedia/libva/files/0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch b/recipes-multimedia/libva/files/0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch
deleted file mode 100644
index 5b04201a..00000000
--- a/recipes-multimedia/libva/files/0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch
+++ /dev/null
@@ -1,214 +0,0 @@
1From 67fb6128adf8fc03d429393e98f0982b42a40e64 Mon Sep 17 00:00:00 2001
2From: Zhang_Xinfeng <carl.zhang@intel.com>
3Date: Wed, 27 Dec 2023 09:59:29 +0800
4Subject: [PATCH 06/12] add INTEL MEDIA ALLOC refineE to specify the memory
5 alignment
6
7this key is used to allocate bigger pages
8env variable INTEL_MEDIA_ALLOC_refineE also could be used
9and was not enabled by default
10mode 0 is default mode
11mode 1 is < 64 align to 64
12mode 2 is > 1M && <= 3M align to 1M, >3M align to 2M
13mode 3 is mode 1 & mode 2
14
15Upstream-Status: Backport [https://github.com/intel/media-driver/commit/765dd939dcc5562d18cca18e5eda505bda952797]
16Signed-off-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
17---
18 .../linux/common/os/i915/mos_bufmgr.c | 75 +++++++++++++++----
19 .../common/os/i915_production/mos_bufmgr.c | 1 +
20 .../common/os/mos_context_specific_next.cpp | 21 +++++-
21 .../common/os/mos_user_setting_specific.cpp | 7 ++
22 4 files changed, 90 insertions(+), 14 deletions(-)
23
24diff --git a/media_softlet/linux/common/os/i915/mos_bufmgr.c b/media_softlet/linux/common/os/i915/mos_bufmgr.c
25index c0b3ba027..b623d0129 100644
26--- a/media_softlet/linux/common/os/i915/mos_bufmgr.c
27+++ b/media_softlet/linux/common/os/i915/mos_bufmgr.c
28@@ -138,7 +138,7 @@ struct mos_bufmgr_gem {
29 int exec_count;
30
31 /** Array of lists of cached gem objects of power-of-two sizes */
32- struct mos_gem_bo_bucket cache_bucket[14 * 4];
33+ struct mos_gem_bo_bucket cache_bucket[64];
34 int num_buckets;
35 time_t time;
36
37@@ -3852,9 +3852,9 @@ add_bucket(struct mos_bufmgr_gem *bufmgr_gem, int size)
38 }
39
40 static void
41-init_cache_buckets(struct mos_bufmgr_gem *bufmgr_gem)
42+init_cache_buckets(struct mos_bufmgr_gem *bufmgr_gem, uint8_t alloc_mode)
43 {
44- unsigned long size, cache_max_size = 64 * 1024 * 1024;
45+ unsigned long size, cache_max_size = 64 * 1024 * 1024, unit_size;
46
47 /* OK, so power of two buckets was too wasteful of memory.
48 * Give 3 other sizes between each power of two, to hopefully
49@@ -3864,17 +3864,63 @@ init_cache_buckets(struct mos_bufmgr_gem *bufmgr_gem)
50 * width/height alignment and rounding of sizes to pages will
51 * get us useful cache hit rates anyway)
52 */
53- add_bucket(bufmgr_gem, 4096);
54- add_bucket(bufmgr_gem, 4096 * 2);
55- add_bucket(bufmgr_gem, 4096 * 3);
56+ /* alloc_mode 0 is default alloc_mode
57+ * alloc_mode 1 rounding up to 64K for all < 1M
58+ * alloc_mode 2 rounding up to 2M for size> 1M
59+ * alloc_mode 3 rounding up to 2M for size > 1M and 64K for size <= 1M */
60+ if( alloc_mode > 3 )
61+ alloc_mode = 0;
62+
63+ if ( 0 == alloc_mode || 2 == alloc_mode)
64+ {
65+ // < 1M normal alloc_mode
66+ add_bucket(bufmgr_gem, 4096);
67+ add_bucket(bufmgr_gem, 4096 * 2);
68+ add_bucket(bufmgr_gem, 4096 * 3);
69+ /* Initialize the linked lists for BO reuse cache. */
70+ for (size = 4 * 4096; size < 1024 * 1024; size *= 2) {
71+ add_bucket(bufmgr_gem, size);
72+ add_bucket(bufmgr_gem, size + size * 1 / 4);
73+ add_bucket(bufmgr_gem, size + size * 2 / 4);
74+ add_bucket(bufmgr_gem, size + size * 3 / 4);
75+ }
76
77- /* Initialize the linked lists for BO reuse cache. */
78- for (size = 4 * 4096; size <= cache_max_size; size *= 2) {
79- add_bucket(bufmgr_gem, size);
80+ add_bucket(bufmgr_gem, 1024 * 1024);
81+ }
82+ if (1 == alloc_mode || 3 == alloc_mode)
83+ {
84+ // < 1M 64k alignment
85+ unit_size = 64 * 1024;
86+ for (size = unit_size; size <= 1024 * 1024; size += unit_size)
87+ {
88+ add_bucket(bufmgr_gem, size);
89+ }
90+ }
91+ if( 0 == alloc_mode || 1 == alloc_mode)
92+ {
93+ //> 1M is normal alloc_mode
94+ add_bucket(bufmgr_gem, 1280 * 1024);
95+ add_bucket(bufmgr_gem, 1536 * 1024);
96+ add_bucket(bufmgr_gem, 1792 * 1024);
97+
98+ for (size = 2 * 1024 * 1024; size < cache_max_size; size *= 2) {
99+ add_bucket(bufmgr_gem, size);
100+ add_bucket(bufmgr_gem, size + size * 1 / 4);
101+ add_bucket(bufmgr_gem, size + size * 2 / 4);
102+ add_bucket(bufmgr_gem, size + size * 3 / 4);
103+ }
104+ }
105+ if( 2 == alloc_mode || 3 == alloc_mode)
106+ {
107+ //> 1M rolling to 2M
108+ unit_size = 2 * 1024 * 1024;
109+ add_bucket(bufmgr_gem, unit_size);
110+ add_bucket(bufmgr_gem, 3 * 1024 * 1024);
111
112- add_bucket(bufmgr_gem, size + size * 1 / 4);
113- add_bucket(bufmgr_gem, size + size * 2 / 4);
114- add_bucket(bufmgr_gem, size + size * 3 / 4);
115+ for (size = 4 * 1024 * 1024; size <= cache_max_size; size += unit_size)
116+ {
117+ add_bucket(bufmgr_gem, size);
118+ }
119 }
120 }
121
122@@ -5100,6 +5146,7 @@ mos_bufmgr_gem_init_i915(int fd, int batch_size)
123 struct drm_i915_gem_get_aperture aperture;
124 drm_i915_getparam_t gp;
125 int ret, tmp;
126+ uint8_t alloc_mode;
127 bool exec2 = false;
128
129 pthread_mutex_lock(&bufmgr_list_mutex);
130@@ -5352,10 +5399,12 @@ mos_bufmgr_gem_init_i915(int fd, int batch_size)
131 *
132 * Every 4 was too few for the blender benchmark.
133 */
134+ alloc_mode = (uint8_t)(batch_size & 0xff);
135+ batch_size &= 0xffffff00;
136 bufmgr_gem->max_relocs = batch_size / sizeof(uint32_t) / 2 - 2;
137
138 DRMINITLISTHEAD(&bufmgr_gem->named);
139- init_cache_buckets(bufmgr_gem);
140+ init_cache_buckets(bufmgr_gem,alloc_mode);
141
142 DRMLISTADD(&bufmgr_gem->managers, &bufmgr_list);
143
144diff --git a/media_softlet/linux/common/os/i915_production/mos_bufmgr.c b/media_softlet/linux/common/os/i915_production/mos_bufmgr.c
145index 90b5685b1..b3574f7d3 100644
146--- a/media_softlet/linux/common/os/i915_production/mos_bufmgr.c
147+++ b/media_softlet/linux/common/os/i915_production/mos_bufmgr.c
148@@ -5403,6 +5403,7 @@ mos_bufmgr_gem_init_i915(int fd, int batch_size)
149 *
150 * Every 4 was too few for the blender benchmark.
151 */
152+ batch_size &= 0xffffff00;
153 bufmgr_gem->max_relocs = batch_size / sizeof(uint32_t) / 2 - 2;
154
155 DRMINITLISTHEAD(&bufmgr_gem->named);
156diff --git a/media_softlet/linux/common/os/mos_context_specific_next.cpp b/media_softlet/linux/common/os/mos_context_specific_next.cpp
157index 9e9e3ff7e..543e262d1 100644
158--- a/media_softlet/linux/common/os/mos_context_specific_next.cpp
159+++ b/media_softlet/linux/common/os/mos_context_specific_next.cpp
160@@ -64,6 +64,7 @@ MOS_STATUS OsContextSpecificNext::Init(DDI_DEVICE_CONTEXT ddiDriverContext)
161 uint32_t iDeviceId = 0;
162 MOS_STATUS eStatus = MOS_STATUS_SUCCESS;
163 uint32_t value = 0;
164+ uint32_t mode = 0;
165 MediaUserSettingSharedPtr userSettingPtr = nullptr;
166
167 MOS_OS_FUNCTION_ENTER;
168@@ -89,7 +90,25 @@ MOS_STATUS OsContextSpecificNext::Init(DDI_DEVICE_CONTEXT ddiDriverContext)
169
170 userSettingPtr = MosInterface::MosGetUserSettingInstance(osDriverContext);
171
172- m_bufmgr = mos_bufmgr_gem_init(m_fd, BATCH_BUFFER_SIZE, &m_deviceType);
173+ mode = BATCH_BUFFER_SIZE;
174+ ReadUserSetting(
175+ userSettingPtr,
176+ value,
177+ "INTEL MEDIA ALLOC MODE",
178+ MediaUserSetting::Group::Device);
179+
180+ if (value)
181+ {
182+ mode |= (value & 0x000000ff);
183+ }
184+ value = 0;
185+ /* no need to set batch buffer size after switch to softpin
186+ * keep it, just for test during relocation to softpin transition
187+ * now , it could be a debug method , but is actually useless
188+ * so it is safe to reuse the lowest 8bit to convey addtional information
189+ * more suitable solution is deleting it , or add additional parameter*/
190+
191+ m_bufmgr = mos_bufmgr_gem_init(m_fd, (int)mode, &m_deviceType);
192 if (nullptr == m_bufmgr)
193 {
194 MOS_OS_ASSERTMESSAGE("Not able to allocate buffer manager, fd=0x%d", m_fd);
195diff --git a/media_softlet/linux/common/os/mos_user_setting_specific.cpp b/media_softlet/linux/common/os/mos_user_setting_specific.cpp
196index 6be8b4298..caed584f4 100644
197--- a/media_softlet/linux/common/os/mos_user_setting_specific.cpp
198+++ b/media_softlet/linux/common/os/mos_user_setting_specific.cpp
199@@ -52,5 +52,12 @@ MOS_STATUS MosUserSetting::InitMosUserSettingSpecific(MediaUserSettingSharedPtr
200 0,
201 true); //"Enable VM Bind."
202
203+ DeclareUserSettingKey(
204+ userSettingPtr,
205+ "INTEL MEDIA ALLOC MODE",
206+ MediaUserSetting::Group::Device,
207+ 0,
208+ false); //
209+
210 return MOS_STATUS_SUCCESS;
211 }
212--
2132.40.1
214
diff --git a/recipes-multimedia/libva/files/0007-Skip-report-keys.patch b/recipes-multimedia/libva/files/0007-Skip-report-keys.patch
deleted file mode 100644
index 459ff490..00000000
--- a/recipes-multimedia/libva/files/0007-Skip-report-keys.patch
+++ /dev/null
@@ -1,78 +0,0 @@
1From b1aebef4d342c77fc2b9c5efbf20aeb2aa9d634e Mon Sep 17 00:00:00 2001
2From: Wang_Pingli <pingli.wang@intel.com>
3Date: Thu, 28 Dec 2023 16:44:40 +0800
4Subject: [PATCH 07/12] Skip report keys
5
6Skip to report keys
7
8Upstream-Status: Backport [https://github.com/intel/media-driver/commit/68ce25b0a6fa90614eb4734c8680aa4e149e8323]
9Signed-off-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
10---
11 .../os/osservice/mos_utilities_specific.cpp | 30 +++++++++++++++++--
12 1 file changed, 28 insertions(+), 2 deletions(-)
13
14diff --git a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
15index b5df29f06..96785e21e 100644
16--- a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
17+++ b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
18@@ -67,6 +67,8 @@ int32_t g_mosMemoryFailSimulateAllocCounter = 0;
19 int32_t *MosUtilities::m_mosAllocMemoryFailSimulateAllocCounter = &g_mosMemoryFailSimulateAllocCounter;
20 #endif
21
22+static bool s_skipToReportReg = false;
23+
24 double MosUtilities::MosGetTime()
25 {
26 struct timespec ts = {};
27@@ -1551,6 +1553,10 @@ MOS_STATUS MosUtilities::MosInitializeReg(RegBufferMap &regBufferMap)
28 {
29 std::string id = "";
30
31+ static const char *disableReportRegKeyList[] = {
32+ "INTEL MEDIA ALLOC MODE"
33+ };
34+ static const uint32_t disableReportRegKeyListCount = sizeof(disableReportRegKeyList) / sizeof(disableReportRegKeyList[0]);
35 while(!regStream.eof())
36 {
37 std::string line = "";
38@@ -1585,8 +1591,22 @@ MOS_STATUS MosUtilities::MosInitializeReg(RegBufferMap &regBufferMap)
39 {
40 std::string name = line.substr(0,pos);
41 std::string value = line.substr(pos+1);
42- auto &keys = regBufferMap[id];
43- keys[name] = value;
44+ if (name.size() > 0 && value.size() > 0)
45+ {
46+ auto &keys = regBufferMap[id];
47+ keys[name] = value;
48+ if (s_skipToReportReg == false && id == USER_SETTING_CONFIG_PATH)
49+ {
50+ for (uint32_t i = 0; i < disableReportRegKeyListCount; i++)
51+ {
52+ if (strcmp(name.c_str(), disableReportRegKeyList[i]) == 0)
53+ {
54+ s_skipToReportReg = true;
55+ break;
56+ }
57+ }
58+ }
59+ }
60 }
61 }
62 }
63@@ -1606,6 +1626,12 @@ MOS_STATUS MosUtilities::MosInitializeReg(RegBufferMap &regBufferMap)
64 MOS_STATUS MosUtilities::MosUninitializeReg(RegBufferMap &regBufferMap)
65 {
66 MOS_STATUS status = MOS_STATUS_SUCCESS;
67+
68+ if (s_skipToReportReg)
69+ {
70+ return MOS_STATUS_SUCCESS;
71+ }
72+
73 if (regBufferMap.size() == 0)
74 {
75 return MOS_STATUS_SUCCESS;
76--
772.40.1
78
diff --git a/recipes-multimedia/libva/files/0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch b/recipes-multimedia/libva/files/0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch
deleted file mode 100644
index ece5e00b..00000000
--- a/recipes-multimedia/libva/files/0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch
+++ /dev/null
@@ -1,255 +0,0 @@
1From ac2ffac8d4aade216cc361c6c7120c13a8780719 Mon Sep 17 00:00:00 2001
2From: "Soon, Thean Siew" <thean.siew.soon@intel.com>
3Date: Thu, 28 Dec 2023 18:42:59 +0000
4Subject: [PATCH 08/12] Limit INTEL MEDIA ALLOC MODE to MTL and ARL only
5
6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1754]
7
8Signed-off-by: Soon, Thean Siew <thean.siew.soon@intel.com>
9---
10 .../common/os/i915/include/mos_bufmgr_api.h | 1 +
11 .../common/os/i915/include/mos_bufmgr_priv.h | 2 +-
12 .../linux/common/os/i915/mos_bufmgr.c | 69 +++++++++++++++----
13 .../linux/common/os/i915/mos_bufmgr_api.c | 19 +++++
14 .../os/i915_production/mos_bufmgr_priv.h | 1 +
15 .../common/os/mos_context_specific_next.cpp | 36 +++++-----
16 6 files changed, 94 insertions(+), 34 deletions(-)
17
18diff --git a/media_softlet/linux/common/os/i915/include/mos_bufmgr_api.h b/media_softlet/linux/common/os/i915/include/mos_bufmgr_api.h
19index 71cc01099..ab4f1ba89 100644
20--- a/media_softlet/linux/common/os/i915/include/mos_bufmgr_api.h
21+++ b/media_softlet/linux/common/os/i915/include/mos_bufmgr_api.h
22@@ -299,6 +299,7 @@ void mos_bufmgr_enable_vmbind(struct mos_bufmgr *bufmgr);
23 void mos_bufmgr_disable_object_capture(struct mos_bufmgr *bufmgr);
24 int mos_bufmgr_get_memory_info(struct mos_bufmgr *bufmgr, char *info, uint32_t length);
25 int mos_bufmgr_get_devid(struct mos_bufmgr *bufmgr);
26+void mos_bufmgr_realloc_cache(struct mos_bufmgr *bufmgr, uint8_t alloc_mode);
27
28 int mos_bo_map_unsynchronized(struct mos_linux_bo *bo);
29 int mos_bo_map_gtt(struct mos_linux_bo *bo);
30diff --git a/media_softlet/linux/common/os/i915/include/mos_bufmgr_priv.h b/media_softlet/linux/common/os/i915/include/mos_bufmgr_priv.h
31index 63f69f985..6fd58f827 100644
32--- a/media_softlet/linux/common/os/i915/include/mos_bufmgr_priv.h
33+++ b/media_softlet/linux/common/os/i915/include/mos_bufmgr_priv.h
34@@ -358,9 +358,9 @@ struct mos_bufmgr {
35 void (*disable_object_capture)(struct mos_bufmgr *bufmgr) = nullptr;
36 int (*get_memory_info)(struct mos_bufmgr *bufmgr, char *info, uint32_t length) = nullptr;
37 int (*get_devid)(struct mos_bufmgr *bufmgr) = nullptr;
38+ void (*realloc_cache)(struct mos_bufmgr *bufmgr, uint8_t alloc_mode) = nullptr;
39 int (*query_engines_count)(struct mos_bufmgr *bufmgr,
40 unsigned int *nengine) = nullptr;
41-
42 int (*query_engines)(struct mos_bufmgr *bufmgr,
43 __u16 engine_class,
44 __u64 caps,
45diff --git a/media_softlet/linux/common/os/i915/mos_bufmgr.c b/media_softlet/linux/common/os/i915/mos_bufmgr.c
46index b623d0129..2814ddbb7 100644
47--- a/media_softlet/linux/common/os/i915/mos_bufmgr.c
48+++ b/media_softlet/linux/common/os/i915/mos_bufmgr.c
49@@ -2426,19 +2426,9 @@ mos_gem_bo_start_gtt_access(struct mos_linux_bo *bo, int write_enable)
50 }
51
52 static void
53-mos_bufmgr_gem_destroy(struct mos_bufmgr *bufmgr)
54+mos_bufmgr_cleanup_cache(struct mos_bufmgr_gem *bufmgr_gem)
55 {
56- struct mos_bufmgr_gem *bufmgr_gem = (struct mos_bufmgr_gem *) bufmgr;
57- struct drm_gem_close close_bo;
58- int i, ret;
59-
60- free(bufmgr_gem->exec2_objects);
61- free(bufmgr_gem->exec_objects);
62- free(bufmgr_gem->exec_bos);
63- pthread_mutex_destroy(&bufmgr_gem->lock);
64-
65- /* Free any cached buffer objects we were going to reuse */
66- for (i = 0; i < bufmgr_gem->num_buckets; i++) {
67+ for (int i = 0; i < bufmgr_gem->num_buckets; i++) {
68 struct mos_gem_bo_bucket *bucket =
69 &bufmgr_gem->cache_bucket[i];
70 struct mos_bo_gem *bo_gem;
71@@ -2450,7 +2440,25 @@ mos_bufmgr_gem_destroy(struct mos_bufmgr *bufmgr)
72
73 mos_gem_bo_free(&bo_gem->bo);
74 }
75+ bufmgr_gem->cache_bucket[i].size = 0;
76 }
77+ bufmgr_gem->num_buckets = 0;
78+}
79+
80+static void
81+mos_bufmgr_gem_destroy(struct mos_bufmgr *bufmgr)
82+{
83+ struct mos_bufmgr_gem *bufmgr_gem = (struct mos_bufmgr_gem *)bufmgr;
84+ struct drm_gem_close close_bo;
85+ int ret;
86+
87+ free(bufmgr_gem->exec2_objects);
88+ free(bufmgr_gem->exec_objects);
89+ free(bufmgr_gem->exec_bos);
90+ pthread_mutex_destroy(&bufmgr_gem->lock);
91+
92+ /* Free any cached buffer objects we were going to reuse */
93+ mos_bufmgr_cleanup_cache(bufmgr_gem);
94
95 /* Release userptr bo kept hanging around for optimisation. */
96 if (bufmgr_gem->userptr_active.ptr) {
97@@ -3852,9 +3860,41 @@ add_bucket(struct mos_bufmgr_gem *bufmgr_gem, int size)
98 }
99
100 static void
101-init_cache_buckets(struct mos_bufmgr_gem *bufmgr_gem, uint8_t alloc_mode)
102+init_cache_buckets(struct mos_bufmgr_gem *bufmgr_gem)
103+{
104+ unsigned long size, cache_max_size = 64 * 1024 * 1024;
105+
106+ /* OK, so power of two buckets was too wasteful of memory.
107+ * Give 3 other sizes between each power of two, to hopefully
108+ * cover things accurately enough. (The alternative is
109+ * probably to just go for exact matching of sizes, and assume
110+ * that for things like composited window resize the tiled
111+ * width/height alignment and rounding of sizes to pages will
112+ * get us useful cache hit rates anyway)
113+ */
114+ add_bucket(bufmgr_gem, 4096);
115+ add_bucket(bufmgr_gem, 4096 * 2);
116+ add_bucket(bufmgr_gem, 4096 * 3);
117+
118+ /* Initialize the linked lists for BO reuse cache. */
119+ for (size = 4 * 4096; size <= cache_max_size; size *= 2) {
120+ add_bucket(bufmgr_gem, size);
121+
122+ add_bucket(bufmgr_gem, size + size * 1 / 4);
123+ add_bucket(bufmgr_gem, size + size * 2 / 4);
124+ add_bucket(bufmgr_gem, size + size * 3 / 4);
125+ }
126+}
127+
128+static void
129+mos_gem_realloc_cache(struct mos_bufmgr *bufmgr, uint8_t alloc_mode)
130 {
131 unsigned long size, cache_max_size = 64 * 1024 * 1024, unit_size;
132+ struct mos_bufmgr_gem *bufmgr_gem = (struct mos_bufmgr_gem *)bufmgr;
133+
134+ // Clean up the pre-allocated cache before re-allocating according
135+ // to alloc_mode
136+ mos_bufmgr_cleanup_cache(bufmgr_gem);
137
138 /* OK, so power of two buckets was too wasteful of memory.
139 * Give 3 other sizes between each power of two, to hopefully
140@@ -5218,6 +5258,7 @@ mos_bufmgr_gem_init_i915(int fd, int batch_size)
141 bufmgr_gem->bufmgr.disable_object_capture = mos_gem_disable_object_capture;
142 bufmgr_gem->bufmgr.get_memory_info = mos_gem_get_memory_info;
143 bufmgr_gem->bufmgr.get_devid = mos_gem_get_devid;
144+ bufmgr_gem->bufmgr.realloc_cache = mos_gem_realloc_cache;
145 bufmgr_gem->bufmgr.set_context_param = mos_gem_set_context_param;
146 bufmgr_gem->bufmgr.set_context_param_parallel = mos_gem_set_context_param_parallel;
147 bufmgr_gem->bufmgr.set_context_param_load_balance = mos_gem_set_context_param_load_balance;
148@@ -5404,7 +5445,7 @@ mos_bufmgr_gem_init_i915(int fd, int batch_size)
149 bufmgr_gem->max_relocs = batch_size / sizeof(uint32_t) / 2 - 2;
150
151 DRMINITLISTHEAD(&bufmgr_gem->named);
152- init_cache_buckets(bufmgr_gem,alloc_mode);
153+ init_cache_buckets(bufmgr_gem);
154
155 DRMLISTADD(&bufmgr_gem->managers, &bufmgr_list);
156
157diff --git a/media_softlet/linux/common/os/i915/mos_bufmgr_api.c b/media_softlet/linux/common/os/i915/mos_bufmgr_api.c
158index abe8ef96a..d0e02c267 100644
159--- a/media_softlet/linux/common/os/i915/mos_bufmgr_api.c
160+++ b/media_softlet/linux/common/os/i915/mos_bufmgr_api.c
161@@ -1204,6 +1204,25 @@ mos_bufmgr_get_devid(struct mos_bufmgr *bufmgr)
162 }
163 }
164
165+void
166+mos_bufmgr_realloc_cache(struct mos_bufmgr *bufmgr, uint8_t alloc_mode)
167+{
168+ if(!bufmgr)
169+ {
170+ MOS_OS_CRITICALMESSAGE("Input null ptr\n");
171+ return;
172+ }
173+
174+ if (bufmgr->realloc_cache)
175+ {
176+ return bufmgr->realloc_cache(bufmgr, alloc_mode);
177+ }
178+ else
179+ {
180+ MOS_OS_CRITICALMESSAGE("Unsupported\n");
181+ }
182+}
183+
184 int
185 mos_query_engines_count(struct mos_bufmgr *bufmgr,
186 unsigned int *nengine)
187diff --git a/media_softlet/linux/common/os/i915_production/mos_bufmgr_priv.h b/media_softlet/linux/common/os/i915_production/mos_bufmgr_priv.h
188index c3b765a4c..1d7f7edb0 100644
189--- a/media_softlet/linux/common/os/i915_production/mos_bufmgr_priv.h
190+++ b/media_softlet/linux/common/os/i915_production/mos_bufmgr_priv.h
191@@ -358,6 +358,7 @@ struct mos_bufmgr {
192 void (*disable_object_capture)(struct mos_bufmgr *bufmgr) = nullptr;
193 int (*get_memory_info)(struct mos_bufmgr *bufmgr, char *info, uint32_t length) = nullptr;
194 int (*get_devid)(struct mos_bufmgr *bufmgr) = nullptr;
195+ void (*realloc_cache)(struct mos_bufmgr *bufmgr, uint8_t alloc_mode) = nullptr;
196 int (*query_engines_count)(struct mos_bufmgr *bufmgr,
197 unsigned int *nengine) = nullptr;
198
199diff --git a/media_softlet/linux/common/os/mos_context_specific_next.cpp b/media_softlet/linux/common/os/mos_context_specific_next.cpp
200index 543e262d1..87059f538 100644
201--- a/media_softlet/linux/common/os/mos_context_specific_next.cpp
202+++ b/media_softlet/linux/common/os/mos_context_specific_next.cpp
203@@ -90,25 +90,7 @@ MOS_STATUS OsContextSpecificNext::Init(DDI_DEVICE_CONTEXT ddiDriverContext)
204
205 userSettingPtr = MosInterface::MosGetUserSettingInstance(osDriverContext);
206
207- mode = BATCH_BUFFER_SIZE;
208- ReadUserSetting(
209- userSettingPtr,
210- value,
211- "INTEL MEDIA ALLOC MODE",
212- MediaUserSetting::Group::Device);
213-
214- if (value)
215- {
216- mode |= (value & 0x000000ff);
217- }
218- value = 0;
219- /* no need to set batch buffer size after switch to softpin
220- * keep it, just for test during relocation to softpin transition
221- * now , it could be a debug method , but is actually useless
222- * so it is safe to reuse the lowest 8bit to convey addtional information
223- * more suitable solution is deleting it , or add additional parameter*/
224-
225- m_bufmgr = mos_bufmgr_gem_init(m_fd, (int)mode, &m_deviceType);
226+ m_bufmgr = mos_bufmgr_gem_init(m_fd, BATCH_BUFFER_SIZE, &m_deviceType);
227 if (nullptr == m_bufmgr)
228 {
229 MOS_OS_ASSERTMESSAGE("Not able to allocate buffer manager, fd=0x%d", m_fd);
230@@ -151,6 +133,22 @@ MOS_STATUS OsContextSpecificNext::Init(DDI_DEVICE_CONTEXT ddiDriverContext)
231 return eStatus;
232 }
233
234+ if (m_platformInfo.eProductFamily == IGFX_METEORLAKE ||
235+ m_platformInfo.eProductFamily == IGFX_ARROWLAKE)
236+ {
237+ ReadUserSetting(
238+ userSettingPtr,
239+ value,
240+ "INTEL MEDIA ALLOC MODE",
241+ MediaUserSetting::Group::Device);
242+
243+ if (value)
244+ {
245+ mode = (value & 0x000000ff);
246+ }
247+ mos_bufmgr_realloc_cache(m_bufmgr, mode);
248+ }
249+
250 ReadUserSetting(
251 userSettingPtr,
252 value,
253--
2542.40.1
255
diff --git a/recipes-multimedia/libva/files/0009-Skip-cache-bucket-realloc-for-default-mode-0.patch b/recipes-multimedia/libva/files/0009-Skip-cache-bucket-realloc-for-default-mode-0.patch
deleted file mode 100644
index 8ee7ef14..00000000
--- a/recipes-multimedia/libva/files/0009-Skip-cache-bucket-realloc-for-default-mode-0.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 18c32247cbc0e9fabff7a847add099496af9e53f Mon Sep 17 00:00:00 2001
2From: "Soon, Thean Siew" <thean.siew.soon@intel.com>
3Date: Mon, 8 Jan 2024 18:12:30 +0000
4Subject: [PATCH 09/12] Skip cache bucket realloc for default mode 0
5
6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1754]
7
8Signed-off-by: Soon, Thean Siew <thean.siew.soon@intel.com>
9---
10 .../linux/common/os/mos_context_specific_next.cpp | 7 ++++++-
11 1 file changed, 6 insertions(+), 1 deletion(-)
12
13diff --git a/media_softlet/linux/common/os/mos_context_specific_next.cpp b/media_softlet/linux/common/os/mos_context_specific_next.cpp
14index 87059f538..9dbd5da79 100644
15--- a/media_softlet/linux/common/os/mos_context_specific_next.cpp
16+++ b/media_softlet/linux/common/os/mos_context_specific_next.cpp
17@@ -146,7 +146,12 @@ MOS_STATUS OsContextSpecificNext::Init(DDI_DEVICE_CONTEXT ddiDriverContext)
18 {
19 mode = (value & 0x000000ff);
20 }
21- mos_bufmgr_realloc_cache(m_bufmgr, mode);
22+
23+ // Realloc cache only if it's not mode 0
24+ if (mode)
25+ {
26+ mos_bufmgr_realloc_cache(m_bufmgr, mode);
27+ }
28 }
29
30 ReadUserSetting(
31--
322.40.1
33
diff --git a/recipes-multimedia/libva/files/0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch b/recipes-multimedia/libva/files/0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch
deleted file mode 100644
index 0100df77..00000000
--- a/recipes-multimedia/libva/files/0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch
+++ /dev/null
@@ -1,195 +0,0 @@
1From 7291ab5206c5e172c6c94dcfbe4f1bc258f3b7a5 Mon Sep 17 00:00:00 2001
2From: WenshengZhang <wensheng.zhang@intel.com>
3Date: Wed, 10 Jan 2024 14:08:37 +0800
4Subject: [PATCH 10/12] Fix failed 4k video wall test case and color corruption
5 of video composition
6
7Fix failed 4k video wall test case from 16CH video only show 1CH output and
8corruption observed on certain number of video composition when doing
9sample_multi_transcode.
10
11Upstream-Status: Backport [https://github.com/intel/media-driver/commit/38e14b1b97170b51586d00d1fa607e496b0c5825]
12Signed-off-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
13---
14 .../common/vp/kdll/hal_kerneldll_next.h | 1 +
15 .../vp/hal/packet/vp_render_fc_kernel.cpp | 7 ++
16 .../common/vp/kdll/hal_kerneldll_next.c | 70 +++++++++++--------
17 .../linux/common/vp/ddi/ddi_vp_functions.cpp | 20 ++----
18 4 files changed, 55 insertions(+), 43 deletions(-)
19
20diff --git a/media_common/agnostic/common/vp/kdll/hal_kerneldll_next.h b/media_common/agnostic/common/vp/kdll/hal_kerneldll_next.h
21index 6447999b7..8e2ab371e 100644
22--- a/media_common/agnostic/common/vp/kdll/hal_kerneldll_next.h
23+++ b/media_common/agnostic/common/vp/kdll/hal_kerneldll_next.h
24@@ -588,6 +588,7 @@ typedef struct tagKdll_FilterEntry
25 Kdll_Scalingratio ScalingRatio;
26 Kdll_RenderMethod RenderMethod;
27 Kdll_SetCSCCoeffMethod SetCSCCoeffMode;
28+ bool forceToTargetColorSpace;
29 } Kdll_FilterEntry, *PKdll_FilterEntry;
30
31 // Structure that defines a compositing filter
32diff --git a/media_softlet/agnostic/common/vp/hal/packet/vp_render_fc_kernel.cpp b/media_softlet/agnostic/common/vp/hal/packet/vp_render_fc_kernel.cpp
33index 8e982f67e..f8308fed1 100644
34--- a/media_softlet/agnostic/common/vp/hal/packet/vp_render_fc_kernel.cpp
35+++ b/media_softlet/agnostic/common/vp/hal/packet/vp_render_fc_kernel.cpp
36@@ -775,6 +775,13 @@ MOS_STATUS VpRenderFcKernel::BuildFilter(
37
38 for (i = 0; (i < (int)compParams->sourceCount) && (iMaxFilterSize > 0); i++)
39 {
40+ if (i > 0)
41+ {
42+ if (!RECT1_CONTAINS_RECT2(compParams->source[0].surf->rcDst, compParams->source[i].surf->rcDst))
43+ {
44+ pFilter->forceToTargetColorSpace = true;
45+ }
46+ }
47 src = &compParams->source[i];
48
49 //--------------------------------
50diff --git a/media_softlet/agnostic/common/vp/kdll/hal_kerneldll_next.c b/media_softlet/agnostic/common/vp/kdll/hal_kerneldll_next.c
51index d8f7d429a..151f3b039 100644
52--- a/media_softlet/agnostic/common/vp/kdll/hal_kerneldll_next.c
53+++ b/media_softlet/agnostic/common/vp/kdll/hal_kerneldll_next.c
54@@ -2378,6 +2378,7 @@ bool KernelDll_SetupCSC(
55 Kdll_CSC_Matrix curr_matrix;
56 Kdll_CSC_Matrix *matrix = pCSC->Matrix; // Color Space conversion matrix
57 uint8_t * matrixID = pCSC->MatrixID; // CSC coefficient allocation table
58+ bool forceToTargetColorSpace = false;
59
60 // Clear all CSC matrices
61 MOS_ZeroMemory(matrix, sizeof(pCSC->Matrix));
62@@ -2395,6 +2396,10 @@ bool KernelDll_SetupCSC(
63 //---------------------------------------------------------------//
64 for (i = iFilterSize, pFilter = pSearchState->Filter; i > 0; i--, pFilter++)
65 {
66+ if (pFilter->forceToTargetColorSpace)
67+ {
68+ forceToTargetColorSpace = true;
69+ }
70 // Disable Procamp for all layers except Main Video
71 // Disable Procamp if source is RGB
72 if (pFilter->layer != Layer_MainVideo ||
73@@ -2456,44 +2461,51 @@ bool KernelDll_SetupCSC(
74 //---------------------------------------------------------------//
75 if (sel_cspace == CSpace_Any)
76 {
77- int cs;
78- for (cs = (CSpace_Any + 1); cs < CSpace_Count; cs++)
79+ if (forceToTargetColorSpace)
80 {
81- // Skip color spaces not in use
82- cspace = (VPHAL_CSPACE)cs;
83- if (!cspace_in_use[cspace])
84- {
85- continue;
86- }
87-
88- // xvYCC and BT are treated as same for CSC considerations (BT.x to xvYCC.x matrix is I)
89- cspace = KernelDll_TranslateCspace(cspace);
90-
91- // Count # of CS conversions and matrices
92- csc_count = 0;
93- for (i = iFilterSize, pFilter = pSearchState->Filter; i > 0; i--, pFilter++)
94+ sel_cspace = out_cspace;
95+ }
96+ else
97+ {
98+ int cs;
99+ for (cs = (CSpace_Any + 1); cs < CSpace_Count; cs++)
100 {
101- // Ignore layers where the Color Space may be set in software (colorfill, palletized)
102- if (pFilter->cspace == CSpace_Any)
103+ // Skip color spaces not in use
104+ cspace = (VPHAL_CSPACE)cs;
105+ if (!cspace_in_use[cspace])
106 {
107 continue;
108 }
109
110- // Check if CSC/PA is required
111- if (KernelDll_TranslateCspace(pFilter->cspace) != cspace ||
112- pFilter->procamp != DL_PROCAMP_DISABLED)
113+ // xvYCC and BT are treated as same for CSC considerations (BT.x to xvYCC.x matrix is I)
114+ cspace = KernelDll_TranslateCspace(cspace);
115+
116+ // Count # of CS conversions and matrices
117+ csc_count = 0;
118+ for (i = iFilterSize, pFilter = pSearchState->Filter; i > 0; i--, pFilter++)
119 {
120- csc_count++;
121+ // Ignore layers where the Color Space may be set in software (colorfill, palletized)
122+ if (pFilter->cspace == CSpace_Any)
123+ {
124+ continue;
125+ }
126+
127+ // Check if CSC/PA is required
128+ if (KernelDll_TranslateCspace(pFilter->cspace) != cspace ||
129+ pFilter->procamp != DL_PROCAMP_DISABLED)
130+ {
131+ csc_count++;
132+ }
133 }
134- }
135
136- // Save best choice as requiring minimum number of CSC operations
137- if ((sel_csc_count < 0) || // Initial value
138- (csc_count < sel_csc_count) || // Minimum number of CSC operations
139- (csc_count == sel_csc_count && cs == main_cspace)) // Use main cspace as default if same CSC count
140- {
141- sel_cspace = cspace;
142- sel_csc_count = csc_count;
143+ // Save best choice as requiring minimum number of CSC operations
144+ if ((sel_csc_count < 0) || // Initial value
145+ (csc_count < sel_csc_count) || // Minimum number of CSC operations
146+ (csc_count == sel_csc_count && cs == main_cspace)) // Use main cspace as default if same CSC count
147+ {
148+ sel_cspace = cspace;
149+ sel_csc_count = csc_count;
150+ }
151 }
152 }
153 }
154diff --git a/media_softlet/linux/common/vp/ddi/ddi_vp_functions.cpp b/media_softlet/linux/common/vp/ddi/ddi_vp_functions.cpp
155index 40d0b3fad..e60a6c69c 100644
156--- a/media_softlet/linux/common/vp/ddi/ddi_vp_functions.cpp
157+++ b/media_softlet/linux/common/vp/ddi/ddi_vp_functions.cpp
158@@ -2115,9 +2115,8 @@ VAStatus DdiVpFunctions::SetBackgroundColorfill(
159 {
160 DDI_VP_FUNC_ENTER;
161 DDI_VP_CHK_NULL(vpHalRenderParams, "nullptr vpHalRenderParams.", VA_STATUS_ERROR_INVALID_PARAMETER);
162- DDI_VP_CHK_NULL(vpHalRenderParams->pTarget[0],"nullptr pTarget[0].", VA_STATUS_ERROR_INVALID_PARAMETER);
163
164- if ((outBackGroundcolor >> 24) != 0 || vpHalRenderParams->pTarget[0]->ColorSpace == CSpace_sRGB)
165+ if ((outBackGroundcolor >> 24) != 0)
166 {
167 if (vpHalRenderParams->pColorFillParams == nullptr)
168 {
169@@ -2126,18 +2125,11 @@ VAStatus DdiVpFunctions::SetBackgroundColorfill(
170
171 DDI_VP_CHK_NULL(vpHalRenderParams->pColorFillParams, "nullptr pColorFillParams.", VA_STATUS_ERROR_UNKNOWN);
172
173- if (vpHalRenderParams->pTarget[0]->ColorSpace == CSpace_sRGB && (outBackGroundcolor >> 24) == 0)
174- {
175- // set color space for sRGB output
176- vpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
177- }
178- else
179- {
180- // set background colorfill option
181- vpHalRenderParams->pColorFillParams->Color = outBackGroundcolor;
182- vpHalRenderParams->pColorFillParams->bYCbCr = false;
183- vpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
184- }
185+ // set background colorfill option
186+ vpHalRenderParams->pColorFillParams->Color = outBackGroundcolor;
187+ vpHalRenderParams->pColorFillParams->bYCbCr = false;
188+ vpHalRenderParams->pColorFillParams->CSpace = CSpace_sRGB;
189+
190 }
191 else
192 {
193--
1942.40.1
195
diff --git a/recipes-multimedia/libva/files/0011-Disable-422H-format-output.patch b/recipes-multimedia/libva/files/0011-Disable-422H-format-output.patch
deleted file mode 100644
index 2f4aec1e..00000000
--- a/recipes-multimedia/libva/files/0011-Disable-422H-format-output.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From f8b4d982232d4c1330e1e5f5dcd7cd8ca94decba Mon Sep 17 00:00:00 2001
2From: WenshengZhang <wensheng.zhang@intel.com>
3Date: Thu, 25 Jan 2024 16:35:10 +0800
4Subject: [PATCH 11/12] Disable 422H format output
5
6Disable 422H format output.
7
8Upstream-Status: Backport [https://github.com/intel/media-driver/commit/eab411768e61a46e096793291f5f992eecf76cd8]
9Signed-off-by: Lim, Siew Hoon <siew.hoon.lim@intel.com>
10---
11 .../agnostic/common/vp/hal/feature_manager/policy.cpp | 6 ++++++
12 1 file changed, 6 insertions(+)
13
14diff --git a/media_softlet/agnostic/common/vp/hal/feature_manager/policy.cpp b/media_softlet/agnostic/common/vp/hal/feature_manager/policy.cpp
15index 317cec25a..12f1124fa 100644
16--- a/media_softlet/agnostic/common/vp/hal/feature_manager/policy.cpp
17+++ b/media_softlet/agnostic/common/vp/hal/feature_manager/policy.cpp
18@@ -1140,6 +1140,12 @@ MOS_STATUS Policy::GetScalingExecutionCaps(SwFilter *feature, bool isHdrEnabled)
19 bool isAlphaSettingSupportedByVebox =
20 IsAlphaSettingSupportedByVebox(scalingParams->formatInput, scalingParams->formatOutput, scalingParams->pCompAlpha);
21
22+ if (scalingParams->formatOutput == Format_422H)
23+ {
24+ VP_PUBLIC_ASSERTMESSAGE("Scaling not support 422H format output.");
25+ return MOS_STATUS_UNIMPLEMENTED;
26+ }
27+
28 // Clean usedForNextPass flag.
29 if (scalingEngine->usedForNextPass)
30 {
31--
322.40.1
33
diff --git a/recipes-multimedia/libva/files/0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch b/recipes-multimedia/libva/files/0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch
deleted file mode 100644
index 1be9139d..00000000
--- a/recipes-multimedia/libva/files/0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From b93904533d3ee66c7919fa8e23d26b852a37a917 Mon Sep 17 00:00:00 2001
2From: Lim Siew Hoon <siew.hoon.lim@intel.com>
3Date: Tue, 30 Jan 2024 13:27:52 +0800
4Subject: [PATCH 12/12] [Decode] Fix AVC decode SFC 4K hang issue
5
6Updated VDSFC input width and height for AVC decode
7
8Upstream-Status: Submitted [https://github.com/intel-innersource/drivers.gpu.unified/pull/151401]
9
10Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
11---
12 .../hal/dec/avc/packet/decode_avc_downsampling_packet.cpp | 4 ++++
13 1 file changed, 4 insertions(+)
14
15diff --git a/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_downsampling_packet.cpp b/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_downsampling_packet.cpp
16index e75fd8137..9cc236bd7 100644
17--- a/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_downsampling_packet.cpp
18+++ b/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_downsampling_packet.cpp
19@@ -59,6 +59,10 @@ MOS_STATUS AvcDownSamplingPkt::InitSfcParams(VDBOX_SFC_PARAMS &sfcParams)
20
21 AvcBasicFeature *avcBasicFeature = dynamic_cast<AvcBasicFeature*>(m_basicFeature);
22 DECODE_CHK_NULL(avcBasicFeature);
23+
24+ sfcParams.input.width = avcBasicFeature->m_width;
25+ sfcParams.input.height = avcBasicFeature->m_height;
26+
27 CODEC_PICTURE curPic = avcBasicFeature->m_avcPicParams->CurrPic;
28
29 if (avcBasicFeature->m_avcPicParams->seq_fields.mb_adaptive_frame_field_flag == true)
30--
312.40.1
32
diff --git a/recipes-multimedia/libva/intel-media-driver_23.4.3.bb b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb
index 6513d574..1716f0ea 100644
--- a/recipes-multimedia/libva/intel-media-driver_23.4.3.bb
+++ b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb
@@ -19,21 +19,11 @@ REQUIRED_DISTRO_FEATURES = "opengl"
19DEPENDS += "libva gmmlib" 19DEPENDS += "libva gmmlib"
20 20
21SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ 21SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \
22 file://0001-Disable-vp9-padding-on-mtl.patch \ 22 file://0003-Force-ARGB-surface-to-tile4-for-ACM.patch \
23 file://0002-Force-ARGB-surface-to-tile4-for-ACM.patch \ 23 file://0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch \
24 file://0004-Add-device-ID-for-ARL.patch \
25 file://0005-Add-XR24-support-to-DMABuf.patch \
26 file://0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch \
27 file://0007-Skip-report-keys.patch \
28 file://0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch \
29 file://0009-Skip-cache-bucket-realloc-for-default-mode-0.patch \
30 file://0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch \
31 file://0011-Disable-422H-format-output.patch \
32 file://0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch \
33 " 24 "
34 25
35SRCREV = "a9f272496fc0f3e823cc4a814666ea27b443d902" 26SRCREV = "14e2e7bcf1014186dbf1c099089c7c05cd880ae8"
36S = "${WORKDIR}/git"
37 27
38COMPATIBLE_HOST:x86-x32 = "null" 28COMPATIBLE_HOST:x86-x32 = "null"
39 29
@@ -48,6 +38,7 @@ EXTRA_OECMAKE += " \
48 -DMEDIA_RUN_TEST_SUITE=OFF \ 38 -DMEDIA_RUN_TEST_SUITE=OFF \
49 -DARCH=${MEDIA_DRIVER_ARCH} \ 39 -DARCH=${MEDIA_DRIVER_ARCH} \
50 -DMEDIA_BUILD_FATAL_WARNINGS=OFF \ 40 -DMEDIA_BUILD_FATAL_WARNINGS=OFF \
41 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
51 " 42 "
52 43
53CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" 44CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE"
diff --git a/recipes-multimedia/mediasdk/files/0001-FindITT.cmake-fix-detection-of-header-library.patch b/recipes-multimedia/mediasdk/files/0001-FindITT.cmake-fix-detection-of-header-library.patch
deleted file mode 100644
index 87c4e82e..00000000
--- a/recipes-multimedia/mediasdk/files/0001-FindITT.cmake-fix-detection-of-header-library.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From be7cec47777bd35c44a59f2af73f12ce9c26d65c Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 7 Oct 2020 09:33:06 +0800
4Subject: [PATCH] FindITT.cmake: fix detection of header/library
5
6Use find_library to check for the library so distributions installing to
7standard locations can also work in addition to custom paths specified
8using CMAKE_ITT_HOME.
9
10Also add ittnotify to PATH_SUFFIXES for header for cases when
11ittnotify.h is installed in /usr/include/ittnotify for example.
12
13Upstream-Status: Submitted
14
15Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
16---
17 builder/FindITT.cmake | 6 +++---
18 1 file changed, 3 insertions(+), 3 deletions(-)
19
20diff --git a/builder/FindITT.cmake b/builder/FindITT.cmake
21index ba2542c5..d96acf2e 100644
22--- a/builder/FindITT.cmake
23+++ b/builder/FindITT.cmake
24@@ -35,19 +35,19 @@ if( ENABLE_ITT )
25
26 find_path( ITT_INCLUDE_DIRS ittnotify.h
27 PATHS ${CMAKE_ITT_HOME} ${CMAKE_VTUNE_HOME}
28- PATH_SUFFIXES include )
29+ PATH_SUFFIXES include ittnotify)
30
31 # Unfortunately SEAPI and VTune uses different names for itt library:
32 # * SEAPI uses libittnotify${arch}.a
33 # * VTune uses libittnotify.a
34 # We are trying to check both giving preference to SEAPI name.
35- find_path( ITT_LIBRARY_DIRS libittnotify${arch}.a
36+ find_library( ITT_LIBRARY_DIRS ittnotify${arch}
37 PATHS ${CMAKE_ITT_HOME} ${CMAKE_VTUNE_HOME}
38 PATH_SUFFIXES lib64 )
39 if( NOT ITT_LIBRARY_DIRS MATCHES NOTFOUND )
40 set( ITT_LIBRARIES "ittnotify${arch}" )
41 else()
42- find_path( ITT_LIBRARY_DIRS libittnotify.a
43+ find_library( ITT_LIBRARY_DIRS ittnotify
44 PATHS ${CMAKE_ITT_HOME} ${CMAKE_VTUNE_HOME}
45 PATH_SUFFIXES lib64 )
46 if( NOT ITT_LIBRARY_PATH MATCHES NOTFOUND )
47--
482.26.2
49
diff --git a/recipes-multimedia/mediasdk/files/fix-gcc13.patch b/recipes-multimedia/mediasdk/files/fix-gcc13.patch
deleted file mode 100644
index fb973870..00000000
--- a/recipes-multimedia/mediasdk/files/fix-gcc13.patch
+++ /dev/null
@@ -1,15 +0,0 @@
1Upstream-Status: Inactive-Upstream
2Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
3
4diff --git a/api/mfx_dispatch/linux/mfxparser.cpp b/api/mfx_dispatch/linux/mfxparser.cpp
5index 9d3823ec3e..12e46d1881 100644
6--- a/api/mfx_dispatch/linux/mfxparser.cpp
7+++ b/api/mfx_dispatch/linux/mfxparser.cpp
8@@ -20,6 +20,7 @@
9
10 #include <ctype.h>
11 #include <stdio.h>
12+#include <stdint.h>
13 #include <stdlib.h>
14 #include <string.h>
15
diff --git a/recipes-multimedia/mediasdk/intel-mediasdk_23.2.2.bb b/recipes-multimedia/mediasdk/intel-mediasdk_23.2.2.bb
deleted file mode 100644
index f00a4404..00000000
--- a/recipes-multimedia/mediasdk/intel-mediasdk_23.2.2.bb
+++ /dev/null
@@ -1,63 +0,0 @@
1SUMMARY = "Intel(R) Media SDK for hardware accelerated media processing"
2DESCRIPTION = "Intel(R) Media SDK provides an API to access hardware-accelerated \
3video decode, encode and filtering on Intel® platforms with integrated graphics."
4
5HOMEPAGE = "https://github.com/Intel-Media-SDK/MediaSDK"
6BUGTRACKER = "https://github.com/Intel-Media-SDK/MediaSDK/issues"
7
8LICENSE = "MIT"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=3cb331af679cd8f968bf799a9c55b46e"
10
11CVE_DETAILS = "intel:media_sdk"
12
13# Only for 64 bit until media-driver issues aren't fixed
14COMPATIBLE_HOST = '(x86_64).*-linux'
15COMPATIBLE_HOST:x86-x32 = "null"
16
17inherit features_check
18REQUIRED_DISTRO_FEATURES = "opengl"
19
20DEPENDS += "libva"
21
22RDEPENDS:${PN} += "intel-media-driver"
23
24PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "dri3", "", d)} \
25 ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "wayland", "", d)} \
26 samples \
27 itt \
28 "
29
30PACKAGECONFIG[dri3] = "-DENABLE_X11_DRI3=ON, -DENABLE_X11_DRI3=OFF"
31PACKAGECONFIG[itt] = "-DENABLE_ITT=ON, -DENABLE_ITT=OFF, itt"
32PACKAGECONFIG[opencl] = "-DENABLE_OPENCL=ON, -DENABLE_OPENCL=OFF, virtual/opencl-icd opencl-clhpp opencl-headers"
33PACKAGECONFIG[samples] = "-DBUILD_SAMPLES=ON, -DBUILD_SAMPLES=OFF"
34PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND=ON, -DENABLE_WAYLAND=OFF, wayland wayland-native"
35
36SRC_URI = "git://github.com/Intel-Media-SDK/MediaSDK.git;protocol=https;nobranch=1;lfs=0 \
37 file://0001-FindITT.cmake-fix-detection-of-header-library.patch \
38 file://fix-gcc13.patch \
39 "
40
41SRCREV = "869b60a6c3d7b5e9f7c3b3b914986322dca4bbae"
42S = "${WORKDIR}/git"
43
44UPSTREAM_CHECK_GITTAGREGEX = "^intel-mediasdk-(?P<pver>(\d+(\.\d+)+))$"
45
46inherit cmake pkgconfig
47
48EXTRA_OECMAKE += "-DMFX_INCLUDE=${S}/api/include"
49
50do_install:append() {
51 mv ${D}${datadir}/mfx/samples ${D}${libdir}/mfx/samples
52}
53
54PACKAGE_BEFORE_PN = " ${PN}-samples"
55
56FILES:${PN} += " \
57 ${libdir}/mfx \
58 ${datadir}/mfx/plugins.cfg \
59 "
60
61FILES:${PN}-samples = "${libdir}/mfx/samples"
62
63INSANE_SKIP:${PN}-samples += "staticdev"
diff --git a/recipes-multimedia/onevpl/files/0001-ARLH-DID-open-source-6286.patch b/recipes-multimedia/onevpl/files/0001-ARLH-DID-open-source-6286.patch
deleted file mode 100644
index 8d1f3380..00000000
--- a/recipes-multimedia/onevpl/files/0001-ARLH-DID-open-source-6286.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From a425927469b36e7bc597bff4fdc24d42a1168d1a Mon Sep 17 00:00:00 2001
2From: gfxVPLsdm <gfxvplsdm@intel.com>
3Date: Mon, 18 Dec 2023 09:58:35 +0800
4Subject: [PATCH] ARLH DID open source (#6286)
5
6Co-authored-by: huangli <li.h.huang@intel.com>
7
8Upstream-Status: Backport [https://github.com/oneapi-src/oneVPL-intel-gpu/commit/66f1b4d60a367eb1b0774e0b4369f906e0e632ae]
9Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
10
11---
12 _studio/shared/include/mfxstructures-int.h | 7 ++++++-
13 1 file changed, 6 insertions(+), 1 deletion(-)
14
15diff --git a/_studio/shared/include/mfxstructures-int.h b/_studio/shared/include/mfxstructures-int.h
16index 363d9a63..8f16b0a8 100644
17--- a/_studio/shared/include/mfxstructures-int.h
18+++ b/_studio/shared/include/mfxstructures-int.h
19@@ -1,4 +1,4 @@
20-// Copyright (c) 2007-2021 Intel Corporation
21+// Copyright (c) 2007-2023 Intel Corporation
22 //
23 // Permission is hereby granted, free of charge, to any person obtaining a copy
24 // of this software and associated documentation files (the "Software"), to deal
25@@ -569,6 +569,11 @@ typedef struct {
26 /* ARL S */
27 { 0x7D67, MFX_HW_ARL, MFX_GT2 },
28
29+ /* ARL H*/
30+ { 0x7D51, MFX_HW_ARL, MFX_GT2 },
31+ { 0x7DD1, MFX_HW_ARL, MFX_GT2 },
32+ { 0x7D41, MFX_HW_ARL, MFX_GT2 },
33+
34 };
35
36 /*
37--
382.40.1
39
diff --git a/recipes-multimedia/onevpl/files/0001-Fix-SetBuffersYV12-V-U-plane-offsets-calculation-647.patch b/recipes-multimedia/onevpl/files/0001-Fix-SetBuffersYV12-V-U-plane-offsets-calculation-647.patch
deleted file mode 100644
index 8e014c97..00000000
--- a/recipes-multimedia/onevpl/files/0001-Fix-SetBuffersYV12-V-U-plane-offsets-calculation-647.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From e118062518c95d8fb0080cc8276b123a90bd0eb9 Mon Sep 17 00:00:00 2001
2From: gfxVPLsdm <gfxvplsdm@intel.com>
3Date: Wed, 21 Feb 2024 17:11:52 +0800
4Subject: [PATCH] Fix SetBuffersYV12() V & U plane offsets calculation (#6475)
5
6Signed-off-by: Hoe, Sheng Yang <sheng.yang.hoe@intel.com>
7Co-authored-by: Hoe, Sheng Yang <sheng.yang.hoe@intel.com>
8
9Upstream-Status: Backport [https://github.com/oneapi-src/oneVPL-intel-gpu/commit/ce704ddfe11724767ba86c9425a3917dc3100d4a]
10Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
11---
12 _studio/shared/src/libmfx_core_vaapi.cpp | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/_studio/shared/src/libmfx_core_vaapi.cpp b/_studio/shared/src/libmfx_core_vaapi.cpp
16index 2cad86f8..fd5fc269 100644
17--- a/_studio/shared/src/libmfx_core_vaapi.cpp
18+++ b/_studio/shared/src/libmfx_core_vaapi.cpp
19@@ -462,8 +462,8 @@ public:
20 }
21 else
22 {
23- eb.offsets[1] = eb.offsets[0] + uint32_t(eb.height * eb.pitches[1] / 2);
24- eb.offsets[2] = eb.offsets[1] + uint32_t(eb.height * eb.pitches[2] / 2);
25+ eb.offsets[1] = eb.offsets[0] + uint32_t(eb.height * eb.pitches[0]);
26+ eb.offsets[2] = eb.offsets[1] + uint32_t(eb.height * eb.pitches[1] / 2);
27 }
28 eb.num_planes = 3;
29 eb.data_size = eb.offsets[2] + (eb.height * eb.pitches[2] / 2);
30--
312.40.1
32
diff --git a/recipes-multimedia/onevpl/files/0001-JPEGe-Enable-BGR4-JPEG-Enc-support-6470.patch b/recipes-multimedia/onevpl/files/0001-JPEGe-Enable-BGR4-JPEG-Enc-support-6470.patch
deleted file mode 100644
index e3854407..00000000
--- a/recipes-multimedia/onevpl/files/0001-JPEGe-Enable-BGR4-JPEG-Enc-support-6470.patch
+++ /dev/null
@@ -1,96 +0,0 @@
1From 40c0bc6d3dfe172dd25908df2c16de29c34fa4d4 Mon Sep 17 00:00:00 2001
2From: gfxVPLsdm <gfxvplsdm@intel.com>
3Date: Mon, 5 Feb 2024 17:14:07 +0800
4Subject: [PATCH] [JPEGe] Enable BGR4 JPEG Enc support (#6470)
5
6Co-authored-by: vcheah <vincent.beng.keat.cheah@intel.com>
7
8Upstream-Status: Backport [https://github.com/oneapi-src/oneVPL-intel-gpu/commit/e73763d05f8fdc348c356b58dcb83075b5e868f8]
9Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
10---
11 .../mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw.cpp | 6 ++++--
12 .../encode_hw/mjpeg/src/mfx_mjpeg_encode_hw_utils.cpp | 9 +++++----
13 2 files changed, 9 insertions(+), 6 deletions(-)
14
15diff --git a/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw.cpp b/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw.cpp
16index 141564b1..332f6372 100644
17--- a/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw.cpp
18+++ b/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw.cpp
19@@ -212,7 +212,8 @@ mfxStatus MFXVideoENCODEMJPEG_HW::QueryImplsDescription(
20 ah.PushBack(memCaps.ColorFormats) = MFX_FOURCC_YV12;
21 ah.PushBack(memCaps.ColorFormats) = MFX_FOURCC_YUY2;
22 ah.PushBack(memCaps.ColorFormats) = MFX_FOURCC_RGB4;
23- memCaps.NumColorFormats = 4;
24+ ah.PushBack(memCaps.ColorFormats) = MFX_FOURCC_BGR4;
25+ memCaps.NumColorFormats = 5;
26
27 ah.PushBack(profileCaps.MemDesc);
28 profileCaps.MemDesc[1] = profileCaps.MemDesc[0];
29@@ -392,7 +393,7 @@ mfxStatus MFXVideoENCODEMJPEG_HW::Query(VideoCORE * core, mfxVideoParam *in, mfx
30 if ((fourCC == 0 && chromaFormat == 0) ||
31 (fourCC == MFX_FOURCC_NV12 && (chromaFormat == MFX_CHROMAFORMAT_YUV420 || chromaFormat == MFX_CHROMAFORMAT_YUV400)) ||
32 (fourCC == MFX_FOURCC_YUY2 && chromaFormat == MFX_CHROMAFORMAT_YUV422H) ||
33- (fourCC == MFX_FOURCC_RGB4 && chromaFormat == MFX_CHROMAFORMAT_YUV444))
34+ ((fourCC == MFX_FOURCC_RGB4 || fourCC == MFX_FOURCC_BGR4) && chromaFormat == MFX_CHROMAFORMAT_YUV444))
35 {
36 out->mfx.FrameInfo.FourCC = in->mfx.FrameInfo.FourCC;
37 out->mfx.FrameInfo.ChromaFormat = in->mfx.FrameInfo.ChromaFormat;
38@@ -698,6 +699,7 @@ mfxStatus MFXVideoENCODEMJPEG_HW::Init(mfxVideoParam *par)
39 doubleBytesPerPx = 4;
40 break;
41 case MFX_FOURCC_RGB4:
42+ case MFX_FOURCC_BGR4:
43 default:
44 doubleBytesPerPx = 8;
45 break;
46diff --git a/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw_utils.cpp b/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw_utils.cpp
47index 3fc619d1..b1ab556e 100644
48--- a/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw_utils.cpp
49+++ b/_studio/mfx_lib/encode_hw/mjpeg/src/mfx_mjpeg_encode_hw_utils.cpp
50@@ -108,6 +108,7 @@ mfxStatus MfxHwMJpegEncode::CheckJpegParam(VideoCORE *core, mfxVideoParam & par,
51 BytesPerPx = 2;
52 break;
53 case MFX_FOURCC_RGB4:
54+ case MFX_FOURCC_BGR4:
55 default:
56 BytesPerPx = 4;
57 }
58@@ -157,7 +158,7 @@ mfxStatus ExecuteBuffers::Init(mfxVideoParam const *par, mfxEncodeCtrl const * c
59
60 m_payload_base.length = 0;
61 m_payload_list.clear();
62- if (fourCC == MFX_FOURCC_RGB4 && chromaFormat == MFX_CHROMAFORMAT_YUV444)
63+ if ((fourCC == MFX_FOURCC_RGB4 || fourCC == MFX_FOURCC_BGR4) && chromaFormat == MFX_CHROMAFORMAT_YUV444)
64 {
65 m_app14_data.header = 0xEEFF;//APP14
66 m_app14_data.lenH = 0;
67@@ -287,7 +288,7 @@ mfxStatus ExecuteBuffers::Init(mfxVideoParam const *par, mfxEncodeCtrl const * c
68 m_pps.num_components = 3;
69 else if (fourCC == MFX_FOURCC_NV12 && chromaFormat == MFX_CHROMAFORMAT_YUV400)
70 m_pps.num_components = 1;
71- else if (fourCC == MFX_FOURCC_RGB4 && chromaFormat == MFX_CHROMAFORMAT_YUV444)
72+ else if ((fourCC == MFX_FOURCC_RGB4 || fourCC == MFX_FOURCC_BGR4) && chromaFormat == MFX_CHROMAFORMAT_YUV444)
73 m_pps.num_components = 3;
74 else
75 MFX_RETURN(MFX_ERR_UNDEFINED_BEHAVIOR);
76@@ -341,7 +342,7 @@ mfxStatus ExecuteBuffers::Init(mfxVideoParam const *par, mfxEncodeCtrl const * c
77 {
78 // No external tables - use Quality parameter
79 m_dqt_list.resize(0);
80- if (fourCC == MFX_FOURCC_RGB4)
81+ if (fourCC == MFX_FOURCC_RGB4 || fourCC == MFX_FOURCC_BGR4)
82 {
83 m_pps.quantiser_table_selector[0] = 0;
84 m_pps.quantiser_table_selector[1] = 0;
85@@ -393,7 +394,7 @@ mfxStatus ExecuteBuffers::Init(mfxVideoParam const *par, mfxEncodeCtrl const * c
86 {
87 m_dht_list.resize(0);
88 }
89- else if (hwCaps->MaxNumHuffTable == 1 || fourCC == MFX_FOURCC_RGB4)
90+ else if (hwCaps->MaxNumHuffTable == 1 || (fourCC == MFX_FOURCC_RGB4 || fourCC == MFX_FOURCC_BGR4))
91 {
92 m_dht_list.resize(1);
93
94--
952.40.1
96
diff --git a/recipes-multimedia/vpl/files/0001-Add-cstdint-header-to-resolve-build-issue-with-gcc-1.patch b/recipes-multimedia/vpl/files/0001-Add-cstdint-header-to-resolve-build-issue-with-gcc-1.patch
new file mode 100644
index 00000000..3158aef6
--- /dev/null
+++ b/recipes-multimedia/vpl/files/0001-Add-cstdint-header-to-resolve-build-issue-with-gcc-1.patch
@@ -0,0 +1,34 @@
1From a0fe1b898ba446fdd45ff7fdad18d442140df090 Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Sun, 11 May 2025 17:21:17 +0530
4Subject: [PATCH] Add cstdint header to resolve build issue with gcc-15
5
6Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
7
8Upstream-Status: Submitted [https://github.com/intel/libvpl-tools/pull/7]
9---
10 tools/legacy/sample_vpp/src/sample_vpp_frc_adv.cpp | 3 ++-
11 1 file changed, 2 insertions(+), 1 deletion(-)
12
13diff --git a/tools/legacy/sample_vpp/src/sample_vpp_frc_adv.cpp b/tools/legacy/sample_vpp/src/sample_vpp_frc_adv.cpp
14index 29d4a99..91baf8b 100644
15--- a/tools/legacy/sample_vpp/src/sample_vpp_frc_adv.cpp
16+++ b/tools/legacy/sample_vpp/src/sample_vpp_frc_adv.cpp
17@@ -5,6 +5,7 @@
18 ############################################################################*/
19
20 #include "sample_vpp_frc_adv.h"
21+#include <cstdint>
22 #include <math.h>
23 #include <algorithm>
24 #include "vm/strings_defs.h"
25@@ -179,4 +180,4 @@ mfxU64 FRCAdvancedChecker::GetExpectedPTS(mfxU32 frameNumber, mfxU64 timeOffset,
26
27 } // mfxU64 FRCAdvancedChecker::GetExpectedPTS( mfxU32 frameNumber, mfxU64 timeOffset, mfxU64 timeJump )
28
29-/* EOF */
30\ No newline at end of file
31+/* EOF */
32--
332.43.0
34
diff --git a/recipes-multimedia/vpl/files/0001-Update-vpl-inspect-to-remove-ReportedStats.patch b/recipes-multimedia/vpl/files/0001-Update-vpl-inspect-to-remove-ReportedStats.patch
new file mode 100644
index 00000000..8ccd7e46
--- /dev/null
+++ b/recipes-multimedia/vpl/files/0001-Update-vpl-inspect-to-remove-ReportedStats.patch
@@ -0,0 +1,73 @@
1From 39ec70e27cb6887d6b9e6abc231d1052f02c4d9b Mon Sep 17 00:00:00 2001
2From: "Yuan, Jenny" <jenny.yuan@intel.com>
3Date: Thu, 13 Feb 2025 11:54:46 -0800
4Subject: [PATCH] Update vpl-inspect to remove ReportedStats
5
6Since experimental API mfxEncoderDescription::encoder::ReportedStats is
7going to be removed, update vpl-inspect to remove ReportedStats field
8report.
9
10Upstream-Status: Backport [https://github.com/intel/libvpl-tools/commit/39ec70e27cb6887d6b9e6abc231d1052f02c4d9b]
11---
12 tools/cli/vpl-inspect/src/vpl-inspect.cpp | 38 -----------------------
13 1 file changed, 38 deletions(-)
14
15diff --git a/tools/cli/vpl-inspect/src/vpl-inspect.cpp b/tools/cli/vpl-inspect/src/vpl-inspect.cpp
16index e872316..b6e302f 100644
17--- a/tools/cli/vpl-inspect/src/vpl-inspect.cpp
18+++ b/tools/cli/vpl-inspect/src/vpl-inspect.cpp
19@@ -113,22 +113,6 @@ const char *_print_MediaAdapterType(mfxMediaAdapterType type) {
20 return "<unknown media adapter type>";
21 }
22
23-#ifdef ONEVPL_EXPERIMENTAL
24-const char *_print_EncodeStatsType(mfxU16 type) {
25- switch (type) {
26- STRING_OPTION(MFX_ENCODESTATS_LEVEL_BLK);
27- STRING_OPTION(MFX_ENCODESTATS_LEVEL_SLICE);
28- STRING_OPTION(MFX_ENCODESTATS_LEVEL_TILE);
29- STRING_OPTION(MFX_ENCODESTATS_LEVEL_FRAME);
30-
31- default:
32- break;
33- }
34-
35- return "<unknown encode stats type>";
36-}
37-#endif
38-
39 #ifdef ONEVPL_EXPERIMENTAL
40 const char *_print_SurfaceType(mfxSurfaceType type) {
41 switch (type) {
42@@ -549,28 +533,6 @@ int main(int argc, char *argv[]) {
43 "",
44 enc->Codecs[codec].BiDirectionalPrediction);
45
46-#ifdef ONEVPL_EXPERIMENTAL
47- // Once ReportedStats is moved out of experimental API the struct version of mfxEncoderDescription should
48- // be updated, and that can be used to know whether this field is valid.
49- // For now, just check implementation API version.
50- mfxVersion reqApiVersionReportedStats = {};
51- reqApiVersionReportedStats.Major = 2;
52- reqApiVersionReportedStats.Minor = 7;
53- if (idesc->ApiVersion.Version >= reqApiVersionReportedStats.Version) {
54- mfxU16 reportedStats = enc->Codecs[codec].ReportedStats;
55- if (reportedStats) {
56- for (mfxU16 statMask = 1; statMask != 0; statMask <<= 1) {
57- if (reportedStats & statMask) {
58- const char *statStr = _print_EncodeStatsType(statMask);
59- printf("%4sReportedStats: %s\n", "", statStr);
60- }
61- }
62- }
63- else {
64- printf("%4sReportedStats: 0\n", "");
65- }
66- }
67-#endif
68 for (int profile = 0; profile < enc->Codecs[codec].NumProfiles; profile++) {
69 printf("%6sProfile: %s\n",
70 "",
71--
722.43.0
73
diff --git a/recipes-multimedia/onevpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch b/recipes-multimedia/vpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch
index 762a4902..f9a568a7 100644
--- a/recipes-multimedia/onevpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch
+++ b/recipes-multimedia/vpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch
@@ -1,4 +1,4 @@
1From 630c32194f53c70f4f654fb3d198790df253ba1f Mon Sep 17 00:00:00 2001 1From ff715f4c543ddabc5c90160d0ae5c5598e8e1289 Mon Sep 17 00:00:00 2001
2From: Markus Volk <f_l_k@t-online.de> 2From: Markus Volk <f_l_k@t-online.de>
3Date: Thu, 15 Jun 2023 13:43:32 +0200 3Date: Thu, 15 Jun 2023 13:43:32 +0200
4Subject: [PATCH] vpl.pc.in: dont pass pcfiledir to cflags 4Subject: [PATCH] vpl.pc.in: dont pass pcfiledir to cflags
@@ -11,18 +11,15 @@ Upstream-Status: Inappropriate [oe specific]
11 1 file changed, 2 insertions(+), 2 deletions(-) 11 1 file changed, 2 insertions(+), 2 deletions(-)
12 12
13diff --git a/libvpl/pkgconfig/vpl.pc.in b/libvpl/pkgconfig/vpl.pc.in 13diff --git a/libvpl/pkgconfig/vpl.pc.in b/libvpl/pkgconfig/vpl.pc.in
14index ab468a9..05c020e 100644 14index aa9b158..b4e85ff 100644
15--- a/libvpl/pkgconfig/vpl.pc.in 15--- a/libvpl/pkgconfig/vpl.pc.in
16+++ b/libvpl/pkgconfig/vpl.pc.in 16+++ b/libvpl/pkgconfig/vpl.pc.in
17@@ -8,6 +8,6 @@ Description: oneAPI Video Processing Library 17@@ -7,6 +7,6 @@ Description: Accelerated video decode, encode, and frame processing capabilities
18 Version: @API_VERSION_MAJOR@.@API_VERSION_MINOR@ 18 Version: @API_VERSION_MAJOR@.@API_VERSION_MINOR@
19 URL: https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onevpl.html 19 URL: https://github.com/intel/libvpl
20 20
21-Libs: -L${libdir} -l@OUTPUT_NAME@ @VPL_PKGCONFIG_DEPENDENT_LIBS@ 21-Libs: -L${libdir} -l@OUTPUT_NAME@ @VPL_PKGCONFIG_DEPENDENT_LIBS@
22+Libs: -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -l@OUTPUT_NAME@ @VPL_PKGCONFIG_DEPENDENT_LIBS@ 22+Libs: -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -l@OUTPUT_NAME@ @VPL_PKGCONFIG_DEPENDENT_LIBS@
23 Libs.private: @VPL_PKGCONFIG_PRIVATE_LIBS@ 23 Libs.private: @VPL_PKGCONFIG_PRIVATE_LIBS@
24-Cflags: -I${includedir} -I${includedir}/vpl 24-Cflags: -I${includedir} -I${includedir}/vpl
25+Cflags: -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@ -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/vpl 25+Cflags: -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@ -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/vpl
26--
272.40.1
28
diff --git a/recipes-multimedia/vpl/libvpl-tools_1.3.0.bb b/recipes-multimedia/vpl/libvpl-tools_1.3.0.bb
new file mode 100644
index 00000000..9154eb62
--- /dev/null
+++ b/recipes-multimedia/vpl/libvpl-tools_1.3.0.bb
@@ -0,0 +1,43 @@
1SUMMARY = "Intel Video Processing Library Tools"
2DESCRIPTION = "Intel Video Processing Library (VPL) Tools provides \
3access to hardware accelerated video decode, encode and video processing \
4capabilities on Intel® GPUs use cases."
5
6HOMEPAGE = "https://github.com/intel/libvpl-tools"
7LICENSE = "MIT"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=c18ea6bb4786a26bf4eee88a7424a408 \
9 file://third-party-programs.txt;md5=ddf05049184e74942f45b0ca4cc69b8a"
10
11SRC_URI = "git://github.com/intel/libvpl-tools.git;protocol=https;branch=main \
12 file://0001-Update-vpl-inspect-to-remove-ReportedStats.patch \
13 file://0001-Add-cstdint-header-to-resolve-build-issue-with-gcc-1.patch \
14 "
15
16SRCREV = "82eab13ecec99f34e0f1d5dac490611b604406c9"
17
18inherit cmake
19DEPENDS += "libva libvpl pkgconfig-native"
20
21PACKAGECONFIG ??= "tools"
22PACKAGECONFIG[tools] = "-DENABLE_WAYLAND=ON, -DENABLE_WAYLAND=OFF, wayland wayland-native wayland-protocols"
23
24do_install:append() {
25 mkdir -p ${D}${datadir}/VPL/samples
26 mv ${D}${bindir}/sample_* ${D}${datadir}/VPL/samples
27 mv ${D}${bindir}/metrics_monitor ${D}${datadir}/VPL/samples
28}
29
30COMPATIBLE_HOST = '(x86_64).*-linux'
31
32FILES_SOLIBSDEV = ""
33
34FILES:${PN} += " ${datadir}/VPL/samples \
35 ${libdir}/libcttmetrics.so \
36 ${libdir}/vpl-tools/libvpl_wayland.* \
37 "
38
39FILES:${PN}-dev += "${libdir}/vpl-tools/libvpl_wayland.so \
40 "
41
42FILES:${PN}-doc += " ${datadir}/vpl-tools \
43 "
diff --git a/recipes-multimedia/onevpl/onevpl_2023.4.0.bb b/recipes-multimedia/vpl/libvpl_2.14.0.bb
index 513c7f2c..3c35a892 100644
--- a/recipes-multimedia/onevpl/onevpl_2023.4.0.bb
+++ b/recipes-multimedia/vpl/libvpl_2.14.0.bb
@@ -1,18 +1,17 @@
1SUMMARY = "oneAPI Video Processing Library" 1SUMMARY = "Intel Video Processing Library"
2DESCRIPTION = "The oneAPI Video Processing Library (oneVPL) provides \ 2DESCRIPTION = "Intel Video Processing Library (VPL) provides \
3a single video processing API for encode, decode, and video processing \ 3a single video processing API for encode, decode, and video processing \
4that works across a wide range of accelerators." 4that works across a wide range of accelerators."
5 5
6HOMEPAGE = "https://github.com/oneapi-src/oneVPL" 6HOMEPAGE = "https://github.com/intel/libvpl"
7LICENSE = "MIT" 7LICENSE = "MIT"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=c18ea6bb4786a26bf4eee88a7424a408 \ 8LIC_FILES_CHKSUM = "file://LICENSE;md5=c18ea6bb4786a26bf4eee88a7424a408 \
9 file://third-party-programs.txt;md5=0e35a23482445dd089b4eabe19103a06" 9 file://third-party-programs.txt;md5=ddf05049184e74942f45b0ca4cc69b8a"
10 10
11SRC_URI = "git://github.com/oneapi-src/oneVPL.git;protocol=https;branch=master \ 11SRC_URI = "git://github.com/intel/libvpl.git;protocol=https;branch=main \
12 file://0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch \ 12 file://0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch \
13 " 13 "
14SRCREV = "2274efcd3672b43297ef774f332e1fed6781381c" 14SRCREV = "025d43d086a3e663184cb49febe86152bf05409f"
15S = "${WORKDIR}/git"
16 15
17inherit cmake 16inherit cmake
18DEPENDS += "libva pkgconfig-native" 17DEPENDS += "libva pkgconfig-native"
@@ -20,21 +19,25 @@ DEPENDS += "libva pkgconfig-native"
20PACKAGECONFIG ??= "tools" 19PACKAGECONFIG ??= "tools"
21PACKAGECONFIG[tools] = "-DBUILD_TOOLS=ON, -DBUILD_TOOLS=OFF, wayland wayland-native wayland-protocols" 20PACKAGECONFIG[tools] = "-DBUILD_TOOLS=ON, -DBUILD_TOOLS=OFF, wayland wayland-native wayland-protocols"
22 21
22EXTRA_OECMAKE = "-DBUILD_EXAMPLES=ON"
23
23do_install:append() { 24do_install:append() {
24 mkdir -p ${D}${datadir}/oneVPL/samples 25 mkdir -p ${D}${datadir}/VPL/samples
25 mv ${D}${bindir}/sample_* ${D}${datadir}/oneVPL/samples 26 mv ${D}${bindir}/hello-* ${D}${datadir}/VPL/samples
26} 27}
27 28
28COMPATIBLE_HOST = '(x86_64).*-linux' 29COMPATIBLE_HOST = '(x86_64).*-linux'
29 30
30PACKAGES =+ "${PN}-examples" 31PACKAGES =+ "${PN}-examples"
31 32
33RREPLACES:${PN} = "onevpl"
34RCONFLICTS:${PN} = "onevpl"
35
32FILES:${PN}-examples = "${datadir}/vpl \ 36FILES:${PN}-examples = "${datadir}/vpl \
33 " 37 "
34 38
35FILES_SOLIBSDEV = "" 39FILES_SOLIBSDEV = ""
36FILES:${PN}-dev += "${libdir}/libvpl.so" 40FILES:${PN}-dev += "${libdir}/libvpl.so"
37 41
38FILES:${PN} += " ${datadir}/oneVPL/samples \ 42FILES:${PN} += " ${datadir}/VPL/samples \
39 ${libdir}/vpl/libvpl_wayland.so \
40 " 43 "
diff --git a/recipes-multimedia/onevpl/onevpl-intel-gpu_23.4.3.bb b/recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb
index 0b849bf1..0a0e6972 100644
--- a/recipes-multimedia/onevpl/onevpl-intel-gpu_23.4.3.bb
+++ b/recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb
@@ -2,8 +2,8 @@ SUMMARY = "Intel(R) oneVPL runtime for Intel GPU accelerated media processing"
2DESCRIPTION = "Intel(R) oneVPL runtime provides an runtime to access hardware-accelerated \ 2DESCRIPTION = "Intel(R) oneVPL runtime provides an runtime to access hardware-accelerated \
3video decode, encode and filtering on Intel® graphics." 3video decode, encode and filtering on Intel® graphics."
4 4
5HOMEPAGE = "https://github.com/oneapi-src/oneVPL-intel-gpu" 5HOMEPAGE = "https://github.com/intel/vpl-gpu-rt"
6BUGTRACKER = "https://github.com/oneapi-src/oneVPL-intel-gpu/issues" 6BUGTRACKER = "https://github.com/intel/vpl-gpu-rt/issues"
7 7
8LICENSE = "MIT" 8LICENSE = "MIT"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=eb8cb45b9b57dbaa9fcc9adc4230202b" 9LIC_FILES_CHKSUM = "file://LICENSE;md5=eb8cb45b9b57dbaa9fcc9adc4230202b"
@@ -14,20 +14,19 @@ PE = "1"
14COMPATIBLE_HOST = '(x86_64).*-linux' 14COMPATIBLE_HOST = '(x86_64).*-linux'
15COMPATIBLE_HOST:x86-x32 = "null" 15COMPATIBLE_HOST:x86-x32 = "null"
16 16
17DEPENDS += "libdrm libva intel-media-driver onevpl pkgconfig-native" 17DEPENDS += "libdrm libva intel-media-driver libvpl pkgconfig-native"
18RDEPENDS:${PN} += "intel-media-driver" 18RDEPENDS:${PN} += "intel-media-driver"
19 19
20SRC_URI = "git://github.com/oneapi-src/oneVPL-intel-gpu.git;protocol=https;nobranch=1;lfs=0 \ 20SRC_URI = "git://github.com/intel/vpl-gpu-rt.git;protocol=https;nobranch=1;lfs=0 \
21 file://0001-ARLH-DID-open-source-6286.patch \
22 file://0001-JPEGe-Enable-BGR4-JPEG-Enc-support-6470.patch \
23 file://0001-Fix-SetBuffersYV12-V-U-plane-offsets-calculation-647.patch \
24 " 21 "
25 22
26SRCREV = "852fa9f705ef44c004d014548601f3804a6de705" 23SRCREV = "c65990e456acf901597a76b22407232679152547"
27S = "${WORKDIR}/git"
28 24
29FILES:${PN} += " \ 25FILES:${PN} += " \
30 ${libdir}/libmfx-gen/enctools.so \ 26 ${libdir}/libmfx-gen/enctools.so \
31 " 27 "
32 28
33inherit cmake 29inherit cmake
30
31RREPLACES:${PN} = "onevpl-intel-gpu"
32RCONFLICTS:${PN} = "onevpl-intel-gpu"
diff --git a/recipes-oneapi/crypto/intel-crypto-mb_2021.11.1.bb b/recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb
index be72fd85..2b3fcca7 100644
--- a/recipes-oneapi/crypto/intel-crypto-mb_2021.11.1.bb
+++ b/recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "https://github.com/intel/ipp-crypto"
6 6
7LICENSE = "Apache-2.0" 7LICENSE = "Apache-2.0"
8 8
9LIC_FILES_CHKSUM = "file://../../../LICENSE;md5=e787af283468feca985d6b865d27d95b" 9LIC_FILES_CHKSUM = "file://../../../LICENSE;md5=d94a5b4dbbc5c6a0c2ce95ab337df6c4"
10 10
11IPP_BRANCH = "ipp-crypto_${@'_'.join(d.getVar('PV').rsplit('.')[-3:])}" 11IPP_BRANCH = "ipp-crypto_${@'_'.join(d.getVar('PV').rsplit('.')[-3:])}"
12 12
@@ -15,9 +15,9 @@ SRC_URI = "git://github.com/intel/ipp-crypto;protocol=https;branch=${IPP_BRANCH}
15 file://0002-cmake-exclude-Yocto-build-flags.patch;striplevel=4 \ 15 file://0002-cmake-exclude-Yocto-build-flags.patch;striplevel=4 \
16 file://0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch;striplevel=4 \ 16 file://0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch;striplevel=4 \
17 " 17 "
18SRCREV = "d02611e34328898d16025467d3deeb7d62b6076b" 18SRCREV = "7d6ac349507258f49d00909df33d5dea4ff77f39"
19 19
20S = "${WORKDIR}/git/sources/ippcp/crypto_mb" 20S = "${UNPACKDIR}/${PN}-${PV}/sources/ippcp/crypto_mb"
21 21
22DEPENDS = "openssl" 22DEPENDS = "openssl"
23 23
diff --git a/recipes-oneapi/onedpl/onedpl_2022.3.0.bb b/recipes-oneapi/onedpl/onedpl_2022.8.0.bb
index d80b64c9..9e2547a1 100644
--- a/recipes-oneapi/onedpl/onedpl_2022.3.0.bb
+++ b/recipes-oneapi/onedpl/onedpl_2022.8.0.bb
@@ -6,14 +6,12 @@ performance parallel applications."
6HOMEPAGE = "https://github.com/oneapi-src/oneDPL" 6HOMEPAGE = "https://github.com/oneapi-src/oneDPL"
7 7
8LICENSE = "Apache-2.0-with-LLVM-exception" 8LICENSE = "Apache-2.0-with-LLVM-exception"
9LIC_FILES_CHKSUM = "file://licensing/LICENSE.txt;md5=2e982d844baa4df1c80de75470e0c5cb \ 9LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2e982d844baa4df1c80de75470e0c5cb \
10 file://licensing/third-party-programs.txt;md5=cfb8d6b1f04a8fcc7d0dddd817619634" 10 file://third-party-programs.txt;md5=409cd5c825a23043b6bb347861d34b35"
11 11
12S = "${WORKDIR}/git" 12SRC_URI = "git://github.com/uxlfoundation/oneDPL.git;protocol=https;branch=release/2022.8.0 \
13
14SRC_URI = "git://github.com/oneapi-src/oneDPL.git;protocol=https;branch=release/2022.3 \
15 " 13 "
16SRCREV = "180f18ad25fbc39fa13bad43f1df7d54ee8f5609" 14SRCREV = "89d8d8befd4da2cb52f3724f668d17d7e39d42cf"
17 15
18do_compile[noexec] = "1" 16do_compile[noexec] = "1"
19do_configure[noexec] = "1" 17do_configure[noexec] = "1"
diff --git a/recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb b/recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb
index 702f794e..cc43c972 100644
--- a/recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb
+++ b/recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb
@@ -7,9 +7,11 @@ LIC_FILES_CHKSUM = "file://${CUSTOM_LICENSES_PATH}/EULA;md5=7bfc91523de2e84e7131
7 7
8SRC_URI = "file://intel-oneapi-runtime.conf" 8SRC_URI = "file://intel-oneapi-runtime.conf"
9 9
10S = "${UNPACKDIR}"
11
10do_install() { 12do_install() {
11 mkdir -p ${D}${sysconfdir}/ld.so.conf.d/ 13 mkdir -p ${D}${sysconfdir}/ld.so.conf.d/
12 install -m 644 ${WORKDIR}/intel-oneapi-runtime.conf ${D}${sysconfdir}/ld.so.conf.d/ 14 install -m 644 ${S}/intel-oneapi-runtime.conf ${D}${sysconfdir}/ld.so.conf.d/
13} 15}
14 16
15pkg_postinst_ontarget:${PN}() { 17pkg_postinst_ontarget:${PN}() {
diff --git a/recipes-rt/images/core-image-rt-sdk.bb b/recipes-rt/images/core-image-rt-sdk.bb
index 920c4cee..1270283e 100644
--- a/recipes-rt/images/core-image-rt-sdk.bb
+++ b/recipes-rt/images/core-image-rt-sdk.bb
@@ -13,7 +13,7 @@ tools for real-time use. It includes the full meta-toolchain, development \
13headers and libraries to form a standalone SDK." 13headers and libraries to form a standalone SDK."
14DEPENDS += "linux-intel-rt" 14DEPENDS += "linux-intel-rt"
15 15
16IMAGE_FEATURES += "dev-pkgs tools-sdk tools-debug eclipse-debug tools-profile tools-testapps debug-tweaks" 16IMAGE_FEATURES += "dev-pkgs tools-sdk tools-debug eclipse-debug tools-profile tools-testapps"
17 17
18IMAGE_INSTALL += "rt-tests hwlatdetect kernel-dev" 18IMAGE_INSTALL += "rt-tests hwlatdetect kernel-dev"
19 19
diff --git a/recipes-selftest/images/files/incorrect.crt b/recipes-selftest/images/files/incorrect.crt
deleted file mode 100644
index 3a2411ab..00000000
--- a/recipes-selftest/images/files/incorrect.crt
+++ /dev/null
@@ -1,19 +0,0 @@
1-----BEGIN CERTIFICATE-----
2MIIDCTCCAfGgAwIBAgIJAIYXAHv3cQNjMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV
3BAMMEFRlc3QgWW9jdG8gdGhpbmcwHhcNMTcwMTI1MjI1MjI3WhcNMTgwMTI1MjI1
4MjI3WjAbMRkwFwYDVQQDDBBUZXN0IFlvY3RvIHRoaW5nMIIBIjANBgkqhkiG9w0B
5AQEFAAOCAQ8AMIIBCgKCAQEAukI2ioMeL8qaXxMtryonAT51w+Zre0wB8bDBPuXD
6SwDVXNWfiKKTfCVEkLEUnsUEd7jiKswCT5orTwCD7aQK0mTrkAWEi8hEI3MkNoeh
7T51gkuTfv7A/HgPkhhlU4UQqipI6XoLf7o7PUV33ZfB43//iKY2kLBdsFvs4ALWE
831hLOkCFb+nqMnfZxq7DgvBwIdxJdLQvaskpDMfkna+zE3QWqkH5v55atW8Bunwk
9/6q5kqNhyrjZb4i0BqJ5AHFUEQzlDcjpyFVUtR14r0IxjBFMHZXrx4uLe7KvGf/4
10GqpqeFOPqxMsfC5ILJJ7nvwFViqftGgtWg/12bKMTB5saQIDAQABo1AwTjAdBgNV
11HQ4EFgQURA8KbgpiGfS2+7MT0H5AvpxeYLowHwYDVR0jBBgwFoAURA8KbgpiGfS2
12+7MT0H5AvpxeYLowDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAK9n+
139T+hlM2kEpsUgtyihEJbGHzbw+Pj11b0ICntCVuPKewtBMveYp8lejrQwMFNGRMt
14ZQe1LFb9HcLeM3MLUz9Lm4BJIjkey3Jfq1AskROYk/bJnFIJIx6P3U9gBa20P46X
15LH3g6yub1HR7KZC9nfBsak3FPoJR/SYTJs0HsMeL4878+2IbETA4BL0kbKW48FFW
16jF4f6don0eiaF8b4KkfbWKrCaEm+LMxbyBEQ6fIb1cmGY8A9A5houjmgi6YWSkoi
17SLpOC9TZ2R51fO9rRsv7XwLK0V9o9YaEYPBg6V/TeJl5nxAZBeVTKVTQbBGZY+l2
18nzN0pKsl7RXLf3SRYA==
19-----END CERTIFICATE-----
diff --git a/recipes-selftest/images/files/incorrect.key b/recipes-selftest/images/files/incorrect.key
deleted file mode 100644
index d05475b6..00000000
--- a/recipes-selftest/images/files/incorrect.key
+++ /dev/null
@@ -1,27 +0,0 @@
1-----BEGIN RSA PRIVATE KEY-----
2MIIEowIBAAKCAQEAukI2ioMeL8qaXxMtryonAT51w+Zre0wB8bDBPuXDSwDVXNWf
3iKKTfCVEkLEUnsUEd7jiKswCT5orTwCD7aQK0mTrkAWEi8hEI3MkNoehT51gkuTf
4v7A/HgPkhhlU4UQqipI6XoLf7o7PUV33ZfB43//iKY2kLBdsFvs4ALWE31hLOkCF
5b+nqMnfZxq7DgvBwIdxJdLQvaskpDMfkna+zE3QWqkH5v55atW8Bunwk/6q5kqNh
6yrjZb4i0BqJ5AHFUEQzlDcjpyFVUtR14r0IxjBFMHZXrx4uLe7KvGf/4GqpqeFOP
7qxMsfC5ILJJ7nvwFViqftGgtWg/12bKMTB5saQIDAQABAoIBAQCEtAox86s9N6d2
8164z3998Zmj3UyL+7K9x6JI2YvMabBSYGOeaLOLRj6fjQxdC63H8brBM958p4di7
9Z82XMco4Dok6yoOeJ+hMLYv+gfGvTJxy7DhyVXsSwok99axg9vUsV3TYw3wSdpNF
10EKLkcUldpu0W2ADBHUr4sLI85xctHH3Kt0sNDzhgADFa5rDYACXTKHtFOhEqBIwN
11FmbuRQirnErUkI3Pczgl2Xy1MlaozH9CB+bLAb5q2FYu4DKgjl4UorC+w2HV41KH
12XoL7L36XXqLRHBfEAwOWb8yro+TK8T7gW7aagTI1wgsbbQkjQmOHxclmJACdMOiJ
13DjPeR0GBAoGBAO7i2eaEoKa9QlKokN+93uOJD/F6DBi6jF0vGOqWlF8AVTj3kGL3
14X8fY/avrSlg7hKZWdei+Q5PyZViKxqmHjq781ZisKck52Tqz4s7ylqRXSgStinZr
15UqrkShCqZ3g1W91gIeVPQz0/b+gBskoHzQ5WQHfV5v9S1PaxjzcYtCrRAoGBAMea
16LcA2jjuEjqxa5v5fh8ygcHasJMRKJxW1OCKiQ94DjjzPsdVqZ1sJZChLW/N3nxe7
17wHlNJmsGbJ2w1zD5+qkkPjLq5Q4B5KAd62NNrWaEHFdEc/PPkn4xP7Zkfuu5K+m2
187z/MF4ibvVh9PvD3HY8FWKEtkqB4rfD8AoUOVd4ZAoGAXxXAsfa8k2Hl0kzyTXyg
19CWV3CSERS46FbFngyw9gw2e4hFJWEG5ym3ONlS60iuY16JelmxyQfYUQPewPI0+n
20xZMx2fE9OLFj+++6KbF5sLRl6/K/mF8jqo3vxS5uvPRQOo+XLlUcaHalrm1ub/Um
2187v1MT3dEmgACKmoXb/hhuECgYAZluiapePiOYJZEmZe4jx0vXTtofAswhz0qYEC
223663vdj0buQrqjKJ91BB4jdtpT5eOpHYe02blv1B0jQkcUfze1QGDxtCineXF37g
23Aktiwzkm7v22mjv7tbCnX4buDZVVp0BQ+4dg2iaSO6xgFC5T8amFMGSF8jLKnGRu
24ToIvsQKBgADBTse2vnI85NRsYq48ztQuIU2zlGXIAcoPSvGb8Vhty/joc0jWcI5P
25raGXBARbuVlcEapK3mDRfO0CQjDaTPK4EYYJwGp8k33Hkkcbgs4kfm308jRsclMr
26YeMwQsYyOv45x4iPCwrqZEhpPDvACBi7DB6QvZ0++vJbobTt1jyi
27-----END RSA PRIVATE KEY-----
diff --git a/recipes-selftest/images/files/refkit-db.crt b/recipes-selftest/images/files/refkit-db.crt
deleted file mode 100644
index 22ad6a89..00000000
--- a/recipes-selftest/images/files/refkit-db.crt
+++ /dev/null
@@ -1,18 +0,0 @@
1-----BEGIN CERTIFICATE-----
2MIIC+zCCAeOgAwIBAgIJANT2SMJoGZGsMA0GCSqGSIb3DQEBCwUAMBQxEjAQBgNV
3BAMMCXJlZmtpdC1kYjAeFw0xNzA0MjAxMjA2MzJaFw0xODA0MjAxMjA2MzJaMBQx
4EjAQBgNVBAMMCXJlZmtpdC1kYjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
5ggEBALQcIqYiAVfN8U+vcuPZAYBQVe8CXuuZNct/Knn/tT7sXZIGMCDnla2khC4/
6+tdG3Umo6ON5SfaPCx3+Y6jRY6PWDU5sZlzWZibRJpjUT3bJZUhYEwgxvOVHJWWV
7OYlfAvHFBhdYygn99h7Fl9qjThpIvs+WJwRLt21ntlAYBHNR0mot3zur8i2V16i4
8qDChq4uSK2A+OuWGQHHBPy0ukOfW7MzCC3mDcW32o6lMzUaB3O/sUb6BKvF4c0Hb
9VM58zqLjkE9FGvk9iPwO7dNpIkz6CmnRSMCqqTqzjxA6dqgMej3Yec4clmL0Bu5H
106OBpka7qNM/aqLQ5XvN60IhIR2kCAwEAAaNQME4wHQYDVR0OBBYEFGhgESWFFHgb
11Gp9GEuYh5O/7O6rdMB8GA1UdIwQYMBaAFGhgESWFFHgbGp9GEuYh5O/7O6rdMAwG
12A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAI/ShHxDR8pr/YeD0O910yBS
13cxiqMnH7pfTJEaNoTbed5tlGJNzHwjv5sJj87jRuEJs9RG4zCRG4KdYtBs9nj5aF
14nWNyv2RfDePJYxlx1H1MnHdG2iCXbbzdwh/zQDge58xVBXK6JE+zipMMMGDan281
159vuwH7MA3cSmvOI3waPv2aGG+eukpUU4/06HSkHPbml+l74tIryNoBohj0tykAFc
16uqWcLdclJPz/XFgURjAJfFVkgwu5388l7uz3y9vRW5OTyIoQRriwNRxsDY8Dao8b
17NmjzU4k2WyGA3uOSUpSXnUmJfT7eKVG6Efe6Afer6sGnLqNNZf1AcfHiP2woy9M=
18-----END CERTIFICATE-----
diff --git a/recipes-selftest/images/files/refkit-db.key b/recipes-selftest/images/files/refkit-db.key
deleted file mode 100644
index 4b54587e..00000000
--- a/recipes-selftest/images/files/refkit-db.key
+++ /dev/null
@@ -1,28 +0,0 @@
1-----BEGIN PRIVATE KEY-----
2MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC0HCKmIgFXzfFP
3r3Lj2QGAUFXvAl7rmTXLfyp5/7U+7F2SBjAg55WtpIQuP/rXRt1JqOjjeUn2jwsd
4/mOo0WOj1g1ObGZc1mYm0SaY1E92yWVIWBMIMbzlRyVllTmJXwLxxQYXWMoJ/fYe
5xZfao04aSL7PlicES7dtZ7ZQGARzUdJqLd87q/ItldeouKgwoauLkitgPjrlhkBx
6wT8tLpDn1uzMwgt5g3Ft9qOpTM1Ggdzv7FG+gSrxeHNB21TOfM6i45BPRRr5PYj8
7Du3TaSJM+gpp0UjAqqk6s48QOnaoDHo92HnOHJZi9AbuR+jgaZGu6jTP2qi0OV7z
8etCISEdpAgMBAAECggEAbtXplKbUgL4hQ9JKN2Cxhc7qMv0YgI92BVaqQw1S8ffu
91Q+tynH5MDRPi06gBJ59SvkA6AsZsvrv8nM7zQWd9ZKh+aLHk1X04upOgDoW9JiX
10FV/txlslTUrs/ohIMfsgCrweNXvUSTXZobIi8s8QHyipE4HpXMFjjZYHIV7GTlgA
11PRgGu3NygbWfR8hcx5JtzVz/jka7FFFSbk/pMr0TeJHXP55VfqWLeeSBQmWwooj2
12QcRfqMXgLKgu6uEggaP5HMcfTuWgWNhbke/596CgsUtQ5Gg64Q6v7cKcPy0/lgn1
13PnvfT9uhgEFDLNFkSBxV3ImrNYo73Nqmbp3w5tK9SQKBgQDs/HW7pNnB0LD51qok
14pkX0SBvyKxDT1QuU4z0FY9GT7OKOg8Xa0ZGyErt+ZbyFiyUGF5Axc3rJ3DyGslgu
155O+AqcpCQOlOyovGQ6ST9x/gEeVcRnZn1MV4vMxwaOSXtY7u0IGyaDlFn1QWHWCN
16imv8OR6YuhivwBIXGzJ16oEqDwKBgQDCj3ls7tlPrLvUQIh8gfjCoInU8fRAqtAe
17Ab/OximLsKQPKLDma6xd+X2Fk8Dowdb88GNT99x3VZjHqVJM9URDkiOGKAXA/rBp
18jAXhnQwahT8YCzOUHqDYNMMQrXHvbiHqLodGrrO2WjYNmH69prQAk8WYAIwl+hdx
19BS70LGLPBwKBgQDU9RinAkBcFjiyieBjBreeCJ50Q5bfhHbf2EOhcE2IbDo6bteB
20Bwmxx3uM3cdHCf6/NrVweqFAfBQ3xlPP8BH4wJrsZoBBOWnZRDfEbzHJnMtK3FbS
21fzTkhmQAL4Ibgh9rIxspQtcUZVSees+k4VqgUIPaIoDEjgizktEJfS2MqQKBgQDA
22rOFtVaRz2PYyHq6LzxMRe3bEIdDn8cEk1kqjdW9TXV07feqiZmNOtXLvRAG4/63u
231Akp8L6ul2Az6qUMfaBa4nC3vQ7lr9P40qhIZATGhsqS/xTXTPWw55999qZsnL6N
24cgKZpw1mOzRohmqNWnfMUotOGsywF1n7nUyAlyxLJQKBgElTaNTFYF3MbGfhl1He
25fnDXlf8OCOK1i5oIzMLqverb2UN/qp6p0b3SAtcw5cUXcaPlajHrfYgacF/0Qyua
26Cerey9GLEdJ7saDWhz0GyJ8yyEXy8CVs0svVaLPWI0s2B7/obzP9+gTb/WE9qZqu
27bNoVEpJ/wZhk+IL4+KPmqphu
28-----END PRIVATE KEY-----
diff --git a/recipes-selftest/images/secureboot-selftest-image-signed.bb b/recipes-selftest/images/secureboot-selftest-image-signed.bb
deleted file mode 100644
index 3ce11f32..00000000
--- a/recipes-selftest/images/secureboot-selftest-image-signed.bb
+++ /dev/null
@@ -1,6 +0,0 @@
1require secureboot-selftest-image-unsigned.bb
2
3IMAGE_FEATURES += "secureboot"
4
5SECURE_BOOT_SIGNING_KEY ?= "${THISDIR}/files/refkit-db.key"
6SECURE_BOOT_SIGNING_CERT ?= "${THISDIR}/files/refkit-db.crt"
diff --git a/recipes-selftest/images/secureboot-selftest-image-unsigned.bb b/recipes-selftest/images/secureboot-selftest-image-unsigned.bb
deleted file mode 100644
index d0fa6405..00000000
--- a/recipes-selftest/images/secureboot-selftest-image-unsigned.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1require recipes-core/images/core-image-minimal.bb
2
3DEPENDS:remove = "grub-efi"
4
5inherit uefi-comboapp
6
7WKS_FILE = "generic-bootdisk.wks.in"
8
9do_uefiapp_deploy:append() {
10 for i in ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.boot*.efi; do
11 target=`basename $i`
12 target=`echo $target | sed -e 's/${IMAGE_LINK_NAME}.//'`
13
14 cat > ${IMAGE_ROOTFS}/boot/startup.nsh << EOF
15$target
16reset
17EOF
18 break
19 done
20}
diff --git a/recipes-support/isa-l/isa-l_2.31.0.bb b/recipes-support/isa-l/isa-l_2.31.1.bb
index d5d09002..93178942 100644
--- a/recipes-support/isa-l/isa-l_2.31.0.bb
+++ b/recipes-support/isa-l/isa-l_2.31.1.bb
@@ -7,8 +7,7 @@ SECTION = "lib"
7 7
8inherit autotools pkgconfig 8inherit autotools pkgconfig
9 9
10S = "${WORKDIR}/git" 10SRCREV = "c387163fcbca62701d646149564c550c78a4f985"
11SRCREV = "bd226375027899087bd48f3e59b910430615cc0a"
12SRC_URI = "git://github.com/intel/isa-l.git;branch=master;protocol=https" 11SRC_URI = "git://github.com/intel/isa-l.git;branch=master;protocol=https"
13 12
14DEPENDS = "nasm-native" 13DEPENDS = "nasm-native"
diff --git a/recipes-support/libipt/libipt_2.1.1.bb b/recipes-support/libipt/libipt_2.1.2.bb
index 205967c1..bbaac6f5 100644
--- a/recipes-support/libipt/libipt_2.1.1.bb
+++ b/recipes-support/libipt/libipt_2.1.2.bb
@@ -5,21 +5,20 @@ library or it can be partially or fully integrated into your tool."
5HOMEPAGE = "https://github.com/intel/libipt" 5HOMEPAGE = "https://github.com/intel/libipt"
6 6
7LICENSE = "BSD-3-Clause" 7LICENSE = "BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=a429afa59f273b5d12778eda69d10313" 8LIC_FILES_CHKSUM = "file://LICENSE;md5=491799fd9431e57ad52cb0ef3497afce"
9 9
10inherit pkgconfig cmake 10inherit pkgconfig cmake
11 11
12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/intel/libipt.git;protocol=https;branch=stable/v2.1" 12SRC_URI = "git://github.com/intel/libipt.git;protocol=https;branch=stable/v2.1"
15 13
16SRCREV = "1c9bc700f4b9a71fd2d1cf1742de7e2351ddb281" 14SRCREV = "ffc548e5fbc2fa3e9795d4593f861e1df99cf906"
17 15
18EXTRA_OECMAKE += " \ 16EXTRA_OECMAKE += " \
19 -DPTDUMP=ON \ 17 -DPTDUMP=ON \
20 -DPTTC=ON \ 18 -DPTTC=ON \
21 -DPTSEG=ON \ 19 -DPTSEG=ON \
22 -DCMAKE_SKIP_RPATH=ON \ 20 -DCMAKE_SKIP_RPATH=ON \
21 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
23 " 22 "
24 23
25do_install:append() { 24do_install:append() {
@@ -27,7 +26,7 @@ do_install:append() {
27 install -d ${D}${bindir}/libipt/tests 26 install -d ${D}${bindir}/libipt/tests
28 27
29 cp -r ${B}/bin/* ${D}${bindir}/libipt/ 28 cp -r ${B}/bin/* ${D}${bindir}/libipt/
30 cp -r ${WORKDIR}/git/test/src/* ${D}${bindir}/libipt/tests 29 cp -r ${S}/test/src/* ${D}${bindir}/libipt/tests
31} 30}
32 31
33FILES:${PN}-test = "${bindir}" 32FILES:${PN}-test = "${bindir}"
diff --git a/recipes-support/sbsigntool/sbsigntool-native_git.bb b/recipes-support/sbsigntool/sbsigntool-native_git.bb
deleted file mode 100644
index 5a9f5b4d..00000000
--- a/recipes-support/sbsigntool/sbsigntool-native_git.bb
+++ /dev/null
@@ -1,83 +0,0 @@
1DESCRIPTION = "Utility for signing and verifying files for UEFI Secure Boot"
2LICENSE = "GPL-3.0-only & LGPL-2.1-only & LGPL-3.0-only & MIT"
3
4# sbsigntool statically links to libccan.a which is built with modules
5# passed to "create-ccan-tree" (and their dependencies). Therefore,
6# we also keep track of all the ccan module licenses.
7LIC_FILES_CHKSUM = "file://LICENSE.GPLv3;md5=9eef91148a9b14ec7f9df333daebc746 \
8 file://COPYING;md5=a7710ac18adec371b84a9594ed04fd20 \
9 file://lib/ccan.git/ccan/endian/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
10 file://lib/ccan.git/ccan/htable/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
11 file://lib/ccan.git/ccan/list/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
12 file://lib/ccan.git/ccan/read_write_all/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
13 file://lib/ccan.git/ccan/talloc/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
14 file://lib/ccan.git/ccan/typesafe_cb/LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
15 file://lib/ccan.git/ccan/failtest/LICENSE;md5=6a6a8e020838b23406c81b19c1d46df6 \
16 file://lib/ccan.git/ccan/tlist/LICENSE;md5=6a6a8e020838b23406c81b19c1d46df6 \
17 file://lib/ccan.git/ccan/time/LICENSE;md5=838c366f69b72c5df05c96dff79b35f2 \
18"
19
20# The original upstream is git://kernel.ubuntu.com/jk/sbsigntool but it has
21# not been maintained and many patches have been backported in this repo.
22SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/jejb/sbsigntools.git;protocol=https;name=sbsigntools;branch=master \
23 git://github.com/rustyrussell/ccan.git;protocol=https;destsuffix=git/lib/ccan.git;name=ccan;branch=master \
24 file://0001-configure-Fixup-build-dependencies-for-cross-compili.patch \
25 "
26
27SRCREV_sbsigntools ?= "9cfca9fe7aa7a8e29b92fe33ce8433e212c9a8ba"
28SRCREV_ccan ?= "b1f28e17227f2320d07fe052a8a48942fe17caa5"
29SRCREV_FORMAT = "sbsigntools_ccan"
30
31DEPENDS = "binutils-native gnu-efi-native help2man-native openssl-native util-linux-native"
32
33PV = "0.9.5"
34
35S = "${WORKDIR}/git"
36
37inherit autotools pkgconfig
38inherit native
39
40do_configure:prepend() {
41 cd ${S}
42
43 sed -i s#RECIPE_SYSROOT#${RECIPE_SYSROOT_NATIVE}#g configure.ac
44
45 if [ ! -e lib/ccan ]; then
46
47 # Use empty SCOREDIR because 'make scores' is not run.
48 # The default setting depends on (non-whitelisted) host tools.
49 sed -i -e 's#^\(SCOREDIR=\).*#\1#' lib/ccan.git/Makefile
50
51 lib/ccan.git/tools/create-ccan-tree \
52 --build-type=automake lib/ccan \
53 talloc read_write_all build_assert array_size endian
54 fi
55
56 # Create generatable docs from git
57 (
58 echo "Authors of sbsigntool:"
59 echo
60 git log --format='%an' | sort -u | sed 's,^,\t,'
61 ) > AUTHORS
62
63 # Generate simple ChangeLog
64 git log --date=short --format='%ad %t %an <%ae>%n%n * %s%n' > ChangeLog
65
66 cd ${B}
67}
68
69def efi_arch(d):
70 import re
71 harch = d.getVar("HOST_ARCH")
72 if re.match("i[3456789]86", harch):
73 return "ia32"
74 return harch
75
76EXTRA_OEMAKE = "\
77 INCLUDES+='-I${S}/lib/ccan.git/ \
78 -I${STAGING_INCDIR_NATIVE}/efi \
79 -I${STAGING_INCDIR_NATIVE} \
80 -I${STAGING_INCDIR_NATIVE}/efi/${@efi_arch(d)}' \
81 "
82
83CFLAGS:append = " -Wno-error"
diff --git a/recipes-support/sbsigntool/sbsigntool/0001-configure-Fixup-build-dependencies-for-cross-compili.patch b/recipes-support/sbsigntool/sbsigntool/0001-configure-Fixup-build-dependencies-for-cross-compili.patch
deleted file mode 100644
index ea7bee29..00000000
--- a/recipes-support/sbsigntool/sbsigntool/0001-configure-Fixup-build-dependencies-for-cross-compili.patch
+++ /dev/null
@@ -1,54 +0,0 @@
1From c3533b8da1e1425801d2fc0bcd231e13d593f16b Mon Sep 17 00:00:00 2001
2From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
3Date: Tue, 19 Feb 2019 20:07:45 +0800
4Subject: [PATCH] configure: Fixup build dependencies for cross-compiling
5
6When cross-compiling, custom header files and libraries need to be
7specified. sbsign assumes that all the dependencies are located
8under /usr/include and /usr/lib.
9
10Prepend these paths with a placeholder that can be replaced with the
11actual paths once they are resolved.
12
13Upstream-Status: Inappropriate [OE specific]
14
15Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
16
17Taken from :
18https://github.com/intel/luv-yocto/tree/master/meta-luv/recipes-devtools/sbsigntool/sbsigntool
19
20Corrected typo error and ported to version 0.9.2
21
22Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
23---
24 configure.ac | 7 +++++--
25 1 file changed, 5 insertions(+), 2 deletions(-)
26
27diff --git a/configure.ac b/configure.ac
28index 1459e91..3e34c8d 100644
29--- a/configure.ac
30+++ b/configure.ac
31@@ -70,7 +70,10 @@ AM_CONDITIONAL(TEST_BINARY_FORMAT, [ test "$EFI_ARCH" = "arm" -o "$EFI_ARCH" = "
32 ##
33 # no consistent view of where gnu-efi should dump the efi stuff, so find it
34 ##
35-for path in /lib /lib64 /usr/lib /usr/lib64 /usr/lib32 /lib/efi /lib64/efi /usr/lib/efi /usr/lib64/efi /usr/lib/gnuefi /usr/lib64/gnuefi ; do
36+for path in RECIPE_SYSROOT/lib RECIPE_SYSROOT/lib64 RECIPE_SYSROOT/usr/lib \
37+ RECIPE_SYSROOT/usr/lib64 RECIPE_SYSROOT/usr/lib32 \
38+ RECIPE_SYSROOT/lib/efi RECIPE_SYSROOT/lib64/efi \
39+ RECIPE_SYSROOT/usr/lib/efi RECIPE_SYSROOT/usr/lib64/efi; do
40 if test -e $path/crt0-efi-$EFI_ARCH.o; then
41 CRTPATH=$path
42 fi
43@@ -79,7 +82,7 @@ if test -z "$CRTPATH"; then
44 AC_MSG_ERROR([cannot find the gnu-efi crt path])
45 fi
46
47-EFI_CPPFLAGS="-I/usr/include/efi -I/usr/include/efi/$EFI_ARCH \
48+EFI_CPPFLAGS="-IRECIPE_SYSROOT/usr/include/efi -IRECIPE_SYSROOT/usr/include/efi/$EFI_ARCH \
49 -DEFI_FUNCTION_WRAPPER"
50 CPPFLAGS_save="$CPPFLAGS"
51 CPPFLAGS="$CPPFLAGS $EFI_CPPFLAGS"
52--
532.7.4
54