summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG87
-rw-r--r--MAINTAINERS38
-rw-r--r--README432
-rw-r--r--README.md36
-rw-r--r--README.sources17
-rw-r--r--SECURITY.md6
-rw-r--r--classes/uefi-comboapp.bbclass151
-rw-r--r--classes/uefi-sign.bbclass50
-rw-r--r--conf/include/maintainers.inc59
-rw-r--r--conf/layer.conf27
-rw-r--r--conf/machine/include/intel-common-pkgarch.inc26
-rw-r--r--conf/machine/include/intel-core2-32-common.inc4
-rw-r--r--conf/machine/include/intel-corei7-64-common.inc4
-rw-r--r--conf/machine/include/meta-intel.inc27
-rw-r--r--conf/machine/include/qemu-intel.inc2
-rw-r--r--conf/machine/include/qemuboot-intel.inc23
-rw-r--r--conf/machine/intel-core2-32.conf11
-rw-r--r--conf/machine/intel-corei7-64.conf17
-rw-r--r--conf/machine/intel-skylake-64.conf36
-rwxr-xr-xcustom-licenses/BSD_LMS30
-rw-r--r--custom-licenses/EULA392
-rw-r--r--custom-licenses/ISSL73
-rw-r--r--custom-licenses/Intel-Microcode-License160
-rw-r--r--custom-licenses/syrah32
-rw-r--r--documentation/building_and_booting.md134
-rw-r--r--documentation/dpcpp-compiler.md107
-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
-rwxr-xr-xdynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest15
-rw-r--r--dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb57
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch41
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch38
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb63
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch32
-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.patch30
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch23
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch33
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb79
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch49
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch60
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc34
-rw-r--r--dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb5
-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/lms_2406.0.0.0.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb (renamed from recipes-bsp/thermald/thermald_1.7.2.bb)34
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch53
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch36
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch52
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb64
-rw-r--r--dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb33
-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.17.0.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb54
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb32
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb35
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb74
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb27
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb42
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch28
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb37
-rw-r--r--dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb19
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch38
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch62
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb47
-rw-r--r--lib/oeqa/runtime/cases/cyclictest.py39
-rw-r--r--lib/oeqa/runtime/cases/intel_mediasdk.py34
-rw-r--r--lib/oeqa/runtime/cases/intel_vaapi_driver.py27
-rw-r--r--lib/oeqa/runtime/cases/isal.py24
-rw-r--r--lib/oeqa/runtime/cases/libipt.py23
-rw-r--r--lib/oeqa/runtime/cases/libxcam.py37
-rw-r--r--lib/oeqa/runtime/cases/microcode.py31
-rw-r--r--lib/oeqa/runtime/cases/mkl_dnn.py67
-rw-r--r--lib/oeqa/runtime/cases/parselogs-ignores-intel-core2-32.txt9
-rw-r--r--lib/oeqa/runtime/cases/parselogs-ignores-intel-corei7-64.txt14
-rw-r--r--lib/oeqa/runtime/cases/thermald.py47
-rw-r--r--lib/oeqa/runtime/miutils/targets/oeqatarget.py11
-rw-r--r--lib/oeqa/runtime/miutils/tests/mkl_dnn_test.py55
-rw-r--r--lib/oeqa/selftest/cases/secureboot.py176
-rw-r--r--recipes-bsp/formfactor/formfactor_0.0.bbappend2
-rw-r--r--recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf2
-rw-r--r--recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh15
-rw-r--r--recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb18
-rw-r--r--recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb29
-rw-r--r--recipes-bsp/metee/metee_3.2.4.bb18
-rw-r--r--recipes-bsp/systemd-boot/systemd-boot/0001-efi-boot.c-workaround-for-Joule-BIOS-hang.patch31
-rw-r--r--recipes-bsp/systemd-boot/systemd-boot_%.bbappend15
-rw-r--r--recipes-bsp/thermald/files/0001-Include-poll.h-instead-of-sys-poll.h.patch36
-rw-r--r--recipes-bsp/thermald/files/0002-Use-correct-format-specifier-for-X32.patch87
-rw-r--r--recipes-core/images/core-image-minimal-initramfs.bbappend2
-rw-r--r--recipes-core/images/core-image-tiny.bb4
-rw-r--r--recipes-core/libxcam/libxcam/0001-fake_v4l2_device.h-fix-narrowing-warning.patch94
-rw-r--r--recipes-core/libxcam/libxcam_1.5.0.bb39
-rw-r--r--recipes-core/meta/icx-environment.inc15
-rw-r--r--recipes-core/meta/meta-environment-extsdk.bbappend3
-rw-r--r--recipes-core/meta/meta-environment.bbappend3
-rw-r--r--recipes-core/microcode/files/Intel-Microcode-License123
-rw-r--r--recipes-core/microcode/intel-microcode_20250512.bb (renamed from recipes-core/microcode/intel-microcode_20180807.bb)35
-rw-r--r--recipes-core/microcode/iucode-tool_2.3.1.bb6
-rw-r--r--recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch105
-rw-r--r--recipes-core/ovmf/ovmf-shell-image-enrollkeys.bb13
-rw-r--r--recipes-core/ovmf/ovmf_%.bbappend6
-rw-r--r--recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend1
-rw-r--r--recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend1
-rw-r--r--recipes-devtools/slimboot/slimboot-tools_git.bb22
-rw-r--r--recipes-graphics/gmmlib/gmmlib_22.7.1.bb25
-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/intel-gpu-tools/igt-gpu-tools_1.23.bb42
-rw-r--r--recipes-graphics/libva/libva-intel-utils_2.22.0.bb35
-rw-r--r--recipes-graphics/libva/libva-intel_2.22.0.bb56
-rw-r--r--recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb18
-rw-r--r--recipes-graphics/xorg-driver/xf86-video-ast_1.1.6.bb (renamed from recipes-graphics/xorg-driver/xf86-video-ast_1.1.5.bb)4
-rw-r--r--recipes-kernel/cryptodev/cryptodev-module/0001-zc-Force-4.10-get_user_pages_remote-API.patch26
-rw-r--r--recipes-kernel/cryptodev/cryptodev-module_%.bbappend9
-rw-r--r--recipes-kernel/intel-ethernet/ixgbe/0001-ixgbe-skip-host-depmod.patch31
-rw-r--r--recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb43
-rw-r--r--recipes-kernel/intel-ethernet/ixgbe_5.3.7.bb37
-rw-r--r--recipes-kernel/intel-ethernet/ixgbevf/0001-Makefile-check-for-CONFIG_IXGBEVF-instead.patch27
-rw-r--r--recipes-kernel/intel-ethernet/ixgbevf/0001-ixgbevf-skip-host-depmod.patch31
-rw-r--r--recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb46
-rw-r--r--recipes-kernel/intel-ethernet/ixgbevf_4.3.5.bb41
-rw-r--r--recipes-kernel/iwlwifi/backport-iwlwifi/0001-hrtimer-fix-version-numbers-because-production-kerne.patch87
-rw-r--r--recipes-kernel/iwlwifi/backport-iwlwifi_git.bb30
-rw-r--r--recipes-kernel/linux/linux-intel-rt_4.14.bb24
-rw-r--r--recipes-kernel/linux/linux-intel-rt_4.9.bb20
-rw-r--r--recipes-kernel/linux/linux-intel-rt_6.12.bb35
-rw-r--r--recipes-kernel/linux/linux-intel.inc20
-rw-r--r--recipes-kernel/linux/linux-intel/0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch48
-rw-r--r--recipes-kernel/linux/linux-intel/0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch62
-rw-r--r--recipes-kernel/linux/linux-intel/0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch52
-rw-r--r--recipes-kernel/linux/linux-intel/0001-perf-x86-32-explicitly-include-errno.h.patch41
-rw-r--r--recipes-kernel/linux/linux-intel/0002-mconf-fix-output-of-cflags-and-libraries.patch40
-rw-r--r--recipes-kernel/linux/linux-intel/disable_skylake_sound.cfg12
-rw-r--r--recipes-kernel/linux/linux-intel/fix-perf-reproducibility.patch39
-rw-r--r--recipes-kernel/linux/linux-intel_4.14.bb20
-rw-r--r--recipes-kernel/linux/linux-intel_4.9.bb16
-rw-r--r--recipes-kernel/linux/linux-intel_6.12.bb25
-rw-r--r--recipes-kernel/linux/linux-yocto-dev.bbappend22
-rw-r--r--recipes-kernel/linux/linux-yocto-rt_%.bbappend (renamed from recipes-kernel/linux/linux-yocto-rt_4.14.bbappend)0
-rw-r--r--recipes-kernel/linux/linux-yocto-rt_4.18.bbappend1
-rw-r--r--recipes-kernel/linux/linux-yocto_%.bbappend4
-rw-r--r--recipes-kernel/linux/linux-yocto_4.14.bbappend1
-rw-r--r--recipes-kernel/linux/linux-yocto_4.18.bbappend1
-rw-r--r--recipes-kernel/linux/meta-intel-compat-kernel.inc11
-rw-r--r--recipes-kernel/lttng/lttng-modules/0002-lttng-modules-PKT-4.9-yocto-build-failed.patch38
-rw-r--r--recipes-kernel/lttng/lttng-modules_%.bbappend7
-rw-r--r--recipes-multimedia/itt/itt_3.26.1.bb33
-rw-r--r--recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch44
-rw-r--r--recipes-multimedia/libva/files/0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch85
-rw-r--r--recipes-multimedia/libva/intel-media-driver_25.1.4.bb52
-rw-r--r--recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb (renamed from recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb)19
-rw-r--r--recipes-multimedia/libyami/libyami-utils/0001-Fix-build-with-clang.patch96
-rw-r--r--recipes-multimedia/libyami/libyami-utils_git.bb31
-rw-r--r--recipes-multimedia/libyami/libyami/0001-bitWriter.cpp-Delete-unused-CACHEBYTES.patch27
-rw-r--r--recipes-multimedia/libyami/libyami/0002-typecast-index-from-size_t-to-int.patch42
-rw-r--r--recipes-multimedia/libyami/libyami/0003-Add-Wno-invalid-offsetof-to-compiler-commandline.patch29
-rw-r--r--recipes-multimedia/libyami/libyami/0004-Typecast-POWER32SUB2-to-uint8_t.patch33
-rw-r--r--recipes-multimedia/libyami/libyami/0005-move-c-definitions-out-of-extern-C-block.patch130
-rw-r--r--recipes-multimedia/libyami/libyami/0006-Avoid-namespace-conflicts-by-adding-explicit-using-n.patch41
-rw-r--r--recipes-multimedia/libyami/libyami/0007-Delete-unused-variables.patch36
-rw-r--r--recipes-multimedia/libyami/libyami/0008-NalUnit-is-declared-in-different-namespace.patch31
-rw-r--r--recipes-multimedia/libyami/libyami/0009-Fix-clang-warnings.patch37
-rw-r--r--recipes-multimedia/libyami/libyami_git.bb34
-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.patch25
-rw-r--r--recipes-multimedia/vpl/libvpl-tools_1.3.0.bb44
-rw-r--r--recipes-multimedia/vpl/libvpl_2.14.0.bb44
-rw-r--r--recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb33
-rw-r--r--recipes-oneapi/crypto/intel-crypto-mb/0001-CMakeLists.txt-exclude-host-system-headers.patch27
-rw-r--r--recipes-oneapi/crypto/intel-crypto-mb/0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch42
-rw-r--r--recipes-oneapi/crypto/intel-crypto-mb/0002-cmake-exclude-Yocto-build-flags.patch45
-rw-r--r--recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb28
-rw-r--r--recipes-oneapi/onedpl/onedpl_2022.8.0.bb26
-rw-r--r--recipes-oneapi/setup-oneapi-env/files/intel-oneapi-runtime.conf4
-rw-r--r--recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb23
-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.bb19
-rw-r--r--recipes-support/libipt/libipt_2.1.2.bb34
-rw-r--r--recipes-support/sbsigntool/sbsigntool-native_git.bb77
-rw-r--r--wic/grub-bootdisk-microcode.wks.in (renamed from wic/grub-bootdisk-microcode.wks)2
-rw-r--r--wic/image-installer.wks.in8
-rw-r--r--wic/systemd-bootdisk-microcode.wks.in (renamed from wic/systemd-bootdisk-microcode.wks)2
197 files changed, 4865 insertions, 3098 deletions
diff --git a/CHANGELOG b/CHANGELOG
deleted file mode 100644
index a99cbb1f..00000000
--- a/CHANGELOG
+++ /dev/null
@@ -1,87 +0,0 @@
1This file will only list major changes that occur within a release.
2For a full list of changes, view the git log of the repository.
3
4Rocko Release 11/2017
5=====================
6
7Moved qat support to separate layer
8-----------------------------------
9Quick Assist Technology (QAT) is more middleware and should not be part of the
10core BSP. The new layer can be found here:
11https://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-qat/
12
13Moved dpdk support to separate layer
14------------------------------------
15We had some requests to make DPDK standalone so that it could be included
16without bringing in anything else from meta-intel, as it is not specific to
17Intel(R) hardware. The new layer is located here:
18https://git.yoctoproject.org/cgit/cgit.cgi/meta-dpdk/
19
20Added support for out-of-tree iwlwifi drivers
21---------------------------------------------
22Backport-iwlwifi out-of-tree wifi modules are now available via meta-intel.
23Backport-iwlwifi brings the latest iwlwifi drivers to almost any kernel
24Note that mac80211 and cfg80211 backports are also necessary, which will most
25likely cause incompatibility with other in-tree wifi drivers.
26See https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi for more info.
27
28Added support for out-of-tree ixgbe drivers
29-------------------------------------------
30The out-of-tree ixgbe drivers bring ixgbe support to nearly any kernel. See
31here: http://www.intel.com/network/connectivity/products/server_adapters.htm
32
33Added an implementation of Secure Boot
34--------------------------------------
35meta-intel now supports a simple Secure Boot implementation. This implementation
36consists of a single binary consisting of an EFI stub, the kernel, an
37initrd, and a kernel command line. The binary is then signed via keys defined by
38the variables SECUREBOOT_SIGNING_KEY and SECUREBOOT_SIGNING_CERT. These keys
39should match the keys embedded in your hardware's firmware.
40See documentation/secureboot/README for more information on this feature.
41
42Improved Yocto Project Compatibility status
43-------------------------------------------
44The common layer should now be considered Yocto Project compatible - it should
45no longer modify OE-core values when adding the layer to your bblayers.conf.
46The meta-tlk layer is still not Yocto Project compatible, however.
47
48Pyro Release 5/2017
49===================
50
51Changed default kernel provider from linux-yocto to linux-intel.
52----------------------------------------------------------------
53Linux-intel is an Intel(R)-maintained kernel based on the latest stable
54branch, along with backports from upstream to better support Intel(R)
55hardware. The intel-linux kernel also has a branch with the preempt-rt
56patches applied, providing a preempt-rt kernel with no additional work.
57
58Added QEMU support.
59-------------------
60We now build several virtio drivers into the kernel by default, and
61have qemuboot.conf files for intel-corei7-64 and intel-core2-32
62targets. This allows one to do basic testing on meta-intel images
63without having to use hardware. The virtio drivers are added via
64KERNEL_FEATURES_INTEL_COMMON. This prevents them from being added to
65custom kernels by default. They can be removed by adding the
66following to a conf or kernel bbappend file:
67 KERNEL_FEATURES_INTEL_COMMON_remove = “cfg/virtio.sccâ€
68OVMF firmware is also built and can be used in order to emulate a UEFI
69environment. A full runqemu command line for intel-corei7-64 could look
70like this:
71 runqemu core-image-minimal intel-corei7-64 wic ovmf
72
73Musl support
74------------
75Meta-intel is now compatible with the musl C library. You can specify musl
76As your C library by adding the following to your local.conf:
77 TCLIBC = “muslâ€
78Note: there is a known failure with DPDK.
79
80X32 support
81-----------
82The meta-intel layer can now build with the x32 tune settings in a multi-lib
83setting, it will not work in as the primary MACHINE tune as the bootloader needs
84to be built as a 64bit binary. The setup for this would be as follows:
85 require conf/multilib.conf
86 MULTILIBS = "multilib:libx32
87 DEFAULTTUNE_virtclass-multilib-libx32 = "corei7-64-x32"
diff --git a/MAINTAINERS b/MAINTAINERS
deleted file mode 100644
index 880481e8..00000000
--- a/MAINTAINERS
+++ /dev/null
@@ -1,38 +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: California Sullivan <california.l.sullivan@intel.com>
32F: *
33
34M: Juro Bystricky <juro.bystricky@intel.com>
35F: *
36
37M: Anuj Mittal <anuj.mittal@intel.com>
38F: *
diff --git a/README b/README
deleted file mode 100644
index 2835b365..00000000
--- a/README
+++ /dev/null
@@ -1,432 +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 branch: 1.38
25
26 URI: git://git.openembedded.org/openembedded-core
27 layers: meta
28 branch: sumo
29
30
31Table of Contents
32=================
33
34 I. Overview
35 II. Building and booting meta-intel BSP layers
36 a. Building the intel-common BSP layers
37 b. Booting the intel-common BSP images
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
201III. Technical Miscellany
202=========================
203
204Benefits of using meta-intel
205----------------------------
206
207Using meta-intel has the following benefits over a generic BSP:
208
209tune flags
210++++++++++
211intel-* MACHINEs each have different compilation flags appropriate for their
212targeted hardware sets. intel-corei7-64 has tune flags appropriate for modern
21364-bit Intel Core i microarchitecture, and includes instruction sets up to
214SSE4.2. intel-core2-32 has tune flags appropriate for legacy 32-bit Intel Core2
215microarchitecture, and includes instruction sets up to SSE3.
216
217linux-intel kernel
218++++++++++++++++++
219The linux-intel kernel is an initiative to bring better Intel(R) hardware
220support to the current LTS linux kernel. It contains a base LTS kernel with
221additional backports from upstream Intel drivers. In addition, a default kernel
222config containing most features found on Intel boards is supplied via the
223yocto-kernel-cache.
224
225graphics stack
226++++++++++++++
227Meta-intel provides the latest Intel Graphics Linux Stack drivers to support
228Intel hardware as defined by the https://01.org/linuxgraphics.
229
230Other software
231++++++++++++++
232 * intel ucode - provides the latest microcode updates for Intel processors
233
234 * thermald - which proactively controls thermal, using P-states, T-states, and
235the Intel power clamp driver.
236(https://01.org/linux-thermal-daemon/documentation/introduction-thermal-daemon)
237
238The intel-common kernel package architecture
239--------------------------------------------
240
241These BSPs use what we call the intel-common Linux kernel package
242architecture. This includes core2-32-intel-common and
243corei7-64-intel-common. These kernel packages can also be used by any
244of the BSPs in meta-intel that choose to include the
245intel-common-pkgarch.inc file.
246
247To minimize the proliferation of vendor trees, reduce the sources we
248must support, and consolidate QA efforts, all BSP maintainers are
249encouraged to make use of the intel-common Linux kernel package
250architecture.
251
252Intel-specific machine features
253-------------------------------
254
255The meta-intel layer makes some additional machine features available
256to BSPs. These machine features can be used in a BSP layer in the
257same way that machine features are used in other layers based on
258oe-core, via the MACHINE_FEATURES variable.
259
260Requirements
261++++++++++++
262
263The meta-intel-specific machine features are only available to a BSP
264when the meta-intel layer is included in the build configuration, and
265the meta-intel.inc file is included in the machine configuration of
266that BSP.
267
268To make these features available for your machine, you will need to:
269
270 1. include a configuration line such as the below in bblayers.conf
271 BBLAYERS += "<local path>/meta-intel"
272 2. include the following line in the machine configuration file
273 require conf/machine/include/meta-intel.inc
274
275Once the above requirements are met, the machine features provided by
276the meta-intel layer will be available for the BSP to use.
277
278Available machine features
279++++++++++++++++++++++++++
280
281Currently, the meta-intel layer makes the following set of
282Intel-specific machine features available:
283
284 * intel-ucode
285
286These machine features can be included by listing them in the
287MACHINE_FEATURES variable in the machine configuration file. For
288example:
289
290 MACHINE_FEATURES += "intel-ucode"
291
292Machine feature details
293+++++++++++++++++++++++
294
295 * intel-ucode
296
297 This feature provides support for microcode updates to Intel
298 processors. The intel-ucode feature runs at early boot and uses
299 the microcode data file added by the feature into the BSP's
300 initrd. It also puts the userland microcode-updating tool,
301 iucode_tool, into the target images along with the microcode data
302 file.
303
304 Q. Why might a user want to enable the intel-ucode feature?
305
306 A. Intel releases microcode updates to correct processor behavior
307 as documented in the respective processor specification
308 updates. While the normal approach to getting such microcode
309 updates is via a BIOS upgrade, this can be an administrative
310 hassle and not always possible in the field. The intel-ucode
311 feature enables the microcode update capability present in the
312 Linux kernel. It provides an easy path for upgrading processor
313 microcode without the need to change the BIOS. If the feature
314 is enabled, it is also possible to update the existing target
315 images with a newer microcode update in the future.
316
317 Q. How would a user bundle only target-specific microcode in the
318 target image?
319
320 A. The Intel microcode data file released by Intel contains
321 microcode updates for multiple processors. If the BSP image is
322 meant to run on only a certain subset of processor types, a
323 processor-specific subset of microcode can be bundled into the
324 target image via the UCODE_FILTER_PARAMETERS variable. This
325 works by listing a sequence of iucode-tool parameters in the
326 UCODE_FILTER_PARAMETERS variable, which in this case will
327 select only the specific microcode relevant to the BSP. For
328 more information on the underlying parameters refer to the
329 iucode-tool manual page at http://manned.org/iucode-tool
330
331 To define a set of parameters for microcode-filtering via the
332 UCODE_FILTER_PARAMETERS variable, one needs to identify the
333 cpuid signatures of all the processors the BSP is meant to run
334 on. One way to determine the cpuid signature for a specific
335 processor is to build and run an intel-ucode-feature-enabled
336 image on the target hardware, without first assigning any value
337 to the UCODE_FILTER_PARAMETERS variable, and then once the
338 image is booted, run the "ucode_tool -S" command to have the
339 ucode tool scan the system for processor signatures. These
340 signatures can then be used in the UCODE_FILTER_PARAMETERS
341 variable in conjunction with -s parameter. For example, for
342 the fri2 BSP, the cpuid can be determined as such:
343
344 [root@fri2 ~]# iucode_tool -S
345 iucode_tool: system has processor(s) with signature 0x00020661
346
347 Given that output, a suitable UCODE_FILTER_PARAMETERS variable
348 definition could be specified in the machine configuration as
349 such:
350
351 UCODE_FILTER_PARAMETERS = "-s 0x00020661"
352
353 Q. Are there any reasons a user might want to disable the
354 intel-ucode feature?
355
356 A. The microcode data file and associated tools occupy a small
357 amount of space (a few KB) on the target image. BSPs which are
358 highly sensitive to target image size and which are not
359 experiencing microcode-related issues might consider not
360 enabling this feature.
361
362
363IV. Tested Hardware
364===================
365
366The following undergo regular basic testing with their respective MACHINE types.
367Note that both 64-bit and 32-bit firmware is available for the MinnowBoard
368Turbot, so it is tested against both intel-corei7-64 and intel-core2-32.
369
370intel-corei7-64:
371 NUC6i5SYH
372 MinnowBoard Turbot
373
374intel-core2-32:
375 MinnowBoard Turbot
376
377
378V. Guidelines for submitting patches
379====================================
380
381Please submit any patches against meta-intel BSPs to the meta-intel
382mailing list (meta-intel@yoctoproject.org). Also, if your patches are
383available via a public git repository, please also include a URL to
384the repo and branch containing your patches as that makes it easier
385for maintainers to grab and test your patches.
386
387There are patch submission scripts available that will, among other
388things, automatically include the repo URL and branch as mentioned.
389Please see the Yocto Project Development Manual sections entitled
390'Using Scripts to Push a Change Upstream and Request a Pull' and
391'Using Email to Submit a Patch' for details.
392
393Regardless of how you submit a patch or patchset, the patches should
394at minimum follow the suggestions outlined in the 'Submitting a Change
395to the Yocto Project' section in the Yocto Project Development Manual.
396Specifically, they should:
397
398 - Include a 'Signed-off-by:' line. A commit can't legally be pulled
399 in without this.
400
401 - Provide a single-line, short summary of the change. This short
402 description should be prefixed by the BSP or recipe name, as
403 appropriate, followed by a colon. Capitalize the first character
404 of the summary (following the colon).
405
406 - For the body of the commit message, provide detailed information
407 that describes what you changed, why you made the change, and the
408 approach you used.
409
410 - If the change addresses a specific bug or issue that is associated
411 with a bug-tracking ID, include a reference to that ID in your
412 detailed description in the following format: [YOCTO #<bug-id>].
413
414 - Pay attention to line length - please don't allow any particular
415 line in the commit message to stretch past 72 characters.
416
417 - For any non-trivial patch, provide information about how you
418 tested the patch, and for any non-trivial or non-obvious testing
419 setup, provide details of that setup.
420
421Doing a quick 'git log' in meta-intel will provide you with many
422examples of good example commits if you have questions about any
423aspect of the preferred format.
424
425The meta-intel maintainers will do their best to review and/or pull in
426a patch or patchset within 24 hours of the time it was posted. For
427larger and/or more involved patches and patchsets, the review process
428may take longer.
429
430Please see the meta-intel/MAINTAINERS file for the list of maintainers
431and their specific areas; it's also a good idea to cc: the specific
432maintainer, if applicable.
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..91577f1d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,36 @@
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- Anuj Mittal <anuj.mittal@intel.com>
36
diff --git a/README.sources b/README.sources
deleted file mode 100644
index ab71eb2b..00000000
--- a/README.sources
+++ /dev/null
@@ -1,17 +0,0 @@
1The sources for the packages comprising the images shipped with this
2BSP can be found at the following location:
3
4http://downloads.yoctoproject.org/mirror/sources/
5
6The metadata used to generate the images shipped with this BSP, in
7addition to the code contained in this BSP, can be found at the
8following location:
9
10http://downloads.yoctoproject.org/releases/yocto/yocto-2.5/poky-sumo-19.0.0.tar.bz2
11
12The metadata used to generate the images shipped with this BSP, in
13addition to the code contained in this BSP, can also be found at the
14following locations:
15
16git://git.yoctoproject.org/poky.git
17git://git.yoctoproject.org/meta-intel
diff --git a/SECURITY.md b/SECURITY.md
new file mode 100644
index 00000000..e70fcb0f
--- /dev/null
+++ b/SECURITY.md
@@ -0,0 +1,6 @@
1# Security Policy
2Intel is committed to rapidly addressing security vulnerabilities affecting our customers and providing clear guidance on the solution, impact, severity and mitigation.
3
4## Reporting a Vulnerability
5Please report any security vulnerabilities in this project [utilizing the guidelines here](https://www.intel.com/content/www/us/en/security-center/vulnerability-handling-guidelines.html).
6
diff --git a/classes/uefi-comboapp.bbclass b/classes/uefi-comboapp.bbclass
deleted file mode 100644
index 4ecc5535..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 3ddd1e7d..fb8b0b12 100644
--- a/conf/include/maintainers.inc
+++ b/conf/include/maintainers.inc
@@ -1,16 +1,47 @@
1# This file contains a list of recipe maintainers for meta-intel 1# This file contains a list of recipe maintainers for meta-intel
2 2
3RECIPE_MAINTAINER_pn-core-image-rt = "Anuj Mittal <anuj.mittal@intel.com>" 3RECIPE_MAINTAINER:pn-backport-iwlwifi = "Naveen Saini <naveen.kumar.saini@intel.com>"
4RECIPE_MAINTAINER_pn-core-image-rt-sdk = "Anuj Mittal <anuj.mittal@intel.com>" 4RECIPE_MAINTAINER:pn-core-image-rt = "Anuj Mittal <anuj.mittal@intel.com>"
5RECIPE_MAINTAINER_pn-gma500-gfx-check = "Anuj Mittal <anuj.mittal@intel.com>" 5RECIPE_MAINTAINER:pn-core-image-rt-sdk = "Anuj Mittal <anuj.mittal@intel.com>"
6RECIPE_MAINTAINER_pn-intel-gpu-tools = "Anuj Mittal <anuj.mittal@intel.com>" 6RECIPE_MAINTAINER:pn-core-image-tiny = "Naveen Saini <naveen.kumar.saini@intel.com>"
7RECIPE_MAINTAINER_pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>" 7RECIPE_MAINTAINER:pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>"
8RECIPE_MAINTAINER_pn-core-image-minimal-initramfs = "Anuj Mittal <anuj.mittal@intel.com>" 8RECIPE_MAINTAINER:pn-embree = "Naveen Saini <naveen.kumar.saini@intel.com>"
9RECIPE_MAINTAINER_pn-iucode-tool = "Anuj Mittal <anuj.mittal@intel.com>" 9RECIPE_MAINTAINER:pn-gmmlib = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
10RECIPE_MAINTAINER_pn-intel-vaapi-driver = "Anuj Mittal <anuj.mittal@intel.com>" 10RECIPE_MAINTAINER:pn-hdcp = "Naveen Saini <naveen.kumar.saini@intel.com>"
11RECIPE_MAINTAINER_pn-libyami = "Anuj Mittal <anuj.mittal@intel.com>" 11RECIPE_MAINTAINER:pn-intel-cmt-cat = "Naveen Saini <naveen.kumar.saini@intel.com>"
12RECIPE_MAINTAINER_pn-libyami-utils = "Anuj Mittal <anuj.mittal@intel.com>" 12RECIPE_MAINTAINER:pn-intel-compute-runtime = "Naveen Saini <naveen.kumar.saini@intel.com>"
13RECIPE_MAINTAINER_pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>" 13RECIPE_MAINTAINER:pn-intel-crypto-mb = "Anuj Mittal <anuj.mittal@intel.com>"
14RECIPE_MAINTAINER_pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>" 14RECIPE_MAINTAINER:pn-intel-graphics-compiler = "Naveen Saini <naveen.kumar.saini@intel.com>"
15RECIPE_MAINTAINER_pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>" 15RECIPE_MAINTAINER:pn-intel-media-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
16RECIPE_MAINTAINER_pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>" 16RECIPE_MAINTAINER:pn-intel-microcode = "Anuj Mittal <anuj.mittal@intel.com>"
17RECIPE_MAINTAINER:pn-intel-vaapi-driver = "Lim Siew Hoon <siew.hoon.lim@intel.com>"
18RECIPE_MAINTAINER:pn-ipmctl = "Anuj Mittal <anuj.mittal@intel.com>"
19RECIPE_MAINTAINER:pn-isa-l = "Naveen Saini <naveen.kumar.saini@intel.com>"
20RECIPE_MAINTAINER:pn-ispc = "Naveen Saini <naveen.kumar.saini@intel.com>"
21RECIPE_MAINTAINER:pn-itt = "Naveen Saini <naveen.kumar.saini@intel.com>"
22RECIPE_MAINTAINER:pn-ixgbe = "Naveen Saini <naveen.kumar.saini@intel.com>"
23RECIPE_MAINTAINER:pn-ixgbevf = "Naveen Saini <naveen.kumar.saini@intel.com>"
24RECIPE_MAINTAINER:pn-iucode-tool = "Anuj Mittal <anuj.mittal@intel.com>"
25RECIPE_MAINTAINER:pn-level-zero = "Naveen Saini <naveen.kumar.saini@intel.com>"
26RECIPE_MAINTAINER:pn-libipt = "Naveen Saini <naveen.kumar.saini@intel.com>"
27RECIPE_MAINTAINER:pn-libva-intel = "Anuj Mittal <anuj.mittal@intel.com>"
28RECIPE_MAINTAINER:pn-libva-intel-utils = "Anuj Mittal <anuj.mittal@intel.com>"
29RECIPE_MAINTAINER:pn-libxcam = "Naveen Saini <naveen.kumar.saini@intel.com>"
30RECIPE_MAINTAINER:pn-linux-intel = "Anuj Mittal <anuj.mittal@intel.com>"
31RECIPE_MAINTAINER:pn-linux-intel-rt = "Anuj Mittal <anuj.mittal@intel.com>"
32RECIPE_MAINTAINER:pn-linux-intel-dev = "Naveen Saini <naveen.kumar.saini@intel.com>"
33RECIPE_MAINTAINER:pn-linux-npu-driver = "Naveen Saini <naveen.kumar.saini@intel.com>"
34RECIPE_MAINTAINER:pn-lms = "Anuj Mittal <anuj.mittal@intel.com>"
35RECIPE_MAINTAINER:pn-metee = "Naveen Saini <naveen.kumar.saini@intel.com>"
36RECIPE_MAINTAINER:pn-metrics-discovery = "Naveen Saini <naveen.kumar.saini@intel.com>"
37RECIPE_MAINTAINER:pn-oidn = "Naveen Saini <naveen.kumar.saini@intel.com>"
38RECIPE_MAINTAINER:pn-onednn = "Naveen Saini <naveen.kumar.saini@intel.com>"
39RECIPE_MAINTAINER:pn-onedpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
40RECIPE_MAINTAINER:pn-onevpl = "Naveen Saini <naveen.kumar.saini@intel.com>"
41RECIPE_MAINTAINER:pn-onevpl-intel-gpu = "Yew Chang Ching <chang.ching.yew@intel.com>"
42RECIPE_MAINTAINER:pn-opencl-clang = "Naveen Saini <naveen.kumar.saini@intel.com>"
43RECIPE_MAINTAINER:pn-openvkl = "Naveen Saini <naveen.kumar.saini@intel.com>"
44RECIPE_MAINTAINER:pn-ospray = "Naveen Saini <naveen.kumar.saini@intel.com>"
45RECIPE_MAINTAINER:pn-rkcommon = "Naveen Saini <naveen.kumar.saini@intel.com>"
46RECIPE_MAINTAINER:pn-thermald = "Anuj Mittal <anuj.mittal@intel.com>"
47RECIPE_MAINTAINER:pn-xf86-video-ast = "Anuj Mittal <anuj.mittal@intel.com>"
diff --git a/conf/layer.conf b/conf/layer.conf
index 29a0f389..9365f3a2 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -10,15 +10,36 @@ BBFILE_PATTERN_intel := "^${LAYERDIR}/"
10BBFILE_PRIORITY_intel = "5" 10BBFILE_PRIORITY_intel = "5"
11 11
12# Additional license directories. 12# Additional license directories.
13LICENSE_PATH += "${LAYERDIR}/custom-licenses" 13CUSTOM_LICENSES_PATH = "${LAYERDIR}/custom-licenses"
14LICENSE_PATH += "${CUSTOM_LICENSES_PATH}"
14 15
15LAYERDEPENDS_intel = "core" 16LAYERDEPENDS_intel = "core"
16LAYERRECOMMENDS_intel = "dpdk intel-qat" 17LAYERRECOMMENDS_intel = "dpdk"
17 18
18# This should only be incremented on significant changes that will 19# This should only be incremented on significant changes that will
19# cause compatibility issues with other layers 20# cause compatibility issues with other layers
20LAYERVERSION_intel = "5" 21LAYERVERSION_intel = "5"
21LAYERSERIES_COMPAT_intel = "sumo" 22LAYERSERIES_COMPAT_intel = "scarthgap whinlatter"
22 23
24BBFILES_DYNAMIC += " \
25 clang-layer:${LAYERDIR}/dynamic-layers/clang-layer/*/*/*.bb \
26 clang-layer:${LAYERDIR}/dynamic-layers/clang-layer/*/*/*.bbappend \
27 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \
28 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
29 meta-python:${LAYERDIR}/dynamic-layers/meta-python/*/*/*.bb \
30 meta-python:${LAYERDIR}/dynamic-layers/meta-python/*/*/*.bbappend \
31"
23 32
24require ${LAYERDIR}/conf/include/maintainers.inc 33require ${LAYERDIR}/conf/include/maintainers.inc
34
35# Use the libva from OE-Core when layer is included but no MACHINE
36# from meta-intel is being used.
37PREFERRED_PROVIDER_libva ?= "libva"
38PREFERRED_PROVIDER_libva-native ?= "libva-native"
39PREFERRED_PROVIDER_nativesdk-libva ?= "nativesdk-libva"
40
41PREFERRED_PROVIDER_libva-utils ?= "libva-utils"
42PREFERRED_PROVIDER_libva-utils-native ?= "libva-utils-native"
43PREFERRED_PROVIDER_nativesdk-libva-utils ?= "nativesdk-libva-utils"
44
45addpylib ${LAYERDIR}/lib oeqa
diff --git a/conf/machine/include/intel-common-pkgarch.inc b/conf/machine/include/intel-common-pkgarch.inc
index d0f208bd..94d77e06 100644
--- a/conf/machine/include/intel-common-pkgarch.inc
+++ b/conf/machine/include/intel-common-pkgarch.inc
@@ -1,15 +1,15 @@
1INTEL_COMMON_PACKAGE_ARCH ?= "${TUNE_PKGARCH}-intel-common" 1INTEL_COMMON_PACKAGE_ARCH ?= "${TUNE_PKGARCH}-intel-common"
2PACKAGE_ARCH_pn-linux-intel = "${INTEL_COMMON_PACKAGE_ARCH}" 2PACKAGE_ARCH:pn-linux-intel = "${INTEL_COMMON_PACKAGE_ARCH}"
3PACKAGE_ARCH_pn-linux-intel-rt = "${INTEL_COMMON_PACKAGE_ARCH}" 3PACKAGE_ARCH:pn-linux-intel-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
4PACKAGE_ARCH_pn-linux-intel-tiny = "${INTEL_COMMON_PACKAGE_ARCH}" 4PACKAGE_ARCH:pn-linux-intel-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
5PACKAGE_ARCH_pn-linux-intel-dev = "${INTEL_COMMON_PACKAGE_ARCH}" 5PACKAGE_ARCH:pn-linux-intel-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
6PACKAGE_ARCH_pn-linux-yocto = "${INTEL_COMMON_PACKAGE_ARCH}" 6PACKAGE_ARCH:pn-linux-yocto = "${INTEL_COMMON_PACKAGE_ARCH}"
7PACKAGE_ARCH_pn-linux-yocto-rt = "${INTEL_COMMON_PACKAGE_ARCH}" 7PACKAGE_ARCH:pn-linux-yocto-rt = "${INTEL_COMMON_PACKAGE_ARCH}"
8PACKAGE_ARCH_pn-linux-yocto-tiny = "${INTEL_COMMON_PACKAGE_ARCH}" 8PACKAGE_ARCH:pn-linux-yocto-tiny = "${INTEL_COMMON_PACKAGE_ARCH}"
9PACKAGE_ARCH_pn-linux-yocto-dev = "${INTEL_COMMON_PACKAGE_ARCH}" 9PACKAGE_ARCH:pn-linux-yocto-dev = "${INTEL_COMMON_PACKAGE_ARCH}"
10PACKAGE_ARCH_pn-intel-microcode = "${INTEL_COMMON_PACKAGE_ARCH}" 10PACKAGE_ARCH:pn-intel-microcode = "${INTEL_COMMON_PACKAGE_ARCH}"
11PACKAGE_ARCH_pn-backport-iwlwifi = "${INTEL_COMMON_PACKAGE_ARCH}" 11PACKAGE_ARCH:pn-backport-iwlwifi = "${INTEL_COMMON_PACKAGE_ARCH}"
12PACKAGE_ARCH_pn-ixgbe = "${INTEL_COMMON_PACKAGE_ARCH}" 12PACKAGE_ARCH:pn-ixgbe = "${INTEL_COMMON_PACKAGE_ARCH}"
13PACKAGE_ARCH_pn-ixgbevf = "${INTEL_COMMON_PACKAGE_ARCH}" 13PACKAGE_ARCH:pn-ixgbevf = "${INTEL_COMMON_PACKAGE_ARCH}"
14PACKAGE_EXTRA_ARCHS_append += "${INTEL_COMMON_PACKAGE_ARCH}" 14PACKAGE_EXTRA_ARCHS:append = " ${INTEL_COMMON_PACKAGE_ARCH}"
15MACHINEOVERRIDES =. "${INTEL_COMMON_PACKAGE_ARCH}:" 15MACHINEOVERRIDES =. "${INTEL_COMMON_PACKAGE_ARCH}:"
diff --git a/conf/machine/include/intel-core2-32-common.inc b/conf/machine/include/intel-core2-32-common.inc
index 8c469499..ce34d9bb 100644
--- a/conf/machine/include/intel-core2-32-common.inc
+++ b/conf/machine/include/intel-core2-32-common.inc
@@ -3,5 +3,5 @@
3# 3#
4 4
5DEFAULTTUNE ?= "core2-32" 5DEFAULTTUNE ?= "core2-32"
6require conf/machine/include/tune-core2.inc 6require conf/machine/include/x86/tune-core2.inc
7require conf/machine/include/x86-base.inc 7require conf/machine/include/x86/x86-base.inc
diff --git a/conf/machine/include/intel-corei7-64-common.inc b/conf/machine/include/intel-corei7-64-common.inc
index 00282569..3498ebe3 100644
--- a/conf/machine/include/intel-corei7-64-common.inc
+++ b/conf/machine/include/intel-corei7-64-common.inc
@@ -3,5 +3,5 @@
3# 3#
4 4
5DEFAULTTUNE ?= "corei7-64" 5DEFAULTTUNE ?= "corei7-64"
6require conf/machine/include/tune-corei7.inc 6require conf/machine/include/x86/tune-corei7.inc
7require conf/machine/include/x86-base.inc 7require conf/machine/include/x86/x86-base.inc
diff --git a/conf/machine/include/meta-intel.inc b/conf/machine/include/meta-intel.inc
index cec348a7..c98aa78a 100644
--- a/conf/machine/include/meta-intel.inc
+++ b/conf/machine/include/meta-intel.inc
@@ -5,27 +5,40 @@
5# 5#
6 6
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"
9PREFERRED_VERSION_linux-intel_linuxstdbase ?= "4.9%" 9
10PREFERRED_VERSION_linux-intel ?= "4.14%" 10PREFERRED_VERSION_linux-intel ?= "6.12%"
11PREFERRED_VERSION_linux-intel-rt ?= "6.12%"
12PREFERRED_VERSION_linux-intel:poky-altcfg ?= "6.12%"
13PREFERRED_VERSION_linux-intel-rt:poky-altcfg ?= "6.12%"
14
15# Need to point to latest version of libva needed for media components
16PREFERRED_PROVIDER_libva = "libva-intel"
17PREFERRED_PROVIDER_libva-native = "libva-intel-native"
18PREFERRED_PROVIDER_nativesdk-libva = "nativesdk-libva-intel"
19
20PREFERRED_PROVIDER_libva-utils = "libva-intel-utils"
21PREFERRED_PROVIDER_libva-utils-native = "libva-intel-utils-native"
22PREFERRED_PROVIDER_nativesdk-libva-utils = "nativesdk-libva-intel-utils"
11 23
12XSERVER_X86_ASPEED_AST = "xf86-video-ast \ 24XSERVER_X86_ASPEED_AST = "xf86-video-ast \
13 " 25 "
14 26
15# include the user space intel microcode loading support in the generated images. 27# include the user space intel microcode loading support in the generated images.
16MACHINE_ESSENTIAL_EXTRA_RDEPENDS_append = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', ' intel-microcode', '', d)} thermald" 28MACHINE_ESSENTIAL_EXTRA_RDEPENDS:append = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', ' intel-microcode', '', d)}"
17 29
18# recommended extra packages common to all intel machines 30# recommended extra packages common to all intel machines
19MACHINE_EXTRA_RRECOMMENDS_append = " kernel-modules linux-firmware" 31MACHINE_EXTRA_RRECOMMENDS:append = " kernel-modules linux-firmware"
32MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS:append = " kernel-module-i915 linux-firmware-i915 kernel-module-igc kernel-module-r8152"
20 33
21# for the early boot time kernel microcode loading support, 34# for the early boot time kernel microcode loading support,
22# merge the microcode data in the final initrd image. 35# merge the microcode data in the final initrd image.
23INITRD_LIVE_prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}" 36INITRD_LIVE:prepend = "${@bb.utils.contains('MACHINE_FEATURES', 'intel-ucode', '${DEPLOY_DIR_IMAGE}/microcode.cpio ', '', d)}"
24 37
25DISK_SIGNATURE_UUID ??= "deadbeef-dead-beef-dead-beefdeadbeef" 38DISK_SIGNATURE_UUID ??= "deadbeef-dead-beef-dead-beefdeadbeef"
26 39
27EFI_PROVIDER ?= "systemd-boot" 40EFI_PROVIDER ?= "systemd-boot"
28EFI_PROVIDER_x86-x32 = "grub-efi" 41EFI_PROVIDER:x86-x32 = "grub-efi"
29 42
30# Add general MACHINEOVERRIDE for meta-intel 43# Add general MACHINEOVERRIDE for meta-intel
31MACHINEOVERRIDES =. "intel-x86-common:" 44MACHINEOVERRIDES =. "intel-x86-common:"
diff --git a/conf/machine/include/qemu-intel.inc b/conf/machine/include/qemu-intel.inc
index 81510404..4608db99 100644
--- a/conf/machine/include/qemu-intel.inc
+++ b/conf/machine/include/qemu-intel.inc
@@ -2,7 +2,7 @@
2# distro content (in particular the kernel) less than qemu.inc. 2# distro content (in particular the kernel) less than qemu.inc.
3 3
4# Ensure that qemu gets built when building images. 4# Ensure that qemu gets built when building images.
5EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" 5EXTRA_IMAGEDEPENDS += "qemu-system-native qemu-helper-native:do_addto_recipe_sysroot"
6 6
7# Build ovmf firmware for uefi support in qemu. 7# Build ovmf firmware for uefi support in qemu.
8EXTRA_IMAGEDEPENDS += "ovmf" 8EXTRA_IMAGEDEPENDS += "ovmf"
diff --git a/conf/machine/include/qemuboot-intel.inc b/conf/machine/include/qemuboot-intel.inc
index 6586cf09..17a1234d 100644
--- a/conf/machine/include/qemuboot-intel.inc
+++ b/conf/machine/include/qemuboot-intel.inc
@@ -1,15 +1,18 @@
1# For runqemu 1# For runqemu
2IMAGE_CLASSES += "qemuboot" 2IMAGE_CLASSES += "qemuboot"
3QB_SYSTEM_NAME_intel-core2-32 = "qemu-system-i386" 3QB_SYSTEM_NAME:intel-core2-32 = "qemu-system-i386"
4QB_CPU_intel-core2-32 = "-cpu coreduo" 4QB_CPU:intel-core2-32 = "-cpu coreduo"
5QB_CPU_KVM_intel-core2-32 = "-cpu kvm32" 5QB_CPU_KVM:intel-core2-32 = "-cpu kvm32"
6 6
7QB_SYSTEM_NAME_intel-corei7-64 = "qemu-system-x86_64" 7QB_SYSTEM_NAME:intel-corei7-64 = "qemu-system-x86_64"
8QB_CPU_intel-corei7-64 = "-cpu Nehalem" 8QB_CPU:intel-corei7-64 = "-cpu Nehalem"
9QB_CPU_KVM_intel-corei7-64 = "-cpu kvm64" 9QB_CPU_KVM:intel-corei7-64 = "-cpu kvm64"
10
11QB_SYSTEM_NAME:intel-skylake-64 = "qemu-system-x86_64"
12QB_CPU:intel-skylake-64 = "-cpu Skylake-Client"
13QB_CPU_KVM:intel-skylake-64 = "-cpu Skylake-Client"
10 14
11QB_AUDIO_DRV = "alsa" 15QB_AUDIO_DRV = "alsa"
12QB_AUDIO_OPT = "-soundhw ac97,es1370" 16QB_AUDIO_OPT = "-device AC97"
13QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1" 17QB_KERNEL_CMDLINE_APPEND = " oprofile.timer=1"
14# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy 18QB_OPT_APPEND = " -usb -usbdevice tablet "
15QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci"
diff --git a/conf/machine/intel-core2-32.conf b/conf/machine/intel-core2-32.conf
index 570685aa..5b134dc3 100644
--- a/conf/machine/intel-core2-32.conf
+++ b/conf/machine/intel-core2-32.conf
@@ -13,11 +13,6 @@ MACHINE_FEATURES += "intel-ucode"
13 13
14MACHINE_HWCODECS ?= "intel-vaapi-driver gstreamer1.0-vaapi" 14MACHINE_HWCODECS ?= "intel-vaapi-driver gstreamer1.0-vaapi"
15 15
16MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "gma500-gfx-check"
17
18# Enable optional QAT items:
19COMPATIBLE_MACHINE_pn-qat17 = "intel-core2-32"
20
21XSERVER ?= "${XSERVER_X86_BASE} \ 16XSERVER ?= "${XSERVER_X86_BASE} \
22 ${XSERVER_X86_EXT} \ 17 ${XSERVER_X86_EXT} \
23 ${XSERVER_X86_FBDEV} \ 18 ${XSERVER_X86_FBDEV} \
@@ -29,9 +24,9 @@ XSERVER ?= "${XSERVER_X86_BASE} \
29 " 24 "
30 25
31SYSLINUX_OPTS = "serial 0 115200" 26SYSLINUX_OPTS = "serial 0 115200"
32SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyPCH0" 27SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyPCH0"
33APPEND += "rootwait console=ttyS0,115200 console=ttyPCH0,115200 console=tty0" 28APPEND += "rootwait console=ttyS0,115200 console=ttyPCH0,115200 console=tty0"
34 29
35IMAGE_FSTYPES += "wic" 30IMAGE_FSTYPES += "wic"
36WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks", "grub-bootdisk-microcode.wks", d)}" 31WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
37WKS_FILE_DEPENDS_append = " intel-microcode" 32WKS_FILE_DEPENDS:append = " intel-microcode"
diff --git a/conf/machine/intel-corei7-64.conf b/conf/machine/intel-corei7-64.conf
index 9ce21a84..947f72d4 100644
--- a/conf/machine/intel-corei7-64.conf
+++ b/conf/machine/intel-corei7-64.conf
@@ -11,16 +11,11 @@ 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 ?= "intel-vaapi-driver 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"
18COMPATIBLE_MACHINE_pn-dpdk-dev-libibverbs = "intel-corei7-64" 18COMPATIBLE_MACHINE:pn-dpdk-module = "intel-corei7-64"
19
20# Enable optional QAT items:
21COMPATIBLE_MACHINE_pn-qat16 = "intel-corei7-64"
22COMPATIBLE_MACHINE_pn-qat17 = "intel-corei7-64"
23COMPATIBLE_MACHINE_pn-zlib-qat = "intel-corei7-64"
24 19
25XSERVER ?= "${XSERVER_X86_BASE} \ 20XSERVER ?= "${XSERVER_X86_BASE} \
26 ${XSERVER_X86_EXT} \ 21 ${XSERVER_X86_EXT} \
@@ -33,9 +28,9 @@ XSERVER ?= "${XSERVER_X86_BASE} \
33 " 28 "
34 29
35SYSLINUX_OPTS = "serial 0 115200" 30SYSLINUX_OPTS = "serial 0 115200"
36SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS1 115200;ttyS2" 31SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2"
37APPEND += "rootwait console=ttyS0,115200 console=tty0" 32APPEND += "rootwait console=ttyS0,115200 console=tty0"
38 33
39IMAGE_FSTYPES += "wic" 34IMAGE_FSTYPES += "wic"
40WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks", "grub-bootdisk-microcode.wks", d)}" 35WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
41WKS_FILE_DEPENDS_append = " intel-microcode" 36WKS_FILE_DEPENDS:append = " intel-microcode"
diff --git a/conf/machine/intel-skylake-64.conf b/conf/machine/intel-skylake-64.conf
new file mode 100644
index 00000000..bfaf08dd
--- /dev/null
+++ b/conf/machine/intel-skylake-64.conf
@@ -0,0 +1,36 @@
1#@TYPE: Machine
2#@NAME: intel-skylake-64
3
4#@DESCRIPTION: Machine configuration for 64 bit Intel Skylake CPU (and later) with MMX, SSE, SSE2, SSE3, SSE4.1, SSE4.2, AVX, and AVX2 instruction set support. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
5
6require conf/machine/include/meta-intel.inc
7require conf/machine/include/x86/x86-base.inc
8require conf/machine/include/x86/tune-x86-64-v3.inc
9require conf/machine/include/intel-common-pkgarch.inc
10
11MACHINE_FEATURES += "efi"
12MACHINE_FEATURES += "wifi 3g nfc"
13MACHINE_FEATURES += "intel-ucode"
14
15MACHINE_HWCODECS ?= "intel-media-driver vpl-gpu-rt gstreamer1.0-vaapi"
16
17COMPATIBLE_MACHINE:pn-dpdk = "intel-skylake-64"
18COMPATIBLE_MACHINE:pn-dpdk-module = "intel-skylake-64"
19
20XSERVER ?= "${XSERVER_X86_BASE} \
21 ${XSERVER_X86_EXT} \
22 ${XSERVER_X86_FBDEV} \
23 ${XSERVER_X86_I915} \
24 ${XSERVER_X86_I965} \
25 ${XSERVER_X86_MODESETTING} \
26 ${XSERVER_X86_VESA} \
27 ${XSERVER_X86_ASPEED_AST} \
28 "
29
30SYSLINUX_OPTS = "serial 0 115200"
31SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyS2"
32APPEND += "rootwait console=ttyS0,115200 console=tty0"
33
34IMAGE_FSTYPES += "wic"
35WKS_FILE ?= "${@bb.utils.contains_any("EFI_PROVIDER", "systemd-boot", "systemd-bootdisk-microcode.wks.in", "grub-bootdisk-microcode.wks.in", d)}"
36WKS_FILE_DEPENDS:append = " intel-microcode"
diff --git a/custom-licenses/BSD_LMS b/custom-licenses/BSD_LMS
deleted file mode 100755
index 2ea28ff4..00000000
--- a/custom-licenses/BSD_LMS
+++ /dev/null
@@ -1,30 +0,0 @@
1Copyright (C) 2004-2012 Intel Corporation. All rights reserved.
2
3• This license covers the sources of the Local Manageability Service (LMS).
4For licensing information for the LMS build scripts, please refer to the file build_script_license.txt.
5
6Redistribution and use in source and binary forms, with or without
7modification, are permitted provided that the following conditions are met:
8
9 - Redistributions of source code must retain the above copyright notice,
10 this list of conditions and the following disclaimer.
11
12 - Redistributions in binary form must reproduce the above copyright notice,
13 this list of conditions and the following disclaimer in the documentation
14 and/or other materials provided with the distribution.
15
16 - Neither the name of Intel Corporation. nor the names of its
17 contributors may be used to endorse or promote products derived from this
18 software without specific prior written permission.
19
20THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
21AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23ARE DISCLAIMED. IN NO EVENT SHALL Intel Corporation. OR THE CONTRIBUTORS
24BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30POSSIBILITY OF SUCH DAMAGE.
diff --git a/custom-licenses/EULA b/custom-licenses/EULA
new file mode 100644
index 00000000..549f78e1
--- /dev/null
+++ b/custom-licenses/EULA
@@ -0,0 +1,392 @@
1Intel End User License Agreement for Developer Tools (Version October 2021)
2
3IMPORTANT NOTICE - PLEASE READ AND AGREE BEFORE DOWNLOADING, INSTALLING, COPYING
4OR USING
5
6This Agreement is between you, or the company or other legal entity that you
7represent and warrant you have the legal authority to bind, (each, "You" or
8"Your") and Intel Corporation and its subsidiaries (collectively, "Intel")
9regarding Your use of the Materials. By downloading, installing, copying or
10using the Materials, You agree to be bound by the terms of this Agreement. If
11You do not agree to the terms of this Agreement, or do not have legal authority
12or required age to agree to them, do not download, install, copy or use the
13Materials.
14
151. LICENSE DEFINITIONS.
16
17 A. "Cloud Provider" means a third party service provider offering a cloud-based
18 platform, infrastructure, application or storage services, such as Microsoft
19 Azure or Amazon Web Services, which You may only utilize to host the
20 Materials subject to the restrictions set forth in Section 2.3 B.
21
22 B. "Derivative Work" means a derivative work, as defined in 17 U.S.C. 101, of
23 the Source Code.
24
25 C. "Executable Code" means computer programming code in binary form suitable
26 for machine execution by a processor without the intervening steps of
27 interpretation or compilation.
28
29 D. "Materials" mean the software, documentation, the software product serial
30 number, and other collateral, including any updates, made available to You
31 by Intel under this Agreement. Materials include Redistributables,
32 Executable Code, Source Code, Sample Source Code, and Pre-Release Materials,
33 but do not include Third Party Software.
34
35 E. "Pre-Release Materials" mean the Materials, or portions of the Materials,
36 that are identified (in the product release notes, on Intel's download
37 website for the Materials or elsewhere) or labeled as pre-release,
38 prototype, alpha or beta code and, as such, are deemed to be pre-release
39 code (i) which may not be fully functional or tested and may contain bugs or
40 errors; (ii) which Intel may substantially modify in its development of a
41 production version; or (iii) for which Intel makes no assurances that it
42 will ever develop or make a production version generally available.
43 Pre-Release Materials are subject to the terms of Section 3.2.
44
45 F. "Reciprocal Open Source Software" means any software that is subject to a
46 license which requires that (i) it must be distributed in source code form;
47 (ii) it must be licensed under the same open source license terms; and (iii)
48 its derivative works must be licensed under the same open source license
49 terms. Examples of this type of license are the GNU General Public License
50 or the Mozilla Public License.
51
52 G. "Redistributables" mean the files (if any) listed in the "redist.txt,"
53 "redist-rt.txt" or similarly-named text files that may be included in the
54 Materials. Redistributables include Sample Source Code.
55
56 H. "Sample Source Code" means those portions of the Materials that are Source
57 Code and are identified as sample code. Sample Source Code may not have been
58 tested or validated by Intel and is provided purely as a programming example.
59
60 I. "Source Code" means the software portion of the Materials provided in human
61 readable format.
62
63 J. "Third Party Software" mean the files (if any) listed in the
64 "third-party-software.txt" or other similarly-named text file that may be
65 included in the Materials for the applicable software. Third Party Software
66 is subject to the terms of Section 2.2.
67
68 K. "Your Product" means one or more applications, products or projects
69 developed by or for You using the Materials.
70
712. LICENSE GRANTS.
72
732.1 License to the Materials. Subject to the terms and conditions of this
74 Agreement, Intel grants You a non-exclusive, worldwide, non-assignable,
75 non-sublicensable, limited right and license under its copyrights, to:
76
77 A. reproduce internally a reasonable number of copies of the Materials for Your
78 personal or business use;
79
80 B. use the Materials solely for Your personal or business use to develop Your
81 Product, in accordance with the documentation included as part of the
82 Materials;
83
84 C. modify or create Derivative Works only of the Redistributables, or any
85 portions, that are provided to You in Source Code;
86
87 D. distribute (directly and through Your distributors, resellers, and other
88 channel partners, if applicable), the Redistributables, including any
89 modifications to or Derivative Works of the Redistributables or any portions
90 made pursuant to Section 2.1.C subject to the following conditions:
91
92 (1) Any distribution of the Redistributables must only be as part of Your
93 Product which must add significant primary functionality different than
94 that of the Redistributables themselves;
95
96 (2) You must only distribute the Redistributables originally provided to You
97 by Intel only in Executable Code subject to a license agreement that
98 prohibits reverse engineering, decompiling or disassembling the
99 Redistributables;
100
101 (3) This distribution right includes a limited right to sublicense only the
102 Intel copyrights in the Redistributables and only to the extent necessary
103 to perform, display, and distribute the Redistributables (including Your
104 modifications and Derivative Works of the Redistributables provided in
105 Source Code) solely as incorporated in Your Product; and
106
107 (4) You: (i) will be solely responsible to Your customers for any update,
108 support obligation or other obligation or liability which may arise from
109 the distribution of Your Product, (ii) will not make any statement that
110 Your Product is "certified" or that its performance is guaranteed by Intel
111 or its suppliers, (iii) will not use Intel's or its suppliers' names or
112 trademarks to market Your Product, (iv) will comply with any additional
113 restrictions which are included in the text files with the
114 Redistributables and in Section 3 below, (v) will indemnify, hold
115 harmless, and defend Intel and its suppliers from and against any claims
116 or lawsuits, costs, damages, and expenses, including attorney's fees, that
117 arise or result from (a) Your modifications or Derivative Works of the
118 Materials or (b) Your distribution of Your Product.
119
1202.2 Third Party Software. Third Party Software, even if included with the
121 distribution of the Materials, may be governed by separate license terms,
122 including without limitation, third party license terms, open source
123 software notices and terms, and/or other Intel software license terms. These
124 separate license terms solely govern Your use of the Third Party Software.
125
1262.3 Third Party Use.
127
128 A. If You are an entity, Your contractors may use the Materials under the
129 license specified in Section 2, provided: (i) their use of the Materials is
130 solely on behalf of and in support of Your business, (ii) they agree to the
131 terms and conditions of this Agreement, and (iii) You are solely responsible
132 for their use, misuse or disclosure of the Materials.
133
134 B. You may utilize a Cloud Provider to host the Materials for You, provided:
135 (i) the Cloud Provider may only host the Materials for Your exclusive use
136 and may not use the Materials for any other purpose whatsoever, including the
137 restriction set forth in Section 3.1(xi); (ii) the Cloud Provider's use of
138 the Materials must be solely on behalf of and in support of Your Product, and
139 (iii) You will indemnify, hold harmless, and defend Intel and its suppliers
140 from and against any claims or lawsuits, costs, damages, and expenses,
141 including attorney's fees, that arise or result from Your Cloud Provider's
142 use, misuse or disclosure of the Materials.
143
1443. LICENSE CONDITIONS.
145
1463.1 Restrictions. Except as expressly provided in this Agreement, You may NOT:
147 (i) use, reproduce, disclose, distribute, or publicly display the
148 Materials; (ii) share, publish, rent or lease the Materials to any third
149 party; (iii) assign this Agreement or transfer the Materials; (iv) modify,
150 adapt, or translate the Materials in whole or in part; (v) reverse engineer,
151 decompile, or disassemble the Materials, or otherwise attempt to derive the
152 source code for the software; (vi) work around any technical limitations in
153 the Materials; (vii) distribute, sublicense or transfer any Source Code,
154 modifications or Derivative Works of any Source Code to any third party;
155 (viii) remove, minimize, block or modify any notices of Intel or its
156 suppliers in the Materials; (ix) include the Redistributables in malicious,
157 deceptive, or unlawful programs or products or use the Materials in any way
158 that is against the law; (x) modify, create a Derivative Work, link, or
159 distribute the Materials so that any part of it becomes Reciprocal Open
160 Source Software; (xi) use the Materials directly or indirectly for SaaS
161 services or service bureau purposes (i.e., a service that allows use of or
162 access to the Materials by a third party as part of that service, such as
163 the salesforce.com service business model).
164
1653.2 Pre-Release Materials. If You receive Pre-Release Materials, You may
166 reproduce a reasonable number of copies and use the Pre-Release Materials
167 for evaluation and testing purposes only. You may not (i) modify or
168 incorporate the Pre-Release Materials into Your Product; (ii) continue to
169 use the Pre-Release Materials once a commercial version is released; or
170 (iii) disclose to any third party any benchmarks, performance results, or
171 other information relating to the Pre-Release Materials. Intel may waive
172 these restrictions in writing at its sole discretion; however, if You decide
173 to use the Pre-Release Materials in Your Product (even with Intel's waiver),
174 You acknowledge and agree that You are fully responsible for any and all
175 issues that result from such use.
176
1773.3 Safety-Critical, and Life-Saving Applications; Indemnity. The Materials may
178 provide information relevant to safety-critical applications
179 ("Safety-Critical Applications") to allow compliance with functional safety
180 standards or requirements. You acknowledge and agree that safety is Your
181 responsibility. To the extent You use the Materials to create, or as part
182 of, products used in Safety-Critical Applications, it is Your responsibility
183 to design, manage, and ensure that there are system-level safeguards to
184 anticipate, monitor, and control system failures, and You agree that You are
185 solely responsible for all applicable regulatory standards and
186 safety-related requirements concerning Your use of the Materials in Safety
187 Critical Applications.
188
189 Should You use the Materials for Safety-Critical Applications or in any type
190 of a system or application in which the failure of the Materials could
191 create a situation where personal injury or death may occur (e.g., medical
192 systems, life-sustaining or life-saving systems) ("Life-Saving
193 Applications"), You agree to indemnify, defend, and hold Intel and its
194 representatives harmless against any claims or lawsuits, costs, damages, and
195 expenses, including reasonable attorney fees, arising in any way out of Your
196 use of the Materials in Safety-Critical Applications or Life-Saving
197 Applications and claims of product liability, personal injury or death
198 associated with those applications; even if such claims allege that Intel
199 was negligent or strictly liable regarding the design or manufacture of the
200 Materials or its failure to warn regarding the Materials.
201
2023.4 Media Format Codecs and Digital Rights Management. You acknowledge and agree
203 that Your use of the Materials or distribution of the Redistributables with
204 Your Product as permitted by this Agreement may require You to procure
205 license(s) from third parties that may hold intellectual property rights
206 applicable to any media decoding, encoding or transcoding technology (e.g.,
207 the use of an audio or video codec) and/or digital rights management
208 capabilities of the Materials, if any. Should any such additional licenses
209 be required, You are solely responsible for obtaining any such licenses and
210 agree to obtain any such licenses at Your own expense.
211
2124. DATA COLLECTION AND PRIVACY.
213
2144.1 Data Collection. The Materials may generate and collect anonymous data
215 and/or provisioning data about the Materials and/or the development
216 environment and transmit the data to Intel as a one-time event during
217 installation. Optional data may also be collected by the Materials, however,
218 You will be provided notice of the request to collect optional data and no
219 optional data will be collected without Your consent. All data collection by
220 Intel is performed pursuant to relevant privacy laws, including notice and
221 consent requirements.
222
2234.2 Intel's Privacy Notice. Intel is committed to respecting Your privacy. To
224 learn more about Intel's privacy practices, please visit
225 http://www.intel.com/privacy.
226
2275. OWNERSHIP. Title to the Materials and all copies remain with Intel or its
228 suppliers. The Materials are protected by intellectual property rights,
229 including without limitation, United States copyright laws and international
230 treaty provisions. You will not remove any copyright or other proprietary
231 notices from the Materials. Except as expressly provided herein, no license
232 or right is granted to You directly or by implication, inducement, estoppel
233 or otherwise; specifically, Intel does not grant any express or implied right
234 to You under Intel patents, copyrights, trademarks, or trade secrets.
235
2366. NO WARRANTY AND NO SUPPORT.
237
2386.1 No Warranty. Disclaimer. Intel disclaims all warranties of any kind and the
239 terms and remedies provided in this Agreement are instead of any other
240 warranty or condition, express, implied or statutory, including those
241 regarding merchantability, fitness for any particular purpose,
242 non-infringement or any warranty arising out of any course of dealing, usage
243 of trade, proposal, specification or sample. Intel does not assume (and does
244 not authorize any person to assume on its behalf) any liability.
245
2466.2 No Support; Priority Support. Intel may make changes to the Materials, or to
247 items referenced therein, at any time without notice, but is not obligated
248 to support, update or provide training for the Materials under the terms of
249 this Agreement. Intel offers free community and paid priority support
250 options. More information on these support options can be found at:
251 https://software.intel.com/content/www/us/en/develop/support/priority-support.html.
252
2537. LIMITATION OF LIABILITY.
254
2557.1 Intel will not be liable for any of the following losses or damages (whether
256 such losses or damages were foreseen, foreseeable, known or otherwise): (i)
257 loss of revenue; (ii) loss of actual or anticipated profits; (iii) loss of
258 the use of money; (iv) loss of anticipated savings; (v) loss of business;
259 (vi) loss of opportunity; (vii) loss of goodwill; (viii) loss of use of the
260 Materials; (ix) loss of reputation; (x) loss of, damage to, or corruption of
261 data; or (xi) any indirect, incidental, special or consequential loss of
262 damage however caused (including loss or damage of the type specified in
263 this Section 7).
264
2657.2 Intel's total cumulative liability to You, including for direct damages for
266 claims relating to this Agreement, and whether for breach of contract,
267 negligence, or for any other reason, will not exceed $100.
268
2697.3 You acknowledge that the limitations of liability provided in this Section 7
270 are an essential part of this Agreement. You agree that the limitations of
271 liability provided in this Agreement with respect to Intel will be conveyed
272 to and made binding upon any customer of Yours that acquires the
273 Redistributables.
274
2758. USER SUBMISSIONS. Should you provide Intel with comments, modifications,
276 corrections, enhancements or other input ("Feedback") related to the
277 Materials, Intel will be free to use, disclose, reproduce, license or
278 otherwise distribute or exploit the Feedback in its sole discretion without
279 any obligations or restrictions of any kind, including without limitation,
280 intellectual property rights or licensing obligations. If You wish to provide
281 Intel with information that You intend to be treated as confidential
282 information, Intel requires that such confidential information be provided
283 pursuant to a non-disclosure agreement ("NDA"); please contact Your Intel
284 representative to ensure the proper NDA is in place.
285
2869. NON-DISCLOSURE. Information provided by Intel to You may include information
287 marked as confidential. You must treat such information as confidential under
288 the terms of the applicable NDA between Intel and You. If You have not
289 entered into an NDA with Intel, You must not disclose, distribute or make use
290 of any information marked as confidential, except as expressly authorized in
291 writing by Intel. Intel retains all rights in and to its confidential
292 information specifications, designs, engineering details, discoveries,
293 inventions, patents, copyrights, trademarks, trade secrets, and other
294 proprietary rights relating to the Materials. Any breach by You of the
295 confidentiality obligations provided for in this Section 9 will cause
296 irreparable injury to Intel for which money damages may be inadequate to
297 compensate Intel for losses arising from such a breach. Intel may obtain
298 equitable relief, including injunctive relief, if You breach or threaten to
299 breach Your confidentiality obligations.
300
30110. TERM AND TERMINATION. This Agreement becomes effective on the date You
302 accept this Agreement and will continue until terminated as provided for in
303 this Agreement. The term for any Pre-Release Materials terminates upon
304 release of a commercial version. This Agreement will terminate if You are in
305 breach of any of its terms and conditions. Upon termination, You will
306 promptly destroy the Materials and all copies. In the event of termination of
307 this Agreement, Your license to any Redistributables distributed by You in
308 accordance with the terms and conditions of this Agreement, prior to the
309 effective date of such termination, will survive any such termination of this
310 Agreement. Sections 1, 2.1.D(4)(v), 2.2, 2.3.A(iii), 2.3.B(iii), 3.3, 5, 6,
311 7, 8, 9, 10 (with respect to these survival provisions in the last sentence),
312 and 12 will survive expiration or termination of this Agreement.
313
31411. U.S. GOVERNMENT RESTRICTED RIGHTS. The technical data and computer software
315 covered by this license is a "Commercial Item," as such term is defined by
316 the FAR 2.101 (48 C.F.R. 2.101) and is "commercial computer software" and
317 "commercial computer software documentation" as specified under FAR 12.212
318 (48 C.F.R. 12.212) or DFARS 227.7202 (48 C.F.R. 227.7202), as applicable.
319 This commercial computer software and related documentation is provided to
320 end users for use by and on behalf of the U.S. Government with only those
321 rights as are granted to all other end users pursuant to the terms and
322 conditions of this Agreement.
323
32412. GENERAL PROVISIONS.
325
32612.1 ENTIRE AGREEMENT. This Agreement contains the complete and exclusive
327 agreement and understanding between the parties concerning the subject
328 matter of this Agreement, and supersedes all prior and contemporaneous
329 proposals, agreements, understanding, negotiations, representations,
330 warranties, conditions, and communications, oral or written, between the
331 parties relating to the same subject matter. Each party acknowledges and
332 agrees that in entering into this Agreement it has not relied on, and will
333 not be entitled to rely on, any oral or written representations,
334 warranties, conditions, understanding, or communications between the
335 parties that are not expressly set forth in this Agreement. The express
336 provisions of this Agreement control over any course of performance, course
337 of dealing, or usage of the trade inconsistent with any of the provisions
338 of this Agreement. The provisions of this Agreement will prevail
339 notwithstanding any different, conflicting, or additional provisions that
340 may appear on any purchase order, acknowledgement, invoice, or other
341 writing issued by either party in connection with this Agreement. No
342 modification or amendment to this Agreement will be effective unless in
343 writing and signed by authorized representatives of each party, and must
344 specifically identify this Agreement by its title and version (e.g., "Intel
345 End User License Agreement for Developer Tools (Version October 2021)");
346 except that Intel may make changes to this Agreement as it distributes new
347 versions of the Materials. When changes are made, Intel will make a new
348 version of the Agreement available on its website. If You received a copy
349 of this Agreement translated into another language, the English language
350 version of this Agreement will prevail in the event of any conflict between
351 versions.
352
35312.2 EXPORT. You acknowledge that the Materials and all related technical
354 information are subject to export controls and you agree to comply with all
355 laws and regulations of the United States and other applicable governments
356 governing export, re-export, import, transfer, distribution, and use of the
357 Materials. In particular, but without limitation, the Materials may not be
358 exported or re-exported (i) into any U.S. embargoed countries or (ii) to
359 any person or entity listed on a denial order published by the U.S.
360 government or any other applicable governments. By using the Materials, You
361 represent and warrant that You are not located in any such country or on
362 any such list. You also agree that You will not use the Materials for, or
363 sell or transfer them to a third party who is known or suspected to be
364 involved in, any purposes prohibited by the U.S. government or other
365 applicable governments, including, without limitation, the development,
366 design, manufacture, or production of nuclear, missile, chemical or
367 biological weapons.
368
36912.3 GOVERNING LAW, JURISDICTION, AND VENUE. All disputes arising out of or
370 related to this Agreement, whether based on contract, tort, or any other
371 legal or equitable theory, will in all respects be governed by, and
372 construed and interpreted under, the laws of the United States of America
373 and the State of Delaware, without reference to conflict of laws
374 principles. The parties agree that the United Nations Convention on
375 Contracts for the International Sale of Goods (1980) is specifically
376 excluded from and will not apply to this Agreement. All disputes arising
377 out of or related to this Agreement, whether based on contract, tort, or
378 any other legal or equitable theory, will be subject to the exclusive
379 jurisdiction of the courts of the State of Delaware or of the Federal
380 courts sitting in that State. Each party submits to the personal
381 jurisdiction of those courts and waives all objections to that jurisdiction
382 and venue for those disputes.
383
38412.4 SEVERABILITY. The parties intend that if a court holds that any provision
385 or part of this Agreement is invalid or unenforceable under applicable law,
386 the court will modify the provision to the minimum extent necessary to make
387 it valid and enforceable, or if it cannot be made valid and enforceable,
388 the parties intend that the court will sever and delete the provision or
389 part from this Agreement. Any change to or deletion of a provision or part
390 of this Agreement under this Section will not affect the validity or
391 enforceability of the remainder of this Agreement, which will continue in
392 full force and effect.
diff --git a/custom-licenses/ISSL b/custom-licenses/ISSL
new file mode 100644
index 00000000..f987e502
--- /dev/null
+++ b/custom-licenses/ISSL
@@ -0,0 +1,73 @@
1Intel Simplified Software License (Version August 2021)
2
3Use and Redistribution. You may use and redistribute the software (the
4"Software"), without modification, provided the following conditions are met:
5
6* Redistributions must reproduce the above copyright notice and the following
7 terms of use in the Software and in the documentation and/or other materials
8 provided with the distribution.
9* Neither the name of Intel nor the names of its suppliers may be used to
10 endorse or promote products derived from this Software without specific
11 prior written permission.
12* No reverse engineering, decompilation, or disassembly of this Software is
13 permitted.
14
15No other licenses. Except as provided in the preceding section, Intel grants no
16licenses or other rights by implication, estoppel or otherwise to, patent,
17copyright, trademark, trade name, service mark or other intellectual property
18licenses or rights of Intel.
19
20Third party software. The Software may contain Third Party Software. "Third
21Party Software" is open source software, third party software, or other Intel
22software that may be identified in the Software itself or in the files (if any)
23listed in the "third-party-software.txt" or similarly named text file included
24with the Software. Third Party Software, even if included with the distribution
25of the Software, may be governed by separate license terms, including without
26limitation, open source software license terms, third party software license
27terms, and other Intel software license terms. Those separate license terms
28solely govern your use of the Third Party Software, and nothing in this license
29limits any rights under, or grants rights that supersede, the terms of the
30applicable license terms.
31
32DISCLAIMER. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
33WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
34MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT ARE
35DISCLAIMED. THIS SOFTWARE IS NOT INTENDED FOR USE IN SYSTEMS OR APPLICATIONS
36WHERE FAILURE OF THE SOFTWARE MAY CAUSE PERSONAL INJURY OR DEATH AND YOU AGREE
37THAT YOU ARE FULLY RESPONSIBLE FOR ANY CLAIMS, COSTS, DAMAGES, EXPENSES, AND
38ATTORNEYS' FEES ARISING OUT OF ANY SUCH USE, EVEN IF ANY CLAIM ALLEGES THAT
39INTEL WAS NEGLIGENT REGARDING THE DESIGN OR MANUFACTURE OF THE SOFTWARE.
40
41LIMITATION OF LIABILITY. IN NO EVENT WILL INTEL BE LIABLE FOR ANY DIRECT,
42INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
43BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
45LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
46OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
47ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48
49No support. Intel may make changes to the Software, at any time without notice,
50and is not obligated to support, update or provide training for the Software.
51
52Termination. Your right to use the Software is terminated in the event of your
53breach of this license.
54
55Feedback. Should you provide Intel with comments, modifications, corrections,
56enhancements or other input ("Feedback") related to the Software, Intel will be
57free to use, disclose, reproduce, license or otherwise distribute or exploit the
58Feedback in its sole discretion without any obligations or restrictions of any
59kind, including without limitation, intellectual property rights or licensing
60obligations.
61
62Compliance with laws. You agree to comply with all relevant laws and regulations
63governing your use, transfer, import or export (or prohibition thereof) of the
64Software.
65
66Governing law. All disputes will be governed by the laws of the United States of
67America and the State of Delaware without reference to conflict of law
68principles and subject to the exclusive jurisdiction of the state or federal
69courts sitting in the State of Delaware, and each party agrees that it submits
70to the personal jurisdiction and venue of those courts and waives any
71objections. The United Nations Convention on Contracts for the International
72Sale of Goods (1980) is specifically excluded and will not apply to the
73Software.
diff --git a/custom-licenses/Intel-Microcode-License b/custom-licenses/Intel-Microcode-License
index af5b41c2..707d0908 100644
--- a/custom-licenses/Intel-Microcode-License
+++ b/custom-licenses/Intel-Microcode-License
@@ -1,123 +1,37 @@
1INTEL SOFTWARE LICENSE AGREEMENT 1Copyright (c) 2018-2019 Intel Corporation.
2 2All rights reserved.
3IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING. 3
4Do not use or load this software and any associated materials (collectively, 4Redistribution.
5the "Software") until you have carefully read the following terms and 5
6conditions. By loading or using the Software, you agree to the terms of this 6Redistribution and use in binary form, without modification, are permitted,
7Agreement. If you do not wish to so agree, do not install or use the Software. 7provided that the following conditions are met:
8 8
9LICENSES: Please Note: 91. Redistributions must reproduce the above copyright notice and the
10- If you are a network administrator, the "Site License" below shall 10 following disclaimer in the documentation and/or other materials provided
11apply to you. 11 with the distribution.
12- If you are an end user, the "Single User License" shall apply to you. 12
13- If you are an original equipment manufacturer (OEM), the "OEM License" 132. Neither the name of Intel Corporation nor the names of its suppliers may
14shall apply to you. 14 be used to endorse or promote products derived from this software without
15 15 specific prior written permission.
16SITE LICENSE. You may copy the Software onto your organization's computers 16
17for your organization's use, and you may make a reasonable number of 173. No reverse engineering, decompilation, or disassembly of this software
18back-up copies of the Software, subject to these conditions: 18 is permitted.
19 19
201. This Software is licensed for use only in conjunction with Intel 20
21component products. Use of the Software in conjunction with non-Intel 21"Binary form" includes any format that is commonly used for electronic
22component products is not licensed hereunder. 22conveyance that is a reversible, bit-exact translation of binary
232. You may not copy, modify, rent, sell, distribute or transfer any part 23representation to ASCII or ISO text, for example "uuencode".
24of the Software except as provided in this Agreement, and you agree to 24
25prevent unauthorized copying of the Software. 25DISCLAIMER.
263. You may not reverse engineer, decompile, or disassemble the Software. 26
274. You may not sublicense or permit simultaneous use of the Software by 27THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28more than one user. 28AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
295. The Software may include portions offered on terms in addition to those 29IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30set out here, as set out in a license accompanying those portions. 30ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
31 31LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32SINGLE USER LICENSE. You may copy the Software onto a single computer for 32CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33your personal, noncommercial use, and you may make one back-up copy of the 33SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34Software, subject to these conditions: 34INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35 35CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
361. This Software is licensed for use only in conjunction with Intel 36ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37component products. Use of the Software in conjunction with non-Intel 37POSSIBILITY OF SUCH DAMAGE.
38component products is not licensed hereunder.
392. You may not copy, modify, rent, sell, distribute or transfer any part
40of the Software except as provided in this Agreement, and you agree to
41prevent unauthorized copying of the Software.
423. You may not reverse engineer, decompile, or disassemble the Software.
434. You may not sublicense or permit simultaneous use of the Software by
44more than one user.
455. The Software may include portions offered on terms in addition to those
46set out here, as set out in a license accompanying those portions.
47
48OEM LICENSE: You may reproduce and distribute the Software only as an
49integral part of or incorporated in Your product or as a standalone
50Software maintenance update for existing end users of Your products,
51excluding any other standalone products, subject to these conditions:
52
531. This Software is licensed for use only in conjunction with Intel
54component products. Use of the Software in conjunction with non-Intel
55component products is not licensed hereunder.
562. You may not copy, modify, rent, sell, distribute or transfer any part
57of the Software except as provided in this Agreement, and you agree to
58prevent unauthorized copying of the Software.
593. You may not reverse engineer, decompile, or disassemble the Software.
604. You may only distribute the Software to your customers pursuant to a
61written license agreement. Such license agreement may be a "break-the-
62seal" license agreement. At a minimum such license shall safeguard
63Intel's ownership rights to the Software.
645. The Software may include portions offered on terms in addition to those
65set out here, as set out in a license accompanying those portions.
66
67NO OTHER RIGHTS. No rights or licenses are granted by Intel to You, expressly
68or by implication, with respect to any proprietary information or patent,
69copyright, mask work, trademark, trade secret, or other intellectual property
70right owned or controlled by Intel, except as expressly provided in this
71Agreement.
72
73OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Title to all copies of the Software
74remains with Intel or its suppliers. The Software is copyrighted and
75protected by the laws of the United States and other countries, and
76international treaty provisions. You may not remove any copyright notices
77from the Software. Intel may make changes to the Software, or to items
78referenced therein, at any time without notice, but is not obligated to
79support or update the Software. Except as otherwise expressly provided, Intel
80grants no express or implied right under Intel patents, copyrights,
81trademarks, or other intellectual property rights. You may transfer the
82Software only if the recipient agrees to be fully bound by these terms and if
83you retain no copies of the Software.
84
85LIMITED MEDIA WARRANTY. If the Software has been delivered by Intel on
86physical media, Intel warrants the media to be free from material physical
87defects for a period of ninety days after delivery by Intel. If such a defect
88is found, return the media to Intel for replacement or alternate delivery of
89the Software as Intel may select.
90
91EXCLUSION OF OTHER WARRANTIES. EXCEPT AS PROVIDED ABOVE, THE SOFTWARE IS
92PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND
93INCLUDING WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A
94PARTICULAR PURPOSE. Intel does not warrant or assume responsibility for the
95accuracy or completeness of any information, text, graphics, links or other
96items contained within the Software.
97
98LIMITATION OF LIABILITY. IN NO EVENT SHALL INTEL OR ITS SUPPLIERS BE LIABLE
99FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, LOST PROFITS,
100BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE OF OR
101INABILITY TO USE THE SOFTWARE, EVEN IF INTEL HAS BEEN ADVISED OF THE
102POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR
103LIMITATION OF LIABILITY FOR IMPLIED WARRANTIES OR CONSEQUENTIAL OR INCIDENTAL
104DAMAGES, SO THE ABOVE LIMITATION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE
105OTHER LEGAL RIGHTS THAT VARY FROM JURISDICTION TO JURISDICTION.
106
107TERMINATION OF THIS AGREEMENT. Intel may terminate this Agreement at any time
108if you violate its terms. Upon termination, you will immediately destroy the
109Software or return all copies of the Software to Intel.
110
111APPLICABLE LAWS. Claims arising under this Agreement shall be governed by the
112laws of California, excluding its principles of conflict of laws and the
113United Nations Convention on Contracts for the Sale of Goods. You may not
114export the Software in violation of applicable export laws and regulations.
115Intel is not obligated under any other agreements unless they are in writing
116and signed by an authorized representative of Intel.
117
118GOVERNMENT RESTRICTED RIGHTS. The Software is provided with "RESTRICTED
119RIGHTS." Use, duplication, or disclosure by the Government is subject to
120restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its
121successor. Use of the Software by the Government constitutes acknowledgment
122of Intel's proprietary rights therein. Contractor or Manufacturer is Intel
1232200 Mission College Blvd., Santa Clara, CA 95052.
diff --git a/custom-licenses/syrah b/custom-licenses/syrah
new file mode 100644
index 00000000..5cd7f4e6
--- /dev/null
+++ b/custom-licenses/syrah
@@ -0,0 +1,32 @@
1Copyright (c) 2009, Stanford University, and authors listed below.
2All rights reserved.
3
4Original authors:
5 Solomon Boulos
6
7Redistribution and use in source and binary forms, with or without
8modification, are permitted provided that the following conditions are
9met:
10
11Redistributions of source code must retain the above copyright notice,
12this list of conditions and the following disclaimer.
13
14Redistributions in binary form must reproduce the above copyright
15notice, this list of conditions and the following disclaimer in the
16documentation and/or other materials provided with the distribution.
17
18Neither the name of Stanford University nor the names of its
19contributors may be used to endorse or promote products derived from
20this software without specific prior written permission.
21
22THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
25A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
26HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
27SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
28LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file
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/dpcpp-compiler.md b/documentation/dpcpp-compiler.md
new file mode 100644
index 00000000..b709a685
--- /dev/null
+++ b/documentation/dpcpp-compiler.md
@@ -0,0 +1,107 @@
1Intel(R) oneAPI DPC++/C++ Compiler (ICX) toolchain
2==========================================================================
3
4Get Started with the Intel oneAPI DPC++/C++ Compiler:
5
6https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html#
7
8
9Getting Started
10===============
11
12Clone the required layers and include them in bblayers.conf:
13
14```
15git clone https://git.openembedded.org/openembedded-core
16git clone https://git.openembedded.org/bitbake
17git clone https://git.openembedded.org/meta-openembedded
18git clone https://github.com/kraj/meta-clang.git
19git clone https://git.yoctoproject.org/meta-intel
20
21$ source openembedded-core/oe-init-build-env
22
23$ bitbake-layers add-layer ../meta-openembedded/meta-oe/
24$ bitbake-layers add-layer ../meta-intel
25$ bitbake-layers add-layer ../meta-clang
26```
27
28Distro
29======
30
31Note that oneAPI DPC++/C++ compiler currently only works when the vendor string is "oe".
32
33```
34DISTRO ?= "nodistro"
35```
36
37MACHINE configuration
38=====================
39
40```
41MACHINE ?= "intel-skylake-64"
42```
43
44Package installation
45====================
46
47```
48# To include OpenCL driver that might be needed when compiling SYCL programs, include:
49IMAGE_INSTALL:append = " intel-compute-runtime intel-graphics-compiler"
50
51# To install only runtime libraries, include:
52IMAGE_INSTALL:append = " intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev"
53
54# To install the toolchain, include:
55IMAGE_INSTALL:append = " intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev"
56```
57in local.conf.
58
59Build an image
60==============
61
62```
63$ bitbake core-image-minimal
64```
65
66Including oneAPI C++/DPC++ compiler in generated SDK toolchain
67==============================================================
68
69The compiler is not included in the generated SDK by default. If it is expected to be part of SDK, add ICXSDK = "1" in local.conf:
70
71```
72ICXSDK = "1"
73```
74
75Generate SDK:
76```
77bitbake core-image-minimal -c populate_sdk
78```
79
80
81To setup PATH variables on target
82=================================
83
84Once image is booted successfully, some variables would need to be exported to make sure compiler can be used:
85
86```
87$ source /opt/intel/oneapi/compiler/2022.1.0/env/vars.sh
88
89$ mkdir -p /lib64
90
91$ ln -sf /lib/ld-linux-x86-64.so.2 /lib64/ld-linux-x86-64.so.2
92```
93
94Build application and run
95=========================
96
97To compile a sycl application, for example:
98
99```
100$ icpx --target=x86_64-oe-linux -fsycl simple-sycl-app.c -o simple-sycl-app
101```
102
103To run:
104
105```
106$ ./simple-sycl-app
107```
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/files/run-ptest b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
new file mode 100755
index 00000000..82d4df58
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/files/run-ptest
@@ -0,0 +1,15 @@
1#!/bin/sh
2
3cd tests
4./api-c
5if [ $? -eq 0 ]; then
6 echo 'PASS: api-c'
7else
8 echo 'FAIL: api-c'
9fi
10./test_c_symbols-c
11if [ $? -eq 0 ]; then
12 echo 'PASS: test_c_symbols-c'
13else
14 echo 'FAIL: test_c_symbols-c'
15fi
diff --git a/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
new file mode 100644
index 00000000..7a627e83
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-core/dnn/onednn_3.5.3.bb
@@ -0,0 +1,57 @@
1HOMEPAGE = "https://www.oneapi.com"
2SUMMARY = "Deep Neural Network Library"
3DESCRIPTION = "This software is a user mode library that accelerates\
4deep-learning applications and frameworks on Intel architecture."
5LICENSE = "Apache-2.0 & BSD-3-Clause & BSL-1.0"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=3b64000f6e7d52516017622a37a94ce9 \
7 file://tests/gtests/gtest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
8 file://src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
9 file://src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
10 "
11SECTION = "lib"
12
13inherit pkgconfig cmake ptest
14
15DNN_BRANCH = "rls-v${@'.'.join(d.getVar('PV').split('.')[0:2])}"
16
17S = "${WORKDIR}/git"
18SRCREV = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af"
19SRC_URI = "git://github.com/oneapi-src/oneDNN.git;branch=${DNN_BRANCH};protocol=https \
20 file://run-ptest \
21 "
22
23UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
24
25CVE_PRODUCT = "intel:math_kernel_library"
26
27COMPATIBLE_HOST = '(x86_64).*-linux'
28COMPATIBLE_HOST:libc-musl = 'null'
29
30EXTRA_OECMAKE += " \
31 -DDNNL_LIBRARY_TYPE=SHARED \
32 -DDNNL_BUILD_EXAMPLES=ON \
33 -DDNNL_BUILD_TESTS=ON \
34 -DDNNL_CPU_RUNTIME=OMP \
35 -DDNNL_ARCH_OPT_FLAGS="" \
36 -DCMAKE_SKIP_RPATH=ON \
37 -DONEDNN_BUILD_GRAPH=OFF \
38 "
39
40PACKAGECONFIG ??= "gpu"
41PACKAGECONFIG[gpu] = "-DDNNL_GPU_RUNTIME=OCL, , opencl-headers virtual/opencl-icd, intel-compute-runtime"
42
43do_install:append () {
44 install -d ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
45 install -m 0755 ${B}/tests/benchdnn/benchdnn ${D}${bindir}/mkl-dnn/tests/benchdnn
46 cp -r ${B}/tests/benchdnn/inputs/* ${D}${bindir}/mkl-dnn/tests/benchdnn/inputs
47}
48
49do_install_ptest () {
50 install -d ${D}${PTEST_PATH}/tests
51 install -m 0755 ${B}/tests/api-c ${D}${PTEST_PATH}/tests
52 install -m 0755 ${B}/tests/test_c_symbols-c ${D}${PTEST_PATH}/tests
53}
54
55PACKAGES =+ "${PN}-test"
56
57FILES:${PN}-test = "${bindir}/mkl-dnn/*"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-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
new file mode 100644
index 00000000..45288ce1
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0002-Build-not-able-to-locate-cpp_generation_tool.patch
@@ -0,0 +1,41 @@
1From 8c330d0cb5167612296801f0202b0de35e9ca88d Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Sat, 21 Aug 2021 16:09:39 -0700
4Subject: [PATCH 2/5] Build not able to locate cpp_generation_tool.
5
6Upstream-Status: Inappropriate [oe specific]
7
8Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
9Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
10---
11 shared/source/built_ins/kernels/CMakeLists.txt | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-)
13
14Index: git/shared/source/built_ins/kernels/CMakeLists.txt
15===================================================================
16--- git.orig/shared/source/built_ins/kernels/CMakeLists.txt
17+++ git/shared/source/built_ins/kernels/CMakeLists.txt
18@@ -122,9 +122,9 @@ function(compile_builtin core_type platf
19 endif()
20 add_custom_command(
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}
23+ COMMAND cpp_generate_tool --file ${BINARY_OUTPUT}.bin --output ${OUTPUT_FILE_CPP} --array ${mode}_${BASENAME} --device ${RELEASE_FILENAME}
24 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
25- DEPENDS ${OUTPUT_FILES_BINARIES} $<TARGET_FILE:cpp_generate_tool>
26+ DEPENDS ${OUTPUT_FILES_BINARIES} cpp_generate_tool
27 )
28 list(APPEND BUILTINS_COMMANDS "${OUTPUT_FILE_CPP}")
29 else()
30@@ -176,9 +176,9 @@ function(generate_cpp_spirv builtin)
31 endif()
32 add_custom_command(
33 OUTPUT ${OUTPUT_FILE_CPP}
34- COMMAND $<TARGET_FILE:cpp_generate_tool> --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
35+ COMMAND cpp_generate_tool --file ${GENERATED_SPV_INPUT} --output ${OUTPUT_FILE_CPP} --array ${BASENAME}
36 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
37- DEPENDS ${GENERATED_SPV_INPUT} $<TARGET_FILE:cpp_generate_tool>
38+ DEPENDS ${GENERATED_SPV_INPUT} cpp_generate_tool
39 )
40 set(OUTPUT_LIST_CPP_FILES ${OUTPUT_LIST_CPP_FILES} ${OUTPUT_FILE_CPP} PARENT_SCOPE)
41 else()
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
new file mode 100644
index 00000000..2001d839
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime/0003-external-ocloc.patch
@@ -0,0 +1,38 @@
1From 0006db5f55a9f08bd3452558a53704cd3bbb790f Mon Sep 17 00:00:00 2001
2From: Dongwon Kim <dongwon.kim@intel.com>
3Date: Wed, 2 Mar 2022 15:52:45 -0800
4Subject: [PATCH 3/5] external ocloc
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
9---
10 cmake/ocloc_cmd_prefix.cmake | 14 ++++++++------
11 1 file changed, 8 insertions(+), 6 deletions(-)
12
13Index: git/cmake/ocloc_cmd_prefix.cmake
14===================================================================
15--- git.orig/cmake/ocloc_cmd_prefix.cmake
16+++ git/cmake/ocloc_cmd_prefix.cmake
17@@ -4,13 +4,15 @@
18 # SPDX-License-Identifier: MIT
19 #
20
21-if(WIN32)
22- set(ocloc_cmd_prefix ocloc)
23-else()
24- if(DEFINED NEO__IGC_LIBRARY_PATH)
25- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
26+if(NOT DEFINED ocloc_cmd_prefix)
27+ if(WIN32)
28+ set(ocloc_cmd_prefix ocloc)
29 else()
30- set(ocloc_cmd_prefix ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib>" $<TARGET_FILE:ocloc>)
31+ if(DEFINED NEO__IGC_LIBRARY_PATH)
32+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NEO__IGC_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
33+ else()
34+ set(ocloc_cmd_prefix LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$<TARGET_FILE_DIR:ocloc_lib> $<TARGET_FILE:ocloc>)
35+ endif()
36 endif()
37 endif()
38
diff --git a/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
new file mode 100644
index 00000000..635e8c2f
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/compute-runtime/intel-compute-runtime_25.13.33276.16.bb
@@ -0,0 +1,63 @@
1SUMMARY = "The Intel(R) Graphics Compute Runtime for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compute Runtime for OpenCL(TM) \
3is an open source project to converge Intel's development efforts \
4on OpenCL(TM) compute stacks supporting the GEN graphics hardware \
5architecture."
6
7LICENSE = "MIT & Apache-2.0"
8LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eca6ec6997e18db166db7109cdbe611c \
9 file://third_party/opencl_headers/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
10
11SRC_URI = "git://github.com/intel/compute-runtime.git;protocol=https;branch=releases/25.13 \
12 file://0002-Build-not-able-to-locate-cpp_generation_tool.patch \
13 file://0003-external-ocloc.patch \
14 "
15
16SRCREV = "a9961bdfaa07250fd52ff930bf8f31fb4e3b7799"
17
18S = "${WORKDIR}/git"
19
20DEPENDS += " intel-graphics-compiler gmmlib libva qemu-native"
21
22RDEPENDS:${PN} += " intel-graphics-compiler gmmlib"
23
24inherit cmake pkgconfig qemu
25
26COMPATIBLE_HOST = '(x86_64).*-linux'
27COMPATIBLE_HOST:libc-musl = "null"
28
29EXTRA_OECMAKE = " \
30 -DIGC_DIR=${STAGING_INCDIR}/igc \
31 -DBUILD_TYPE=Release \
32 -DSKIP_UNIT_TESTS=1 \
33 -DCCACHE_ALLOWED=FALSE \
34 -DNEO_DISABLE_LD_LLD=ON \
35 -DNEO_DISABLE_LD_GOLD=ON \
36 "
37
38EXTRA_OECMAKE:append:class-target = " \
39 -Docloc_cmd_prefix=ocloc \
40 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
41 "
42
43PACKAGECONFIG ??= ""
44PACKAGECONFIG[levelzero] = "-DBUILD_WITH_L0=ON, -DBUILD_WITH_L0=OFF, level-zero"
45
46do_configure:prepend:class-target () {
47 # Write out a qemu wrapper that will be used by cmake.
48 qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${B}/bin'),d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
49 cat > ${WORKDIR}/qemuwrapper << EOF
50#!/bin/sh
51$qemu_binary "\$@"
52EOF
53 chmod +x ${WORKDIR}/qemuwrapper
54}
55
56FILES:${PN} += " \
57 ${libdir}/intel-opencl/libigdrcl.so \
58 ${libdir}/libocloc.so \
59 "
60
61FILES:${PN}-dev = "${includedir}"
62
63UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
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
new file mode 100644
index 00000000..456a8c65
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-BiF-CMakeLists.txt-remove-opt-from-DEPENDS.patch
@@ -0,0 +1,32 @@
1From 1b98a931c3bf8daccc48cd618335ff35e3d382da Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 12 Oct 2021 23:46:42 +0800
4Subject: [PATCH] BiF/CMakeLists.txt: remove opt from DEPENDS
5
6Otherwise it starts failing with:
7
8| ninja: error: 'IGC/VectorCompiler/lib/BiF/opt', needed by 'IGC/VectorCompiler/lib/BiF/VCBiFPrintfOCL32.opt.bc', missing and no known rule to make it
9
10We don't need to explicitly make sure opt is built when
11using prebuilt binaries.
12
13Upstream-Status: Inappropriate
14
15Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
16---
17 IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-)
19
20Index: git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
21===================================================================
22--- git.orig/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
23+++ git/IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
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}"
26 COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL}
27 COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH}
28- DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS})
29+ DEPENDS CMCLTranslatorTool ${BIF_CLANG_BC_PATH_FINAL})
30
31 add_custom_target(${TARGET_NAME}
32 DEPENDS ${BIF_OPT_BC_PATH}
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
new file mode 100644
index 00000000..fc66b71d
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-external-SPIRV-Tools-change-path-to-tools-and-header.patch
@@ -0,0 +1,30 @@
1From 251e2854dd206ebf66e5908d3277e4585fe2a63b Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Mon, 9 Jan 2023 11:43:05 +0800
4Subject: [PATCH] external/SPIRV-Tools: change path to tools and headers
5
6We clone the SPIRV headers and tools in a different directory to ensure
7file path substitutions take place.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 external/SPIRV-Tools/CMakeLists.txt | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16Index: git/external/SPIRV-Tools/CMakeLists.txt
17===================================================================
18--- git.orig/external/SPIRV-Tools/CMakeLists.txt
19+++ git/external/SPIRV-Tools/CMakeLists.txt
20@@ -45,8 +45,8 @@ else() #By default use build from source
21 message(STATUS "[SPIRV-Tools] : Building from source")
22 message(STATUS "[SPIRV-Tools] : Current source dir: ${CMAKE_CURRENT_SOURCE_DIR}")
23
24- set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Headers") # used in subdirectory
25- set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../SPIRV-Tools")
26+ set(SPIRV-Headers_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Headers") # used in subdirectory
27+ set(SPIRV-Tools_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SPIRV-Tools")
28
29 set(SPIRV-Tools_OUTPUT_DIR "${IGC_OPTION__OUTPUT_DIR}/external/SPIRV-Tools/build")
30 set(IGC_BUILD__SPIRV-Headers_DIR "${SPIRV-Headers_SOURCE_DIR}")
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
new file mode 100644
index 00000000..3d9ae02f
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0001-fix-tblgen.patch
@@ -0,0 +1,23 @@
1From 1641dc87b2ed6b6b87b2cef824e4d66da65b0b30 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 19 May 2022 22:50:09 +0800
4Subject: [PATCH] fix tblgen
5
6Upstream-Status: Inappropriate [OE specific]
7---
8 IGC/cmake/igc_llvm.cmake | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11diff --git a/IGC/cmake/igc_llvm.cmake b/IGC/cmake/igc_llvm.cmake
12index b708cc904..fe4668890 100644
13--- a/IGC/cmake/igc_llvm.cmake
14+++ b/IGC/cmake/igc_llvm.cmake
15@@ -53,7 +53,7 @@ else()
16 set(LLVM_OPT_EXE "opt" CACHE STRING "")
17
18 set(LLVM_TABLEGEN_EXE "llvm-tblgen")
19- if(CMAKE_CROSSCOMPILING)
20+ if(TRUE)
21 if(DEFINED LLVM_TABLEGEN)
22 set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN})
23 else()
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
new file mode 100644
index 00000000..4269fadf
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/files/0003-Improve-Reproducibility-for-src-package.patch
@@ -0,0 +1,33 @@
1From ca136c04d4ac60e3febc8ea2b9c4d4736365a424 Mon Sep 17 00:00:00 2001
2From: Lee Chee Yang <chee.yang.lee@intel.com>
3Date: Wed, 2 Sep 2020 08:28:35 +0800
4Subject: [PATCH] Improve Reproducibility for src package
5
6Improve reproducibility for intel-graphics-compiler-src package.
7needs to pass build path as environment variable to the build.
8this only works on bison 3.7 onward, hence check for bison version
9before adding the flags.
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>
12---
13 visa/CMakeLists.txt | 7 +++++--
14 1 file changed, 5 insertions(+), 2 deletions(-)
15
16Index: git/visa/CMakeLists.txt
17===================================================================
18--- git.orig/visa/CMakeLists.txt
19+++ git/visa/CMakeLists.txt
20@@ -135,8 +135,11 @@ endif()
21 set(bison_output_file ${CMAKE_CURRENT_BINARY_DIR}/CISA.tab.cpp)
22 set(flex_output_file ${CMAKE_CURRENT_BINARY_DIR}/lex.CISA.cpp)
23
24-BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-vt -p CISA")
25-FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA ${WIN_FLEX_FLAG}")
26+if(BISON_VERSION VERSION_GREATER_EQUAL "3.7.0")
27+ set(BISON_EXTRA_FLAGS " --file-prefix-map=$ENV{B}=/igc/ ")
28+endif()
29+BISON_TARGET(CISAParser CISA.y ${bison_output_file} COMPILE_FLAGS "-l -vt -p CISA ${BISON_EXTRA_FLAGS} ")
30+FLEX_TARGET(CISAScanner CISA.l ${flex_output_file} COMPILE_FLAGS "-PCISA -L ${WIN_FLEX_FLAG} ")
31 ADD_FLEX_BISON_DEPENDENCY(CISAScanner CISAParser)
32 set(CISAScanner_dependencies)
33
diff --git a/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
new file mode 100644
index 00000000..b6d8ddeb
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/igc/intel-graphics-compiler_2.10.10.bb
@@ -0,0 +1,79 @@
1SUMMARY = "The Intel(R) Graphics Compiler for OpenCL(TM)"
2DESCRIPTION = "The Intel(R) Graphics Compiler for OpenCL(TM) is an \
3llvm based compiler for OpenCL(TM) targeting Intel Gen graphics \
4hardware architecture."
5
6LICENSE = "MIT & Apache-2.0"
7LIC_FILES_CHKSUM = "file://IGC/BiFModule/Implementation/ExternalLibraries/libclc/LICENSE.TXT;md5=311cfc1a5b54bab8ed34a0b5fba4373e \
8 file://LICENSE.md;md5=488d74376edf2765f6e78d271543dde3 \
9 file://NOTICES.txt;md5=b81a52411c84df3419f20bad4d755880"
10
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 \
13 git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/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 \
15 file://0003-Improve-Reproducibility-for-src-package.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 \
18 file://0001-Build-not-able-to-locate-BiFManager-bin.patch \
19 "
20
21SRC_URI:append:class-native = " file://0001-fix-tblgen.patch"
22
23SRCREV_igc = "83925314d4fc32b017fcbfcd73e0667ba833fb8f"
24SRCREV_vc = "9d255266e1df8f1dc5d11e1fbb03213acfaa4fc7"
25SRCREV_spirv-tools = "f289d047f49fb60488301ec62bafab85573668cc"
26SRCREV_spirv-headers = "0e710677989b4326ac974fd80c5308191ed80965"
27
28SRCREV_FORMAT = "igc_vc_spirv-tools_spirv-headers"
29
30# Used to replace with relative path in reproducibility patch
31export B
32
33S = "${WORKDIR}/git"
34
35inherit cmake pkgconfig qemu python3native
36
37CXXFLAGS:append = " -Wno-error=nonnull"
38
39COMPATIBLE_HOST = '(x86_64).*-linux'
40COMPATIBLE_HOST:libc-musl = "null"
41
42DEPENDS += " flex-native bison-native clang clang-cross-x86_64 opencl-clang qemu-native python3-mako-native \
43 python3-pyyaml-native \
44 "
45
46RDEPENDS:${PN} += "opencl-clang"
47
48PACKAGECONFIG ??= "vc"
49PACKAGECONFIG[vc] = "-DIGC_BUILD__VC_ENABLED=ON -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR=ON -DIGC_OPTION__SPIRV_TRANSLATOR_MODE=Prebuilds,-DIGC_BUILD__VC_ENABLED=OFF,"
50
51EXTRA_OECMAKE = " \
52 -DIGC_OPTION__LLVM_PREFERRED_VERSION=${LLVMVERSION} \
53 -DVC_INTRINSICS_SRC="${S}/vc-intrinsics" \
54 -DIGC_OPTION__LLVM_MODE=Prebuilds \
55 -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
56 -DLLVM_LINK_EXE=${STAGING_BINDIR_NATIVE}/llvm-link \
57 -DCLANG_EXE=${STAGING_BINDIR_NATIVE}/clang \
58 -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \
59 "
60
61do_configure:prepend:class-target () {
62 # Write out a qemu wrapper that will be used by cmake.
63 qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
64 cat > ${WORKDIR}/qemuwrapper << EOF
65#!/bin/sh
66$qemu_binary "\$@"
67EOF
68 chmod +x ${WORKDIR}/qemuwrapper
69}
70
71
72UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>\d+(\.\d+)+)$"
73
74FILES:${PN} += " \
75 ${libdir}/igc2/NOTICES.txt \
76 "
77
78# libigc.so contains buildpaths
79INSANE_SKIP:${PN} += "buildpaths"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch
new file mode 100644
index 00000000..031a77c7
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0001-cl_headers-CMakeLists.txt-use-clang-from-native-sysr.patch
@@ -0,0 +1,49 @@
1From 5aea653e611b59c70e529a1bd71885a509831557 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Tue, 1 Aug 2023 11:15:31 +0800
4Subject: [PATCH] cl_headers/CMakeLists.txt: use clang from native sysroot
5
6Allow clang to be found in target sysroot for target builds and dont try
7to compile cross binaries, we do that ourselves.
8
9Upstream-Status: Inappropriate [oe-specific]
10Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
11---
12 CMakeLists.txt | 8 ++++----
13 cl_headers/CMakeLists.txt | 2 +-
14 2 files changed, 5 insertions(+), 5 deletions(-)
15
16diff --git a/CMakeLists.txt b/CMakeLists.txt
17index 5864009..60ba39e 100644
18--- a/CMakeLists.txt
19+++ b/CMakeLists.txt
20@@ -35,10 +35,10 @@ set(CMAKE_MODULE_PATH
21
22 include(CMakeFunctions)
23
24-if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
25- include(CrossCompile)
26- llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
27-endif()
28+#if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
29+# include(CrossCompile)
30+# llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
31+#endif()
32
33 if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
34 set(USE_PREBUILT_LLVM ON)
35diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
36index 16cabb7..4423536 100644
37--- a/cl_headers/CMakeLists.txt
38+++ b/cl_headers/CMakeLists.txt
39@@ -1,6 +1,6 @@
40 set(CL_HEADERS_LIB cl_headers)
41 if(USE_PREBUILT_LLVM)
42- find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
43+ find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR})
44 else()
45 set(CLANG_COMMAND $<TARGET_FILE:clang>)
46 endif()
47--
482.37.3
49
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch
new file mode 100644
index 00000000..2f1814f8
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/files/0002-Request-native-clang-only-when-cross-compiling-464.patch
@@ -0,0 +1,60 @@
1From 43c806ef321b1f677a49d28c89fb7ffecf539c2d Mon Sep 17 00:00:00 2001
2From: Tim Creech <timothy.m.creech@intel.com>
3Date: Wed, 28 Jun 2023 03:45:51 -0400
4Subject: [PATCH 2/2] Request native clang only when cross-compiling (#464)
5
6* Request native clang only when cross-compiling
7
8LLVM_USE_HOST_TOOLS may be set if LLVM is configured with
9LLVM_OPTIMIZED_TABLEGEN, which does not necessarily indicate
10cross-compilation or that clang will only execute on the target.
11
12By checking that CMAKE_CROSSCOMPILING is set, we ensure that we only
13build/use clang again if necessary for host execution.
14
15* fixup: CMAKE_CROSSCOMPILING implies LLVM_USE_HOST_TOOLS
16
17Co-authored-by: Wenju He <wenju.he@intel.com>
18
19* fixup: also use CMAKE_CROSSCOMPILING in top-level CMakeLists.txt
20
21---------
22
23Co-authored-by: Wenju He <wenju.he@intel.com>
24
25Upstream-Status: Backport [https://github.com/intel/opencl-clang/commit/53843eee13cfb2357919ee02714a43bef1af0f86]
26Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
27---
28 CMakeLists.txt | 2 +-
29 cl_headers/CMakeLists.txt | 2 +-
30 2 files changed, 2 insertions(+), 2 deletions(-)
31
32diff --git a/CMakeLists.txt b/CMakeLists.txt
33index e772de9..5864009 100644
34--- a/CMakeLists.txt
35+++ b/CMakeLists.txt
36@@ -35,7 +35,7 @@ set(CMAKE_MODULE_PATH
37
38 include(CMakeFunctions)
39
40-if(LLVM_USE_HOST_TOOLS AND OPENCL_CLANG_BUILD_EXTERNAL)
41+if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
42 include(CrossCompile)
43 llvm_create_cross_target(${PROJECT_NAME} NATIVE "" Release)
44 endif()
45diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt
46index 18296c2..16cabb7 100644
47--- a/cl_headers/CMakeLists.txt
48+++ b/cl_headers/CMakeLists.txt
49@@ -4,7 +4,7 @@ if(USE_PREBUILT_LLVM)
50 else()
51 set(CLANG_COMMAND $<TARGET_FILE:clang>)
52 endif()
53-if(LLVM_USE_HOST_TOOLS AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
54+if(CMAKE_CROSSCOMPILING AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
55 build_native_tool(clang CLANG_COMMAND)
56 endif()
57
58--
592.37.3
60
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
new file mode 100644
index 00000000..31a3fb21
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang.inc
@@ -0,0 +1,34 @@
1SUMMARY = "Common clang is a thin wrapper library around clang"
2DESCRIPTION = "Common clang has OpenCL-oriented API and is capable \
3 to compile OpenCL C kernels to SPIR-V modules."
4
5LICENSE = "NCSA"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=e8a15bf1416762a09ece07e44c79118c"
7
8SRC_URI = "git://github.com/intel/opencl-clang.git;branch=${BRANCH};protocol=https \
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 \
11 "
12S = "${WORKDIR}/git"
13
14inherit cmake
15DEPENDS += "clang"
16DEPENDS:append:class-target = " opencl-clang-native"
17
18COMPATIBLE_HOST = '(x86_64).*-linux'
19COMPATIBLE_HOST:libc-musl = "null"
20
21DEPENDS += " spirv-llvm-translator"
22
23EXTRA_OECMAKE += "\
24 -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen \
25 -DCMAKE_SKIP_RPATH=TRUE \
26 -DPREFERRED_LLVM_VERSION=${LLVMVERSION} \
27 "
28
29do_install:append:class-native() {
30 install -d ${D}${bindir}
31 install -m 0755 ${B}/bin/linux_resource_linker ${D}${bindir}/
32}
33
34BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb
new file mode 100644
index 00000000..e946c31c
--- /dev/null
+++ b/dynamic-layers/clang-layer/recipes-opencl/opencl-clang/opencl-clang_15.0.0.bb
@@ -0,0 +1,5 @@
1require opencl-clang.inc
2
3SRCREV = "60fd799cc58755c16d951f9ebfde6d0f9b8554dd"
4
5BRANCH = "ocl-open-150"
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/lms_2406.0.0.0.bb b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
new file mode 100644
index 00000000..c71ac9ea
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/amt/lms_2406.0.0.0.bb
@@ -0,0 +1,45 @@
1SUMMARY = "Intel(R) Local Managability Service"
2DESCRIPTION = "Intel Local Manageability Service allows applications \
3to access the Intel Active Management Technology (AMT) firmware via \
4the Intel Management Engine Interface (MEI)."
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
8
9COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
10
11COMPATIBLE_HOST:libc-musl = "null"
12
13inherit cmake systemd features_check python3native
14
15DEPENDS = "metee ace xerces-c libnl libxml2 glib-2.0 glib-2.0-native pkgconfig-native python3-packaging-native"
16
17# Enable either connman or networkmanager or none but not both.
18PACKAGECONFIG ??= "connman"
19PACKAGECONFIG[connman] = "-DNETWORK_CN=ON, -DNETWORK_CN=OFF, connman"
20PACKAGECONFIG[networkmanager] = "-DNETWORK_NM=ON, -DNETWORK_NM=OFF, networkmanager"
21
22REQUIRED_DISTRO_FEATURES = "systemd"
23
24FILES:${PN} += "${datadir}/dbus-1/system-services/*.service"
25
26S = "${WORKDIR}/git"
27
28SYSTEMD_SERVICE:${PN} = "lms.service"
29
30SRC_URI = "git://github.com/intel/lms.git;branch=master;protocol=https \
31 file://0001-LMS-fix-build-issue-with-gcc-15.patch \
32 "
33SRCREV = "388f115b2aeb3ea11499971c65f828daefd32c47"
34
35do_install:append() {
36 install -d ${D}${sysconfdir}/lms
37 install -d ${D}${systemd_system_unitdir}
38 install -m 0644 ${B}/UNS/lms.service ${D}${systemd_system_unitdir}
39 install -d ${D}${sysconfdir}/udev/rules.d
40 install -m 0644 ${S}/UNS/linux_scripts/70-mei-wdt.rules ${D}${sysconfdir}/udev/rules.d/70-mei-wdt.rules
41}
42
43RDEPENDS:${PN} += "ace"
44
45CVE_STATUS[CVE-2018-1000535] = "cpe-incorrect: This CVE is for a different LMS - Lan Management System."
diff --git a/recipes-bsp/thermald/thermald_1.7.2.bb b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
index 506cd4c8..fee089de 100644
--- a/recipes-bsp/thermald/thermald_1.7.2.bb
+++ b/dynamic-layers/openembedded-layer/recipes-bsp/thermald/thermald_2.5.8.bb
@@ -6,29 +6,37 @@ compensation using available cooling methods."
6 6
7HOMEPAGE = "https://github.com/01org/thermal_daemon" 7HOMEPAGE = "https://github.com/01org/thermal_daemon"
8 8
9DEPENDS = "dbus dbus-glib dbus-glib-native libxml2 glib-2.0 glib-2.0-native" 9DEPENDS = "dbus dbus-glib dbus-glib-native libxml2 glib-2.0 glib-2.0-native upower libevdev"
10DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','',d)}" 10DEPENDS += "autoconf-archive-native"
11DEPENDS_append_libc-musl = " argp-standalone" 11
12DEPENDS_append_toolchain-clang = " openmp" 12LICENSE = "GPL-2.0-only"
13LICENSE = "GPLv2"
14LIC_FILES_CHKSUM = "file://COPYING;md5=ea8831610e926e2e469075b52bf08848" 13LIC_FILES_CHKSUM = "file://COPYING;md5=ea8831610e926e2e469075b52bf08848"
15 14
16SRC_URI = "git://github.com/intel/thermal_daemon/ \ 15SRC_URI = "git://github.com/intel/thermal_daemon/;branch=master;protocol=https \
17 file://0001-Include-poll.h-instead-of-sys-poll.h.patch \
18 file://0002-Use-correct-format-specifier-for-X32.patch \
19 " 16 "
20SRCREV = "855c91c91b3b5b52c02cb1adc0dd940f8a39df1b" 17
18SRCREV = "df3b9ab0ffe780c4fbad7750987eff76f659cfd5"
21S = "${WORKDIR}/git" 19S = "${WORKDIR}/git"
22 20
23inherit pkgconfig autotools systemd 21inherit pkgconfig autotools systemd gtk-doc
22
23# gtkdocsize runs before autotools do_configure and it copies gtk-doc.m4 and fails
24# to copy becuase there is no m4 dir yet.
25do_configure:prepend () {
26 mkdir -p ${S}/m4
27}
28
29EXTRA_OECONF = " \
30 --with-systemdsystemunitdir=${systemd_system_unitdir} \
31 "
24 32
25FILES_${PN} += "${datadir}/dbus-1/system-services/*.service" 33FILES:${PN} += "${datadir}/dbus-1"
26 34
27SYSTEMD_SERVICE_${PN} = "thermald.service" 35SYSTEMD_SERVICE:${PN} = "thermald.service"
28 36
29COMPATIBLE_HOST = '(i.86|x86_64).*-linux' 37COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
30 38
31CONFFILES_${PN} = " \ 39CONFFILES:${PN} = " \
32 ${sysconfdir}/thermald/thermal-conf.xml \ 40 ${sysconfdir}/thermald/thermal-conf.xml \
33 ${sysconfdir}/thermald/thermal-cpu-cdev-order.xml \ 41 ${sysconfdir}/thermald/thermal-cpu-cdev-order.xml \
34 " 42 "
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch
new file mode 100644
index 00000000..4d583657
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Add-print-function-to-print-test-run-status-in-ptest.patch
@@ -0,0 +1,53 @@
1From deccc0c69c2c8759c52885be8bdda54d3cee481c Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Sun, 11 Dec 2022 22:34:15 +0800
4Subject: [PATCH] Add print function to print test run status in ptest format
5
6Upstream-Status: Inappropriate [OE ptest specific]
7
8Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
9---
10 run_tests.py | 16 ++++++++++++++++
11 1 file changed, 16 insertions(+)
12
13diff --git a/run_tests.py b/run_tests.py
14index 1cd796dd..e3ffd1ab 100755
15--- a/run_tests.py
16+++ b/run_tests.py
17@@ -327,6 +327,9 @@ def run_test(testname, host, target):
18 else:
19 ispc_exe_rel = add_prefix(host.ispc_cmd, host, target)
20
21+ # to reslove the error '.rodata' can not be used when making a PIE object
22+ ispc_exe_rel = ispc_exe_rel + " --pic"
23+
24 # is this a test to make sure an error is issued?
25 want_error = (filename.find("tests_errors") != -1)
26 if want_error == True:
27@@ -795,6 +798,17 @@ def check_compiler_exists(compiler_exe):
28 return
29 error("missing the required compiler: %s \n" % compiler_exe, 1)
30
31+def print_test_run_status(results):
32+ for fstatus in results:
33+ if (fstatus[1] == Status.Success):
34+ print( "%s: %s" % ("PASS", fstatus[0]))
35+ elif (fstatus[1] == Status.Compfail):
36+ print( "%s: %s" % ("FAIL", fstatus[0]))
37+ elif (fstatus[1] == Status.Runfail):
38+ print( "%s: %s" % ("FAIL", fstatus[0]))
39+ elif (fstatus[1] == Status.Skip):
40+ print( "%s: %s" % ("SKIP", fstatus[0]))
41+
42 def print_result(status, results, s, run_tests_log, csv):
43 title = StatusStr[status]
44 file_list = [fname for fname, fstatus in results if status == fstatus]
45@@ -938,6 +952,8 @@ def run_tests(options1, args, print_version):
46 pass_rate = -1
47 print_debug("PASSRATE (%d/%d) = %d%% \n\n" % (len(run_succeed_files), total_tests_executed, pass_rate), s, run_tests_log)
48
49+ print_test_run_status(results)
50+
51 for status in Status:
52 print_result(status, results, s, run_tests_log, options.csv)
53 fails = [status != Status.Compfail and status != Status.Runfail for _, status in results]
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch
new file mode 100644
index 00000000..b0a76ff9
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0001-Fix-QA-Issues.patch
@@ -0,0 +1,36 @@
1From 7beff95c11071170eb27b6fa7d0cc77588caee8e Mon Sep 17 00:00:00 2001
2From: Yogesh Tyagi <yogesh.tyagi@intel.com>
3Date: Tue, 26 Jul 2022 15:25:10 +0800
4Subject: [PATCH] Fix QA Issues
5
6Stop ispc from inserting host file path in generated headers which leads to reproducibility problems.
7
8Upstream-Status: Inappropriate [OE build specific]
9
10Signed-off-by: Yogesh Tyagi <yogesh.tyagi@intel.com>
11---
12 src/module.cpp | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/module.cpp b/src/module.cpp
16index e2084d2e..e2626865 100644
17--- a/src/module.cpp
18+++ b/src/module.cpp
19@@ -2555,7 +2555,7 @@ bool Module::writeHeader(const char *fn) {
20 perror("fopen");
21 return false;
22 }
23- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", fn);
24+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
25 fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
26
27 // Create a nice guard string from the filename, turning any
28@@ -2677,7 +2677,7 @@ bool Module::writeDispatchHeader(DispatchHeaderInfo *DHI) {
29 FILE *f = DHI->file;
30
31 if (DHI->EmitFrontMatter) {
32- fprintf(f, "//\n// %s\n// (Header automatically generated by the ispc compiler.)\n", DHI->fn);
33+ fprintf(f, "//\n// \n// (Header automatically generated by the ispc compiler.)\n");
34 fprintf(f, "// DO NOT EDIT THIS FILE.\n//\n\n");
35 }
36 // Create a nice guard string from the filename, turning any
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch
new file mode 100644
index 00000000..f452dc50
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/0002-cmake-don-t-build-for-32-bit-targets.patch
@@ -0,0 +1,52 @@
1From 16a2c22339287122d2c25d8bb33a5a51b4e6ee51 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Thu, 24 Feb 2022 20:01:11 +0530
4Subject: [PATCH] cmake: don't build for 32-bit targets
5
6Error log:
7| tmp/work/corei7-64-poky-linux/ispc/1.16.0-r0/recipe-sysroot/usr/include/bits/long-double.h:23:10: fatal error: 'bits/long-double-32.h' file not found
8| #include <bits/long-double-32.h>
9| ^~~~~~~~~~~~~~~~~~~~~~~
10| 1 error generated.
11
12Remove SYSTEM include search path and set -isysroot dir path
13for root dir for cross compilation.
14
15Upstream-Status: Inappropriate
16
17Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
18---
19 cmake/GenerateBuiltins.cmake | 6 +++---
20 1 file changed, 3 insertions(+), 3 deletions(-)
21
22diff --git a/cmake/GenerateBuiltins.cmake b/cmake/GenerateBuiltins.cmake
23index f84494ed..d90cb1ec 100644
24--- a/cmake/GenerateBuiltins.cmake
25+++ b/cmake/GenerateBuiltins.cmake
26@@ -253,7 +253,7 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi
27 # In this case headers will be installed in /usr/arm-linux-gnueabihf/include and will not be picked up
28 # by clang by default. So the following line adds such path explicitly. If this path doesn't exist and
29 # the headers can be found in other locations, this should not be a problem.
30- set(includePath -isystem/usr/${debian_triple}/include)
31+ set(includePath -isysroot${SYSROOT_DIR})
32 endif()
33 endif()
34
35@@ -339,7 +339,7 @@ function (generate_target_builtins resultList)
36 set(regular_targets ${ARGN})
37 list(FILTER regular_targets EXCLUDE REGEX wasm)
38 foreach (ispc_target ${regular_targets})
39- foreach (bit 32 64)
40+ foreach (bit 64)
41 foreach (os_name ${TARGET_OS_LIST_FOR_LL})
42 target_ll_to_cpp(target-${ispc_target} ${bit} ${os_name} output${os_name}${bit})
43 list(APPEND tmpList ${output${os_name}${bit}})
44@@ -405,7 +405,7 @@ function (generate_common_builtins resultList)
45 endif()
46
47 message (STATUS "ISPC will be built with support of ${supported_oses} for ${supported_archs}")
48- foreach (bit 32 64)
49+ foreach (bit 64)
50 foreach (os_name "windows" "linux" "freebsd" "macos" "android" "ios" "ps4" "web")
51 foreach (arch "x86" "arm" "wasm")
52 builtin_to_cpp(${bit} ${os_name} ${arch} "${supported_archs}" "${supported_oses}" res${bit}${os_name}${arch})
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest
new file mode 100644
index 00000000..77d13bb4
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc/run-ptest
@@ -0,0 +1,2 @@
1#!/bin/sh
2python3 run_tests.py
diff --git a/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
new file mode 100644
index 00000000..77797041
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/ispc/ispc_1.24.0.bb
@@ -0,0 +1,64 @@
1SUMMARY = "Intel(R) Implicit SPMD Program Compiler"
2DESCRIPTION = "ispc is a compiler for a variant of the C programming language, \
3with extensions for single program, multiple data programming."
4HOMEPAGE = "https://github.com/ispc/ispc"
5
6LICENSE = "BSD-3-Clause & Apache-2.0-with-LLVM-exception"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=da5ecffdd210b3cf776b32b41c182e87 \
8 file://third-party-programs.txt;md5=2061218c7be521556719c8b504bf9ddd"
9
10inherit cmake python3native ptest
11
12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/ispc/ispc.git;protocol=https;branch=main \
15 file://0002-cmake-don-t-build-for-32-bit-targets.patch \
16 file://0001-Fix-QA-Issues.patch \
17 file://0001-Add-print-function-to-print-test-run-status-in-ptest.patch \
18 file://run-ptest \
19 "
20
21SRCREV = "d394222aef59e4759b06e39ec160e4aba6ee5f40"
22
23COMPATIBLE_HOST = '(x86_64).*-linux'
24
25DEPENDS += " clang-native bison-native flex-native"
26DEPENDS:append:class-target = " clang"
27RDEPENDS:${PN}-ptest += " python3-multiprocessing"
28
29PACKAGECONFIG ??= "tbb"
30PACKAGECONFIG[tbb] = "-DISPCRT_BUILD_TASK_MODEL=TBB, -DISPCRT_BUILD_TASK_MODEL=OpenMP, tbb"
31
32YFLAGS = '-d -t -v -y --file-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}'
33
34do_configure:prepend() {
35 sed -i -e 's#\${BISON_EXECUTABLE}.*#\${BISON_EXECUTABLE} ${YFLAGS} #g' ${S}/CMakeLists.txt
36 sed -i -e 's#\${FLEX_EXECUTABLE}.*#\${FLEX_EXECUTABLE} \-L #g' ${S}/CMakeLists.txt
37}
38
39do_install_ptest() {
40 cp -rf ${S}/run_tests.py ${D}${PTEST_PATH}
41 cp -rf ${S}/common.py ${D}${PTEST_PATH}
42 cp -rf ${S}/tests ${D}${PTEST_PATH}
43 cp -rf ${S}/test_static.isph ${D}${PTEST_PATH}
44 cp -rf ${S}/fail_db.txt ${D}${PTEST_PATH}
45 cp -rf ${S}/test_static.cpp ${D}${PTEST_PATH}
46}
47
48EXTRA_OECMAKE += " \
49 -DISPC_INCLUDE_TESTS=OFF \
50 -DISPC_INCLUDE_EXAMPLES=OFF \
51 -DARM_ENABLED=OFF \
52 -DISPC_CROSS=ON \
53 -DISPC_ANDROID_TARGET=OFF \
54 -DISPC_FREEBSD_TARGET=OFF \
55 -DISPC_WINDOWS_TARGET=OFF \
56 -DISPC_IOS_TARGET=OFF \
57 -DISPC_PS_TARGET=OFF \
58 -DSYSROOT_DIR=${STAGING_DIR} \
59 -DCLANG_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang \
60 -DCLANGPP_EXECUTABLE=${STAGING_BINDIR_NATIVE}/clang++ \
61 -DLLVM_AS_EXECUTABLE=${STAGING_BINDIR_NATIVE}/llvm-as \
62 "
63
64BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
new file mode 100644
index 00000000..2e022f4a
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/levelzero/level-zero_1.21.1.bb
@@ -0,0 +1,33 @@
1SUMMARY = "oneAPI Level Zero Specification Headers and Loader"
2HOMEPAGE = "https://github.com/oneapi-src/level-zero"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=97957beb2f7808ffa247e5d93e6442cc"
5
6SRC_URI = "git://github.com/oneapi-src/level-zero.git;protocol=https;branch=master"
7SRCREV = "9536683855b17a21508e5b54ba358225d6a976da"
8S = "${WORKDIR}/git"
9
10inherit cmake
11DEPENDS += "opencl-headers"
12
13UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
14
15PACKAGES =+ "${PN}-headers ${PN}-samples ${PN}-loader"
16
17do_install:append () {
18 install -d ${D}${bindir} ${D}${libdir}
19 install -m 755 ${B}/bin/zello* ${D}${bindir}
20
21 oe_libinstall -C lib libze_null ${D}${libdir}
22}
23
24
25FILES:${PN}-headers = "${includedir}"
26FILES:${PN}-samples = "${bindir} ${libdir}/libze_null* ${libdir}/libze_validation*"
27FILES:${PN}-loader = "${libdir}"
28
29# PN-loader (non -dev/-dbg/nativesdk- package) contains symlink .so
30INSANE_SKIP:${PN}-loader = "dev-so"
31INSANE_SKIP:${PN}-samples = "dev-so"
32ALLOW_EMPTY:${PN} = "1"
33BBCLASSEXTEND = "native nativesdk"
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.17.0.bb b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb
new file mode 100644
index 00000000..2014e448
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-core/linux-npu-driver/linux-npu-driver_1.17.0.bb
@@ -0,0 +1,45 @@
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=a7a2dfa2b52a22cf2257893ee87ba11c"
7
8SRC_URI = "git://github.com/intel/linux-npu-driver.git;protocol=https;name=linux-npu-driver;branch=main;lfs=1 \
9 git://github.com/openvinotoolkit/npu_plugin_elf.git;protocol=https;destsuffix=git/third_party/vpux_elf;name=vpux-elf;nobranch=1 \
10 git://github.com/jbeder/yaml-cpp.git;protocol=https;destsuffix=git/third_party/yaml-cpp;name=yaml-cpp;nobranch=1 \
11 git://github.com/intel/level-zero-npu-extensions.git;protocol=https;destsuffix=git/third_party/level-zero-npu-extensions;name=lzvext;nobranch=1 \
12 git://github.com/google/googletest.git;protocol=https;destsuffix=git/third_party/googletest;name=googletest;nobranch=1 \
13 file://0001-linux-npu-driver-fix-multilib-install-issue.patch \
14 "
15
16SRCREV_linux-npu-driver = "0fe92dd0720448fb571f0ac4e5e64ef9f2ec3bd7"
17SRCREV_vpux-elf = "50f2b13dbb6dd435c3e2ef6f8abb7393633bfcdd"
18SRCREV_yaml-cpp = "f7320141120f720aecc4c32be25586e7da9eb978"
19SRCREV_lzvext = "c7d8f849d6a8195c1db38cbaca8d431cbabf3a6e"
20SRCREV_googletest = "b514bdc898e2951020cbdca1304b75f5950d1f59"
21SRCREV_FORMAT = "linux-npu-driver_vpux-elf_yaml-cpp_lzvext_googletest"
22
23S = "${WORKDIR}/git"
24
25inherit cmake
26
27
28# Fix warning _FORTIFY_SOURCE requires compiling with optimization (-O)
29EXTRA_OECMAKE += " -DCMAKE_BUILD_TYPE=Release "
30EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS_RELEASE=-O2 "
31
32EXTRA_OECMAKE += " -DCMAKE_CXX_FLAGS='-I${RECIPE_SYSROOT}/usr/include/level_zero'"
33EXTRA_OECMAKE += " -DCMAKE_INSTALL_FIRMWARE_DIR=${nonarch_base_libdir}"
34
35DEPENDS = "level-zero dpkg-native pkgconfig-native"
36
37PACKAGES =+ "${PN}-firmware ${PN}-tests"
38
39FILES:${PN}-firmware = "${nonarch_base_libdir}/firmware/updates/intel/vpu/*"
40FILES:${PN}-tests = "${bindir}"
41
42INSANE_SKIP:${PN} += "buildpaths"
43INSANE_SKIP:${PN}-dbg += "buildpaths"
44INSANE_SKIP:${PN}-tests += "buildpaths"
45INSANE_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
new file mode 100644
index 00000000..d881610f
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp-runtime_2024.0.0-49819.bb
@@ -0,0 +1,54 @@
1SUMMARY = "Intel® oneAPI DPC++/C++ Compiler runtime files"
2DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
3that help your applications run faster on Intel® 64 architectures with support \
4for the latest C, C++, and SYCL language standards. This compiler produces \
5optimized code that can run significantly faster by taking advantage of the \
6ever-increasing core count and vector register width in Intel® Xeon® processors \
7and compatible processors."
8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10
11LICENSE = "EULA"
12
13COMPILERMAINVER = "2024.0"
14
15LIC_FILES_CHKSUM = " \
16 file://opt/intel/oneapi/licensing/${COMPILERMAINVER}/licensing/${COMPILERMAINVER}/license.htm;md5=5ff64c6ff3ef98089ed69360e7a84c39 \
17 "
18COMPILERDOTVER = "2024.0.0-49406"
19DEVUTILITVERSION = "2024.0-2024.0.0-49320"
20SRC_URI = " \
21 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=dpcpp-runtime \
22 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-dpcpp-cpp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=dpcpp-common \
23 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-runtime-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-shared-runtime \
24 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-vars-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=common-vars \
25 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=openmp \
26 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-openmp-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=openmp-common \
27 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-common-licensing-${COMPILERMAINVER}-${COMPILERDOTVER}_all.deb;subdir=${BPN};name=license \
28 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dev-utilities-${DEVUTILITVERSION}_amd64.deb;subdir=${BPN};name=dev-utils \
29 "
30
31SRC_URI[dpcpp-runtime.sha256sum] = "e24f0ba69daf3f66ceaf23d5e632f183cdb90bac69f65407fdb4407fc9034f33"
32SRC_URI[dpcpp-common.sha256sum] = "f5a3db6a725598224edf1099260955aee3e36beadcaed2af5b8b453e873a82fa"
33SRC_URI[compiler-shared-runtime.sha256sum] = "bce010cbe076259ddd3feb8e69792869e22fccd5b4e2c9af9e815826f2c1a394"
34SRC_URI[common-vars.sha256sum] = "368553c99db1b52060b8225355336778be0b00e5991d0f769c42f891c6328750"
35SRC_URI[openmp.sha256sum] = "154ff1e81adfdc872ba1d47bd860de70d62188417c7128422435dfd0ceca62fe"
36SRC_URI[openmp-common.sha256sum] = "8217001d78311cbef97dd139e684c6767932b532309c3843ba57d7894d15c07d"
37SRC_URI[license.sha256sum] = "9f9c8a12fc0bc82ab5b71e118e66745eff23f42224eba304068225b366cd74b6"
38SRC_URI[dev-utils.sha256sum] = "c675d960a5abca361cead9217d6e74adee499ee0a095c4e44092bd710b304d50"
39
40S = "${WORKDIR}/${BPN}"
41
42inherit bin_package
43
44RDEPENDS:${PN} += "virtual-opencl-icd zlib tbb level-zero-loader bash tcsh"
45SKIP_FILEDEPS:${PN} = '1'
46
47INHIBIT_PACKAGE_STRIP = "1"
48INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
49
50# doesn't have GNU_HASH (didn't pass LDFLAGS?)
51INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped staticdev rpaths arch useless-rpaths file-rdeps"
52
53FILES_SOLIBSDEV = ""
54BBCLASSEXTEND = "native nativesdk"
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
new file mode 100644
index 00000000..74af3f93
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/dpcpp-compiler/intel-oneapi-dpcpp-cpp_2024.0.0-49819.bb
@@ -0,0 +1,45 @@
1SUMMARY = "Intel® oneAPI DPC++/C++ Compiler"
2DESCRIPTION = "The Intel® oneAPI DPC++/C++ Compiler provides optimizations \
3that help your applications run faster on Intel® 64 architectures with support \
4for the latest C, C++, and SYCL language standards. This compiler produces \
5optimized code that can run significantly faster by taking advantage of the \
6ever-increasing core count and vector register width in Intel® Xeon® processors \
7and compatible processors."
8
9HOMEPAGE = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler.html"
10
11LICENSE = "EULA"
12
13COMPILERMAINVER = "2024.0"
14
15LIC_FILES_CHKSUM = " \
16 file://opt/intel/oneapi/compiler/${COMPILERMAINVER}/share/doc/compiler/credist.txt;md5=b41f55af9f479b9570fc35b955d5ba1a \
17 "
18
19SRC_URI = " \
20 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-dpcpp-cpp-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=icx-compiler \
21 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-${COMPILERMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=compiler-linker \
22 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-compiler-shared-common-${COMPILERMAINVER}-${PV}_all.deb;subdir=${BPN};name=shared-common \
23 "
24
25SRC_URI[icx-compiler.sha256sum] = "0dcbac766d5a1519d4cf393f5a85e71d19024fef65f77638f3f849796b62cd82"
26SRC_URI[compiler-linker.sha256sum] = "e00faea6d797934d62143e4aa70b727ce30f80fdf30769d22122b3051140c236"
27SRC_URI[shared-common.sha256sum] = "cf490a4a790f349da79e618359598d3b32312ca3b2639e5d4c84e1cfa2745558"
28
29S = "${WORKDIR}/${BPN}"
30
31inherit bin_package
32
33RDEPENDS:${PN} += "intel-oneapi-dpcpp-cpp-runtime"
34SKIP_FILEDEPS:${PN} = '1'
35
36INHIBIT_PACKAGE_STRIP = "1"
37INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
38
39# doesn't have GNU_HASH (didn't pass LDFLAGS?)
40INSANE_SKIP:${PN} += "textrel dev-so dev-elf ldflags already-stripped file-rdeps staticdev rpaths arch useless-rpaths"
41
42FILES_SOLIBSDEV = ""
43
44EXCLUDE_FROM_SHLIBS = "1"
45BBCLASSEXTEND = "native nativesdk"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
new file mode 100644
index 00000000..416deec1
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/embree/embree_4.3.3.bb
@@ -0,0 +1,32 @@
1SUMMARY = "Collection of high-performance ray tracing kernels"
2DESCRIPTION = "A collection of high-performance ray tracing kernels \
3intended to graphics application engineers that want to improve the \
4performance of their application."
5HOMEPAGE = "https://github.com/embree/embree"
6
7LICENSE = "Apache-2.0 & BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
9 file://third-party-programs.txt;md5=f989f5b74cfff0d45d3ccf0e1366cbdc \
10 file://common/math/transcendental.h;beginline=6;endline=8;md5=73380bb2ab6613b30b8464f114bd0ca8"
11
12inherit pkgconfig cmake
13
14S = "${WORKDIR}/git"
15
16SRC_URI = "git://github.com/embree/embree.git;protocol=https;branch=master"
17SRCREV = "5730b150471602d6dc02d9b7d8a4a6ce9ceffe16"
18
19COMPATIBLE_HOST = '(x86_64).*-linux'
20COMPATIBLE_HOST:libc-musl = "null"
21
22DEPENDS = "tbb jpeg libpng glfw ispc-native"
23
24EXTRA_OECMAKE += " \
25 -DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF \
26 -DEMBREE_MAX_ISA=DEFAULT \
27 -DEMBREE_TUTORIALS=OFF \
28 -DEMBREE_ISPC_SUPPORT=ON \
29 -DEMBREE_ZIP_MODE=OFF \
30 "
31
32UPSTREAM_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
new file mode 100644
index 00000000..1841253e
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ipp/intel-oneapi-ipp_2021.10.0-653.bb
@@ -0,0 +1,35 @@
1DESCRIPTION = "Intel® Integrated Performance Primitives are production-ready \
2 building blocks for cross-platform performance. Develop high-performance vision, \
3 signal, security, and storage applications with this multithreaded software library."
4HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/ipp.html"
5
6LICENSE = "ISSL"
7
8MAXVER = "2021.10"
9
10LIC_FILES_CHKSUM = " \
11 file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/license.txt;md5=d7cdc92ed6c4de1263da879599ddc3e2 \
12 file://opt/intel/oneapi/ipp/${MAXVER}/share/doc/ipp/licensing/third-party-programs.txt;md5=22bd13987911dcf790907041b43081f3 \
13 "
14SRC_URI = " \
15 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-${MAXVER}-${PV}_amd64.deb;subdir=${BPN};name=ipp \
16 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-devel-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=headers \
17 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-ipp-common-${MAXVER}-${PV}_all.deb;subdir=${BPN};name=env \
18 "
19
20SRC_URI[ipp.sha256sum] = "b51e45c6e691aa46c7136b0ab61f5abe346388433e017a30cf53fd23e92bea07"
21SRC_URI[headers.sha256sum] = "342f37ab2f82bc9f4498435f848ee660591c2488b44d988bf6ee96b2a71fd005"
22SRC_URI[env.sha256sum] = "731e8c28a3b8b757730cd874d0941de2eb744856128f24ade59d36c12b415bf6"
23
24S = "${WORKDIR}/${BPN}"
25
26COMPATIBLE_HOST:libc-musl = "null"
27
28inherit bin_package
29
30INHIBIT_PACKAGE_STRIP = "1"
31INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
32INHIBIT_DEFAULT_DEPS = ""
33
34RDEPENDS:${PN} += "tbb setup-intel-oneapi-env"
35INSANE_SKIP:${PN} += "ldflags dev-so"
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
new file mode 100644
index 00000000..e3e93028
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/mkl/intel-oneapi-mkl_2024.0.0-49656.bb
@@ -0,0 +1,74 @@
1SUMMARY = "Intel® oneAPI Math Kernel Library (oneMKL)"
2DESCRIPTION = "The Intel® oneAPI Math Kernel Library (oneMKL) is a computing \
3 math library of highly optimized and extensively parallelized routines \
4 for applications that require maximum performance. oneMKL contains \
5 the high-performance optimizations from the full Intel® Math Kernel Library \
6 for CPU architectures (with C/Fortran programming language interfaces)\
7 and adds to them a set of DPC++ programming language interfaces for \
8 achieving performance on various CPU architectures \
9 and Intel Graphics Technology for certain key functionalities."
10HOMEPAGE = "https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html"
11
12LICENSE = "ISSL"
13
14MKLMAINVER = "2024.0"
15
16LIC_FILES_CHKSUM = " \
17 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/license.txt;md5=8510d21bf355a76e378c3216c3929ccd \
18 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-benchmarks.txt;md5=cb98e1a1f14c05ea85a979ea8982e7a4 \
19 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-ipp.txt;md5=a4b2bf15e38f5c1267cdafed18bc0b09 \
20 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-openmp.txt;md5=6b3c1aa2a11393060074c0346ce21e49 \
21 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs-safestring.txt;md5=c3aeee91c6d35a0f0753aed6c2633b82 \
22 file://opt/intel/oneapi/mkl/${MKLMAINVER}/share/doc/mkl/licensing/third-party-programs.txt;md5=27de873e4084d62530fe828406b33ca9 \
23 "
24
25SRC_URI = " \
26 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=runtime \
27 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-devel-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-devel \
28 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-devel-${MKLMAINVER}-${PV}_amd64.deb;subdir=${BPN};name=devel \
29 https://apt.repos.intel.com/oneapi/pool/main/intel-oneapi-mkl-common-${MKLMAINVER}-${PV}_all.deb;subdir=${BPN};name=common-vars \
30 "
31
32SRC_URI[runtime.sha256sum] = "10a86e24051d6ef4a80fd839c570e629190638a3c0ac9bcca99ab855f534b959"
33SRC_URI[common-devel.sha256sum] = "adbf0ea946f63946d29b7f9c750c38a42ea7a65d8c81655b268aa2c7bb908192"
34SRC_URI[devel.sha256sum] = "fab2a6f15e18bfd9b4d425f2703e4e98928c57f52c4feebc9ed886f097062e84"
35SRC_URI[common-vars.sha256sum] = "ec2b67813739fa4a2895f63479a41acba2174afe2d0cb8a0c1c9119d1317d8ef"
36
37S = "${WORKDIR}/${BPN}"
38
39inherit bin_package
40
41do_install:append () {
42 install -d ${D}${bindir}
43 (cd ${D}${bindir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/bin/* .)
44 install -d ${D}${libdir}
45 (cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.so* .)
46 (cd ${D}${libdir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/intel64/*.a* .)
47 install -d ${D}${libdir}/pkgconfig
48 (cd ${D}${libdir}/pkgconfig ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/pkgconfig/* .)
49 install -d ${D}${libdir}/cmake
50 (cd ${D}${libdir}/cmake ; ln -s ../../../opt/intel/oneapi/mkl/${MKLMAINVER}/lib/cmake/* .)
51
52 install -d ${D}${includedir}
53 find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | while read srcdir; do
54 install -d ${D}${includedir}/$srcdir
55 (cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcdir/* ./$srcdir/)
56 done
57
58 find ${D}/opt/intel/oneapi/mkl/${MKLMAINVER}/include/ -mindepth 1 -maxdepth 1 -type f -printf '%f\n' | while read srcfile; do
59 (cd ${D}${includedir} ; ln -s ../../opt/intel/oneapi/mkl/${MKLMAINVER}/include/$srcfile .)
60 done
61}
62
63AUTO_LIBNAME_PKGS = ""
64INHIBIT_PACKAGE_STRIP = "1"
65INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
66
67RDEPENDS:${PN} += "bash tbb intel-oneapi-dpcpp-cpp-runtime setup-intel-oneapi-env virtual-opencl-icd"
68INSANE_SKIP:${PN} = "ldflags textrel dev-so staticdev arch already-stripped"
69
70FILES:${PN}-staticdev += "/opt/intel/oneapi/mkl/${MKLMAINVER}/lib/*.a*"
71
72SKIP_FILEDEPS:${PN} = '1'
73
74SYSROOT_DIRS += "/opt"
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
new file mode 100644
index 00000000..8005f544
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/oidn/oidn_2.1.0.bb
@@ -0,0 +1,27 @@
1SUMMARY = "Intel® Open Image Denoise"
2DESCRIPTION = "Intel Open Image Denoise is an open source library of \
3high-performance, high-quality denoising filters for images \
4rendered with ray tracing. Intel Open Image Denoise is part \
5of the Intel® oneAPI Rendering Toolkit"
6HOMEPAGE = "https://www.openimagedenoise.org/"
7
8LICENSE = "Apache-2.0 & BSD-3-Clause"
9LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
10 file://external/mkl-dnn/LICENSE;md5=b48e3de3bfd47c27882a0d85b20823f5 \
11 file://external/mkl-dnn/src/cpu/x64/xbyak/COPYRIGHT;md5=3b9bf048d063d54cdb28964db558bcc7 \
12 file://external/mkl-dnn/src/common/ittnotify/LICENSE.BSD;md5=e671ff178b24a95a382ba670503c66fb \
13 file://weights/LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
14
15SRC_URI = "https://github.com/OpenImageDenoise/${BPN}/releases/download/v${PV}/${BP}.src.tar.gz\
16 "
17SRC_URI[sha256sum] = "ce144ba582ff36563d9442ee07fa2a4d249bc85aa93e5b25fc527ff4ee755ed6"
18
19inherit cmake
20
21DEPENDS += "tbb ispc-native"
22
23do_install:append() {
24 chrpath -d ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
25}
26
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
new file mode 100644
index 00000000..a2d709a1
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/openvkl/openvkl_2.0.1.bb
@@ -0,0 +1,42 @@
1SUMMARY = "Intel(R) Open Volume Kernel Library"
2DESCRIPTION = "Intel(R) Open Volume Kernel Library (Intel(R) Open VKL) is a \
3collection of high-performance volume computation kernels. The target users \
4of Open VKL are graphics application engineers who want to improve the \
5performance of their volume rendering applications by leveraging Open VKL’s \
6performance-optimized kernels, which include volume traversal and sampling \
7functionality for a variety of volumetric data formats. The kernels are optimized \
8for the latest Intel(R) processors with support for SSE, AVX, AVX2, and AVX-512 \
9instructions."
10HOMEPAGE = "https://www.openvkl.org/"
11
12LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
13LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
14 file://third-party-programs.txt;md5=69ec7caf49616c471161b921f53d5ec0 \
15 file://testing/external/half.hpp;beginline=1;endline=17;md5=4b60058493630c3bd0ef145470f04a7b"
16
17inherit pkgconfig cmake
18
19S = "${WORKDIR}/git"
20
21SRC_URI = "git://github.com/openvkl/openvkl.git;protocol=https;branch=master \
22 "
23SRCREV = "8c6ba526813b871a624cb9d73d4cbb689ac7f4ce"
24
25COMPATIBLE_HOST = '(x86_64).*-linux'
26COMPATIBLE_HOST:libc-musl = "null"
27
28DEPENDS = "ispc ispc-native rkcommon embree"
29
30EXTRA_OECMAKE += " \
31 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
32 "
33EXTRA_OECMAKE:intel-corei7-64 += " \
34 -DOPENVKL_ISA_AVX=OFF \
35 -DOPENVKL_ISA_AVX2=OFF \
36 -DOPENVKL_ISA_AVX512SKX=OFF \
37 "
38
39PACKAGES =+ "${PN}-examples"
40FILES:${PN}-examples = "\
41 ${bindir} \
42 "
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch
new file mode 100644
index 00000000..c2136321
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray/0001-Fix-GCC11-Compile-Error-in-benchmark_register.h.patch
@@ -0,0 +1,28 @@
1From 09e6b6615d9a16e9555eff9d569356e32bd26aa4 Mon Sep 17 00:00:00 2001
2From: benradel <86351445+benradel@users.noreply.github.com>
3Date: Wed, 23 Jun 2021 11:56:03 +0200
4Subject: [PATCH] Fix GCC11 Compile Error in benchmark_register.h
5
6Fix GCC11 compilation error due to missing header "limits" in benchmark_register.h
7
8Upstream-Status: Submitted [https://github.com/ospray/ospray/pull/484/files]
9Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
10---
11 apps/common/external/benchmark/src/benchmark_register.h | 1 +
12 1 file changed, 1 insertion(+)
13
14diff --git a/apps/common/external/benchmark/src/benchmark_register.h b/apps/common/external/benchmark/src/benchmark_register.h
15index 61377d742..8f1bb7795 100644
16--- a/apps/common/external/benchmark/src/benchmark_register.h
17+++ b/apps/common/external/benchmark/src/benchmark_register.h
18@@ -2,6 +2,7 @@
19 #define BENCHMARK_REGISTER_H
20
21 #include <vector>
22+#include <limits>
23
24 #include "check.h"
25
26--
272.32.0
28
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
new file mode 100644
index 00000000..d3a23653
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/ospray/ospray_3.2.0.bb
@@ -0,0 +1,37 @@
1SUMMARY = "Intel OSPray, Ray Tracing based Rendering Engine"
2DESCRIPTION = "Intel OSPRay is an open source, scalable, and portable ray \
3tracing engine for high-performance, high-fidelity visualization on \
4Intel Architecture CPUs."
5HOMEPAGE = "https://www.ospray.org/"
6
7LICENSE = "Apache-2.0 & BSD-3-Clause & MIT & Zlib"
8LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1dece7821bf3fd70fe1309eaa37d52a2 \
9 file://third-party-programs.txt;md5=e37b77e3bd997abccc359c710fb1f1db \
10 "
11
12inherit pkgconfig cmake
13
14S = "${WORKDIR}/git"
15
16SRC_URI = "git://github.com/ospray/ospray.git;protocol=https;branch=master \
17 "
18SRCREV = "85af2929937d516997451cbd52d352cf93125ed2"
19
20COMPATIBLE_HOST = '(x86_64).*-linux'
21COMPATIBLE_HOST:libc-musl = "null"
22
23DEPENDS = "rkcommon ispc ispc-native openvkl embree"
24
25EXTRA_OECMAKE += " \
26 -DISPC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/ispc \
27 -DOSPRAY_ENABLE_APPS_BENCHMARK=OFF \
28 -DOSPRAY_ENABLE_APPS_TESTING=OFF \
29 -DOSPRAY_ENABLE_APPS_EXAMPLES=OFF \
30 "
31
32PACKAGES =+ "${PN}-apps"
33FILES:${PN}-apps = "\
34 ${bindir} \
35 "
36
37UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
diff --git a/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
new file mode 100644
index 00000000..bec36593
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-oneapi/rkcommon/rkcommon_1.14.0.bb
@@ -0,0 +1,19 @@
1SUMMARY = "rkcommon - C++/CMake infrastructure"
2DESCRIPTION = "A common set of C++ infrastructure and CMake utilities \
3used by various components of Intel® oneAPI Rendering Toolkit."
4HOMEPAGE = "https://github.com/ospray/rkcommon"
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
8
9inherit pkgconfig cmake
10
11S = "${WORKDIR}/git"
12
13SRC_URI = "git://github.com/ospray/rkcommon.git;protocol=https;branch=master \
14 "
15SRCREV = "4a00047ae5a3ac705b6b33b4a7574588d91e7953"
16
17DEPENDS = "tbb"
18
19EXTRA_OECMAKE += " -DBUILD_TESTING=OFF"
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch
new file mode 100644
index 00000000..4474aa3c
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-CMakeLists-disable-Werror.patch
@@ -0,0 +1,38 @@
1From ef56be8e6bf2ea273cbeb960f3131164e7b517b6 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 18 May 2022 12:24:03 +0800
4Subject: [PATCH] CMakeLists: disable Werror
5
6gcc12 highlights minor warnings that cause the build to fail. Ignore
7those until they aren't fixed upstream.
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 CMakeLists.txt | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/CMakeLists.txt b/CMakeLists.txt
17index 418483f7..c019fea0 100644
18--- a/CMakeLists.txt
19+++ b/CMakeLists.txt
20@@ -146,7 +146,7 @@ else()
21 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fno-strict-aliasing -D_FORTIFY_SOURCE=2")
22 if(LNX_BUILD)
23 #A few warnings yet to resolve under esx
24- set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
25+ #set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Werror")
26 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Werror")
27 endif()
28 set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -ggdb")
29@@ -791,4 +791,4 @@ if(ESX_BUILD)
30 include(CMake/esx.cmake)
31 endif()
32
33-add_subdirectory(src/os/nvm_api_sample)
34\ No newline at end of file
35+add_subdirectory(src/os/nvm_api_sample)
36--
372.35.3
38
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
new file mode 100644
index 00000000..8a734ed2
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl/0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch
@@ -0,0 +1,62 @@
1Subject: [PATCH] [PATCH]: ignore static asserts and null define for os and ut
2 builds
3Upstream-Status: Backport
4Signed-off-by: Teoh Suh Haw <suh.haw.teoh@intel.com>
5---
6 MdePkg/Include/Base.h | 12 ++++++++++++
7 1 file changed, 12 insertions(+)
8
9Index: edk2/MdePkg/Include/Base.h
10===================================================================
11--- edk2.orig/MdePkg/Include/Base.h
12+++ edk2/MdePkg/Include/Base.h
13@@ -316,8 +316,12 @@ struct _LIST_ENTRY {
14 #define NULL __null
15 #endif
16 #else
17+#ifndef OS_BUILD
18+#ifndef UNIT_TEST_UEFI_BUILD
19 #define NULL ((VOID *) 0)
20 #endif
21+#endif
22+#endif
23
24 //
25 // Null character
26@@ -813,6 +817,8 @@ typedef UINTN *BASE_LIST;
27 // Section 2.3.1 of the UEFI 2.3 Specification.
28 //
29
30+#ifndef OS_BUILD
31+#ifndef UNIT_TEST_UEFI_BUILD
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");
34 STATIC_ASSERT (sizeof (UINT8) == 1, "sizeof (UINT8) does not meet UEFI Specification Data Type requirements");
35@@ -841,7 +847,8 @@ STATIC_ASSERT (ALIGNOF (CHAR16) == size
36 STATIC_ASSERT (ALIGNOF (INTN) == sizeof (INTN), "Alignment of INTN 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 (ALIGNOF (VOID *) == sizeof (VOID *), "Alignment of VOID * does not meet UEFI Specification Data Type requirements");
39-
40+#endif
41+#endif
42 //
43 // The following three enum types are used to verify that the compiler
44 // configuration for enum types is compliant with Section 2.3.1 of the
45@@ -861,6 +868,8 @@ typedef enum {
46 __VerifyInt32EnumValue = 0x7fffffff
47 } __VERIFY_INT32_ENUM_SIZE;
48
49+#ifndef OS_BUILD
50+#ifndef UNIT_TEST_UEFI_BUILD
51 STATIC_ASSERT (sizeof (__VERIFY_UINT8_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");
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");
58+#endif
59+#endif
60
61 /**
62 Macro that returns a pointer to the data structure that contains a specified field of
diff --git a/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
new file mode 100644
index 00000000..695e29e9
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-support/ipmctl/ipmctl_03.00.00.0499.bb
@@ -0,0 +1,47 @@
1SUMMARY = "Utility for managing Intel Optane DC persistent memory modules"
2DESCRIPTION = "Utility for configuring and managing Intel Optane Persistent \
3Memory modules (PMem). It supports functionality to: \
4Discover DCPMMs on the platform. \
5Provision the platform memory configuration. \
6View and update the firmware on DCPMMs. \
7Configure data-at-rest security on DCPMMs. \
8Track health and performance of DCPMMs. \
9Debug and troubleshoot DCPMMs."
10
11HOMEPAGE = "https://github.com/intel/ipmctl"
12BUGTRACKER = "https://github.com/intel/ipmctl/issues"
13
14LICENSE = "BSD-3-Clause | BSD-2-Clause"
15LIC_FILES_CHKSUM = "file://LICENSE;md5=72b9da60da6219d612ce30b746a0fe71 \
16 file://edk2/License.txt;md5=6123e5bf044a66db96c4ce88a36b2d08"
17
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 \
20 file://0001-Ignore-STATIC_ASSERTs-and-NULL-define-for-os-and-ut-builds.patch;patchdir=edk2 \
21 file://0001-CMakeLists-disable-Werror.patch \
22"
23
24SRCREV_ipmctl = "a71f2fb1c90dd07f9862b71c789881132193e8f9"
25#tag edk2-stable202408
26SRCREV_edk2 = "b158dad150bf02879668f72ce306445250838201"
27SRCREV_FORMAT = "ipmctl_edk2"
28
29S = "${WORKDIR}/git"
30
31inherit cmake dos2unix
32
33DEPENDS = "ndctl pkgconfig-native"
34
35EXTRA_OECMAKE = "-DRELEASE=ON"
36
37do_configure:prepend() {
38 for dir in BaseTools MdeModulePkg MdePkg ShellPkg ; do
39 ln -sf edk2/${dir} ${S}
40 done
41}
42
43do_install:append() {
44 # Remove /var/log/ipmctl as anything created in /var/log will not be
45 # available when tmpfs is mounted at /var/volatile/log.
46 rm -rf ${D}${localstatedir}/log
47}
diff --git a/lib/oeqa/runtime/cases/cyclictest.py b/lib/oeqa/runtime/cases/cyclictest.py
new file mode 100644
index 00000000..8890651a
--- /dev/null
+++ b/lib/oeqa/runtime/cases/cyclictest.py
@@ -0,0 +1,39 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.core.decorator.depends import OETestDepends
3from oeqa.runtime.decorator.package import OEHasPackage
4import os
5import subprocess
6import datetime
7
8class CyclicTest(OERuntimeTestCase):
9
10 @OEHasPackage(['rt-tests'])
11 @OETestDepends(['ssh.SSHTest.test_ssh'])
12 def test_cyclic(self):
13 # Cyclictest command and argument based on public setup for Intel(R) Core(TM) i7-6700
14 # https://www.osadl.org/Latency-plot-of-system-in-rack-9-slot.qa-latencyplot-r9s5.0.html?shadow=1
15 # Command line: cyclictest -l100000000 -m -Sp99 -i200 -h400 -q
16 status, output = self.target.run('cyclictest -l100000000 -m -Sp99 -i200 -h400')
17 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
18 test_log_dir = self.td.get('TEST_LOG_DIR', '')
19
20 if not test_log_dir:
21 test_log_dir = os.path.join(self.td.get('WORKDIR', ''), 'testimage')
22
23 cyclic_log_dir = os.path.join(test_log_dir, '%s.%s' % ('cyclic_test', datetime.datetime.now().strftime('%Y%m%d%H%M%S')))
24 os.makedirs(cyclic_log_dir)
25 log_path = os.path.join(cyclic_log_dir, 'cyclic_log')
26 with open(log_path, 'w') as f:
27 f.write(output)
28
29 max_latency = subprocess.check_output(('grep "Max Latencies" %s | tr " " "\n" | sort -n | tail -1 | sed s/^0*//') % log_path, shell=True).strip()
30 max_latency = int(max_latency)
31
32 # Default target latency based on max latency (24us) captured at public execution multiple by 1.2 (20% buffer)
33 # https://www.osadl.org/Latency-plot-of-system-in-rack-9-slot.qa-latencyplot-r9s5.0.html?shadow=1
34 target_latency = 1.2*24
35 user_defined_target_latency = self.tc.td.get("RTKERNEL_TARGET_LATENCY")
36 if user_defined_target_latency:
37 target_latency = int(user_defined_target_latency)
38 self.assertTrue(max_latency < target_latency,
39 msg="Max latency (%sus) is greater than target (%sus)." % (max_latency, target_latency))
diff --git a/lib/oeqa/runtime/cases/intel_mediasdk.py b/lib/oeqa/runtime/cases/intel_mediasdk.py
new file mode 100644
index 00000000..4ae7d580
--- /dev/null
+++ b/lib/oeqa/runtime/cases/intel_mediasdk.py
@@ -0,0 +1,34 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.core.decorator.depends import OETestDepends
4
5class MsdkTest(OERuntimeTestCase):
6
7 @classmethod
8 def tearDownClass(cls):
9 cls.tc.target.run("rm /tmp/mtest_h264.mp4")
10
11 @OEHasPackage(['gstreamer1.0-plugins-base'])
12 @OEHasPackage(['gstreamer1.0-plugins-good'])
13 @OEHasPackage(['gstreamer1.0-plugins-bad'])
14 @OEHasPackage(['intel-mediasdk'])
15 @OEHasPackage(['intel-media-driver', 'libigfxcmrt7'])
16 def test_gstreamer_can_encode_with_msdk_and_intel_media_driver(self):
17 (status, output) = self.target.run('gst-inspect-1.0 msdk')
18 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
19
20 (status, output) = self.target.run('export LIBVA_DRIVER_NAME=iHD; '
21 'gst-launch-1.0 -ev videotestsrc num-buffers=120 ! timeoverlay ! '
22 'msdkh264enc ! video/x-h264,profile=main ! h264parse ! '
23 'filesink location=/tmp/mtest_h264.mp4')
24 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
25
26 @OETestDepends(['intel_mediasdk.MsdkTest.test_gstreamer_can_encode_with_msdk_and_intel_media_driver'])
27 def test_gstreamer_can_decode_with_msdk_and_intel_media_driver(self):
28 (status, output) = self.target.run('export LIBVA_DRIVER_NAME=iHD; '
29 'gst-launch-1.0 filesrc location=/tmp/mtest_h264.mp4 ! '
30 'h264parse ! msdkh264dec ! '
31 'msdkh265enc rate-control=cbr bitrate=5000 gop-size=30 b-frames=2 ! '
32 'video/x-h265,profile=main ! h265parse ! fakesink')
33 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
34
diff --git a/lib/oeqa/runtime/cases/intel_vaapi_driver.py b/lib/oeqa/runtime/cases/intel_vaapi_driver.py
new file mode 100644
index 00000000..31e11a81
--- /dev/null
+++ b/lib/oeqa/runtime/cases/intel_vaapi_driver.py
@@ -0,0 +1,27 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.core.decorator.depends import OETestDepends
4
5class VaapiDriverTest(OERuntimeTestCase):
6
7 @classmethod
8 def tearDownClass(cls):
9 cls.tc.target.run("rm /tmp/vtest_h264.mp4")
10
11 @OEHasPackage(['gstreamer1.0-plugins-base'])
12 @OEHasPackage(['gstreamer1.0-plugins-good'])
13 @OEHasPackage(['gstreamer1.0-vaapi'])
14 @OEHasPackage(['intel-vaapi-driver'])
15 def test_gstreamer_can_encode_with_intel_vaapi_driver(self):
16 (status, output) = self.target.run('gst-inspect-1.0 vaapi')
17 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
18
19 (status, output) = self.target.run('gst-launch-1.0 -ev videotestsrc num-buffers=60 ! '
20 'timeoverlay ! vaapih264enc ! h264parse ! mp4mux ! filesink location=/tmp/vtest_h264.mp4')
21 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
22
23 @OETestDepends(['intel_vaapi_driver.VaapiDriverTest.test_gstreamer_can_encode_with_intel_vaapi_driver'])
24 def test_gstreamer_can_decode_with_intel_vaapi_driver(self):
25 (status, output) = self.target.run('gst-launch-1.0 filesrc location=/tmp/vtest_h264.mp4 ! '
26 'qtdemux ! h264parse ! vaapih264dec ! vaapisink')
27 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/cases/isal.py b/lib/oeqa/runtime/cases/isal.py
new file mode 100644
index 00000000..5025f986
--- /dev/null
+++ b/lib/oeqa/runtime/cases/isal.py
@@ -0,0 +1,24 @@
1import os
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.runtime.case import OERuntimeTestCase
4from oeqa.core.decorator.depends import OETestDepends
5
6class IsalTest(OERuntimeTestCase):
7
8 @OEHasPackage(['isa-l'])
9 def test_isal_igzip_version(self):
10 command = 'igzip -V'
11 (status, output) = self.target.run(command)
12 self.assertEqual(status, 0, msg="Error messages: %s" % output)
13
14 @OETestDepends(['isal.IsalTest.test_isal_igzip_version'])
15 def test_isal_igzip_can_compress(self):
16 command = 'echo "hello" > /tmp/igzip_sample'
17 (status, output) = self.target.run(command)
18 self.assertEqual(status, 0, msg="Error messages: %s" % output)
19 command = 'igzip -z /tmp/igzip_sample'
20 (status, output) = self.target.run(command)
21 self.assertEqual(status, 0, msg="Error messages: %s" % output)
22 command = 'rm /tmp/igzip_sample*'
23 (status, output) = self.target.run(command)
24 self.assertEqual(status, 0, msg="Error messages: %s" % output)
diff --git a/lib/oeqa/runtime/cases/libipt.py b/lib/oeqa/runtime/cases/libipt.py
new file mode 100644
index 00000000..4adb13f0
--- /dev/null
+++ b/lib/oeqa/runtime/cases/libipt.py
@@ -0,0 +1,23 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.core.decorator.depends import OETestDepends
4
5class LibiptTest(OERuntimeTestCase):
6 libipt_bin_dir = '/usr/bin/libipt/'
7
8 @classmethod
9 def tearDownClass(cls):
10 cls.tc.target.run('rm /tmp/loop-tnt*')
11
12 @OEHasPackage(['libipt', 'libipt2'])
13 @OEHasPackage(['libipt-test'])
14 @OEHasPackage(['yasm'])
15 def test_libipt_can_generate_trace_packet(self):
16 (status, output) = self.target.run('cd /tmp; %spttc %s/tests/loop-tnt.ptt' %
17 (self.libipt_bin_dir, self.libipt_bin_dir))
18 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
19
20 @OETestDepends(['libipt.LibiptTest.test_libipt_can_generate_trace_packet'])
21 def test_libipt_can_perform_trace_packet_dump(self):
22 (status, output) = self.target.run('cd /tmp; %sptdump loop-tnt.pt' % self.libipt_bin_dir)
23 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/cases/libxcam.py b/lib/oeqa/runtime/cases/libxcam.py
new file mode 100644
index 00000000..57192f07
--- /dev/null
+++ b/lib/oeqa/runtime/cases/libxcam.py
@@ -0,0 +1,37 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3from oeqa.core.decorator.depends import OETestDepends
4
5class LibxcamTest(OERuntimeTestCase):
6 yuv_file = 'vtest.yuv'
7 soft_test_app_file = 'test-soft-image'
8 libxcam_test_app_dir = '/usr/bin/libxcam/'
9 libxcam_file_dir = '/tmp/'
10
11 @classmethod
12 def tearDownClass(cls):
13 cls.tc.target.run("rm %s%s" % (cls.libxcam_file_dir, cls.yuv_file))
14
15 @OEHasPackage(['gstreamer1.0-plugins-base'])
16 @OEHasPackage(['gstreamer1.0-plugins-good'])
17 @OEHasPackage(['gstreamer1.0-vaapi'])
18 @OEHasPackage(['intel-vaapi-driver'])
19 def test_libxcam_can_generate_yuv_file_with_gstreamer(self):
20 (status, output) = self.target.run('gst-inspect-1.0 vaapi')
21 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
22
23 (status, output) = self.target.run('gst-launch-1.0 -ev videotestsrc num-buffers=60 ! '
24 'timeoverlay ! filesink location=%s%s' %
25 (self.libxcam_file_dir, self.yuv_file))
26 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
27
28 @OEHasPackage(['libxcam'])
29 @OEHasPackage(['libxcam-test'])
30 @OETestDepends(['libxcam.LibxcamTest.test_libxcam_can_generate_yuv_file_with_gstreamer'])
31 def test_libxcam_can_execute_soft_image_sample_app(self):
32 (status, output) = self.target.run('%s%s --type remap --input0 %s%s --output soft_out.nv12 --save false' %
33 (self.libxcam_test_app_dir,
34 self.soft_test_app_file,
35 self.libxcam_file_dir,
36 self.yuv_file))
37 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/cases/microcode.py b/lib/oeqa/runtime/cases/microcode.py
new file mode 100644
index 00000000..52c1cdb4
--- /dev/null
+++ b/lib/oeqa/runtime/cases/microcode.py
@@ -0,0 +1,31 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.runtime.decorator.package import OEHasPackage
3import re
4
5class MicrocodeTest(OERuntimeTestCase):
6
7 def get_revision_from_microcode_string_list(self, microcode_string_list, re_pattern):
8 re_compile = re.compile(re_pattern)
9 rev_list = []
10 for s in microcode_string_list:
11 matched_revs = re_compile.findall(s)
12 if matched_revs:
13 for mr in matched_revs:
14 rev_list.append(int(mr, 16))
15 return rev_list
16
17 @OEHasPackage(["iucode-tool"])
18 def test_microcode_update(self):
19 (status, output) = self.target.run('iucode_tool /lib/firmware/intel-ucode/ -tb -l --scan-system=2 | grep rev')
20
21 selected_microcodes = output.splitlines()
22 selected_rev_list = self.get_revision_from_microcode_string_list(selected_microcodes, "rev (\w*)")
23
24 (status, output) = self.target.run("dmesg | grep 'microcode updated early'")
25
26 updated_microcodes = output.splitlines()
27 updated_rev_list = self.get_revision_from_microcode_string_list(updated_microcodes, "revision (\w*)")
28
29 for ul in updated_rev_list:
30 self.assertTrue(ul in selected_rev_list, msg="Updated revision, %s, not in selected revision list (%s)" %
31 (ul, selected_rev_list))
diff --git a/lib/oeqa/runtime/cases/mkl_dnn.py b/lib/oeqa/runtime/cases/mkl_dnn.py
new file mode 100644
index 00000000..8d50df54
--- /dev/null
+++ b/lib/oeqa/runtime/cases/mkl_dnn.py
@@ -0,0 +1,67 @@
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.mkl_dnn_test import MkldnnTest
6
7class MklDnn(OERuntimeTestCase):
8
9 @classmethod
10 def setUpClass(cls):
11 cls.mkldnntest = MkldnnTest(OEQATarget(cls.tc.target))
12
13 @classmethod
14 def tearDownClass(cls):
15 cls.mkldnntest.tear_down()
16
17 @OEHasPackage(['onednn', 'libdnnl2'])
18 @OEHasPackage(['onednn-src', 'libdnnl-src'])
19 @OEHasPackage(['onednn-dev', 'libdnnl-dev'])
20 @OEHasPackage(['gcc'])
21 @OEHasPackage(['gcc-symlinks'])
22 @OEHasPackage(['libstdc++-dev'])
23 @OEHasPackage(['binutils'])
24 def test_mkldnn_can_compile_and_execute(self):
25 (status, output) = self.mkldnntest.test_mkldnn_can_compile_and_execute()
26 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
27
28 @OEHasPackage(['onednn', 'libdnnl2'])
29 @OEHasPackage(['onednn-test', 'libdnnl-test'])
30 def test_mkldnn_benchdnn_package_available(self):
31 (status, output) = self.mkldnntest.test_mkldnn_benchdnn_package_available()
32 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
33
34 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
35 def test_mkldnn_conv_api(self):
36 (status, output) = self.mkldnntest.test_mkldnn_conv_api()
37 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
38
39 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
40 def test_mkldnn_bnorm_api(self):
41 (status, output) = self.mkldnntest.test_mkldnn_bnorm_api()
42 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
43
44 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
45 def test_mkldnn_deconv_api(self):
46 (status, output) = self.mkldnntest.test_mkldnn_deconv_api()
47 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
48
49 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
50 def test_mkldnn_ip_api(self):
51 (status, output) = self.mkldnntest.test_mkldnn_ip_api()
52 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
53
54 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
55 def test_mkldnn_reorder_api(self):
56 (status, output) = self.mkldnntest.test_mkldnn_reorder_api()
57 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
58
59 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
60 def test_mkldnn_rnn_api(self):
61 (status, output) = self.mkldnntest.test_mkldnn_rnn_api()
62 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
63
64 @OETestDepends(['mkl_dnn.MklDnn.test_mkldnn_benchdnn_package_available'])
65 def test_mkldnn_shuffle_api(self):
66 (status, output) = self.mkldnntest.test_mkldnn_shuffle_api()
67 self.assertEqual(status, 0, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/cases/parselogs-ignores-intel-core2-32.txt b/lib/oeqa/runtime/cases/parselogs-ignores-intel-core2-32.txt
new file mode 100644
index 00000000..84ce8168
--- /dev/null
+++ b/lib/oeqa/runtime/cases/parselogs-ignores-intel-core2-32.txt
@@ -0,0 +1,9 @@
1# These should be reviewed to see if they are still needed
2ACPI: No _BQC method, cannot determine initial brightness
3[Firmware Bug]: ACPI: No _BQC method, cannot determine initial brightness
4(EE) Failed to load module "psb"
5(EE) Failed to load module "psbdrv"
6(EE) open /dev/fb0: No such file or directory
7(EE) AIGLX: reverting to software rendering
8dmi: Firmware registration failed.
9ioremap error for 0x78
diff --git a/lib/oeqa/runtime/cases/parselogs-ignores-intel-corei7-64.txt b/lib/oeqa/runtime/cases/parselogs-ignores-intel-corei7-64.txt
new file mode 100644
index 00000000..5c9b4bc7
--- /dev/null
+++ b/lib/oeqa/runtime/cases/parselogs-ignores-intel-corei7-64.txt
@@ -0,0 +1,14 @@
1# These should be reviewed to see if they are still needed
2can't set Max Payload Size to 256
3intel_punit_ipc: can't request region for resource
4[drm] parse error at position 4 in video mode 'efifb'
5ACPI Error: Could not enable RealTimeClock event
6ACPI Warning: Could not enable fixed event - RealTimeClock
7hci_intel INT33E1:00: Unable to retrieve gpio
8hci_intel: probe of INT33E1:00 failed
9can't derive routing for PCI INT A
10failed to read out thermal zone
11Bluetooth: hci0: Setting Intel event mask failed
12ttyS2 - failed to request DMA
13Bluetooth: hci0: Failed to send firmware data (-38)
14atkbd serio0: Failed to enable keyboard on isa0060/serio0
diff --git a/lib/oeqa/runtime/cases/thermald.py b/lib/oeqa/runtime/cases/thermald.py
new file mode 100644
index 00000000..a0b6a92b
--- /dev/null
+++ b/lib/oeqa/runtime/cases/thermald.py
@@ -0,0 +1,47 @@
1from oeqa.runtime.case import OERuntimeTestCase
2from oeqa.core.decorator.depends import OETestDepends
3from oeqa.runtime.decorator.package import OEHasPackage
4import threading
5import time
6import re
7
8class ThermaldTest(OERuntimeTestCase):
9 def get_thermal_zone_with_target_type(self, target_type):
10 i = 0
11 while True:
12 status, output = self.target.run('cat /sys/class/thermal/thermal_zone%s/type' % i)
13 if status:
14 return -1
15 if output == target_type:
16 return i
17 i = i + 1
18
19 def run_thermald_emulation_to_exceed_setpoint_then_end_thermald_process(self, run_args):
20 time.sleep(2)
21 self.target.run('echo 106000 > /sys/class/thermal/thermal_zone%s/emul_temp' % run_args)
22 time.sleep(5)
23 __, output = self.target.run('pidof thermald')
24 self.target.run('kill -9 %s' % output)
25
26 def test_thermald_emulation_mode(self):
27 # Thermald test depend on thermal emulation, where CONFIG_THERMAL_EMULATION=y was required
28 # To enable thermal emulation, refer to https://github.com/intel/thermal_daemon/blob/master/test/readme_test.txt
29 (status, output) = self.target.run('gzip -dc /proc/config.gz | grep CONFIG_THERMAL_EMULATION=y')
30 if status:
31 self.skipTest("CONFIG_THERMAL_EMULATION is not set")
32
33 @OEHasPackage(['thermald'])
34 @OETestDepends(['thermald.ThermaldTest.test_thermald_emulation_mode'])
35 def test_thermald_can_track_thermal_exceed_setpoint(self):
36 x86_thermal_zone_index = self.get_thermal_zone_with_target_type('x86_pkg_temp')
37 if x86_thermal_zone_index < 0:
38 self.skipTest('Could not get the thermal zone index for target type (%s)' % 'x86_pkg_temp')
39 td_thread = threading.Thread(target=self.run_thermald_emulation_to_exceed_setpoint_then_end_thermald_process,
40 args=(x86_thermal_zone_index,))
41 td_thread.start()
42 td_thread.join()
43 status, output = self.target.run('timeout 3s thermald --no-daemon --loglevel=info')
44 regex_search = ".*thd_cdev_set_state.*106000"
45 regex_comp = re.compile(regex_search)
46 m = regex_comp.search(output)
47 self.assertTrue(m, msg='status and output: %s and %s' % (status, output))
diff --git a/lib/oeqa/runtime/miutils/targets/oeqatarget.py b/lib/oeqa/runtime/miutils/targets/oeqatarget.py
new file mode 100644
index 00000000..a9f7f1b4
--- /dev/null
+++ b/lib/oeqa/runtime/miutils/targets/oeqatarget.py
@@ -0,0 +1,11 @@
1
2class OEQATarget(object):
3
4 def __init__(self, target):
5 self.target = target
6
7 def run(self, cmd):
8 return self.target.run(cmd)
9
10 def copy_to(self, source, destination_dir):
11 self.target.copyTo(source, destination_dir)
diff --git a/lib/oeqa/runtime/miutils/tests/mkl_dnn_test.py b/lib/oeqa/runtime/miutils/tests/mkl_dnn_test.py
new file mode 100644
index 00000000..869a4cbe
--- /dev/null
+++ b/lib/oeqa/runtime/miutils/tests/mkl_dnn_test.py
@@ -0,0 +1,55 @@
1
2class MkldnnTest(object):
3 mkldnn_target_test_filename = 'mkl-dnn-c'
4
5 def __init__(self, target):
6 self.target = target
7
8 def tear_down(self):
9 self.target.run('rm /tmp/%s' % self.mkldnn_target_test_filename)
10
11 def test_mkldnn_can_compile_and_execute(self):
12 mkldnn_src_dir = '/usr/src/debug/onednn/'
13 mkldnn_src_test_filename = 'api.c'
14 mkldnn_src_test_file = ''
15
16 (__, output) = self.target.run('cd %s; find -name %s' % (mkldnn_src_dir, mkldnn_src_test_filename))
17 if 'No such file or directory' in output:
18 return -1, output
19
20 mkldnn_src_test_file = os.path.join(mkldnn_src_dir, output)
21 (status, output) = self.target.run('gcc %s -o /tmp/%s -ldnnl' % (mkldnn_src_test_file, self.mkldnn_target_test_filename))
22 if status:
23 return status, output
24
25 (status, output) = self.target.run('cd /tmp; ./%s' % self.mkldnn_target_test_filename)
26 return status, output
27
28 def test_mkldnn_benchdnn_package_available(self):
29 (status, output) = self.target.run('ls /usr/bin/mkl-dnn/tests/benchdnn')
30 return status, output
31
32 def _run_mkldnn_benchdnn_test(self, cmd):
33 (status, output) = self.target.run('cd /usr/bin/mkl-dnn/tests/benchdnn; %s' % cmd)
34 return status, output
35
36 def test_mkldnn_conv_api(self):
37 return self._run_mkldnn_benchdnn_test('./benchdnn --conv --batch=inputs/conv/test_conv_3d')
38
39 def test_mkldnn_bnorm_api(self):
40 return self._run_mkldnn_benchdnn_test('./benchdnn --bnorm --batch=inputs/bnorm/test_bnorm_regressions')
41
42 def test_mkldnn_deconv_api(self):
43 return self._run_mkldnn_benchdnn_test('./benchdnn --deconv --batch=inputs/deconv/test_deconv_bfloat16')
44
45 def test_mkldnn_ip_api(self):
46 return self._run_mkldnn_benchdnn_test('./benchdnn --ip --batch=inputs/ip/test_ip_bfloat16')
47
48 def test_mkldnn_reorder_api(self):
49 return self._run_mkldnn_benchdnn_test('./benchdnn --reorder --batch=inputs/reorder/test_reorder_bfloat16')
50
51 def test_mkldnn_rnn_api(self):
52 return self._run_mkldnn_benchdnn_test('./benchdnn --rnn --batch=inputs/rnn/test_rnn_all')
53
54 def test_mkldnn_shuffle_api(self):
55 return self._run_mkldnn_benchdnn_test('./benchdnn --shuffle --batch=inputs/shuffle/test_shuffle_bfloat16') \ No newline at end of file
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/formfactor/formfactor_0.0.bbappend b/recipes-bsp/formfactor/formfactor_0.0.bbappend
index 6dd422ae..d21c3bee 100644
--- a/recipes-bsp/formfactor/formfactor_0.0.bbappend
+++ b/recipes-bsp/formfactor/formfactor_0.0.bbappend
@@ -1 +1 @@
FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:" FILESEXTRAPATHS:prepend:intel-x86-common := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf b/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
deleted file mode 100644
index 74d33c87..00000000
--- a/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
+++ /dev/null
@@ -1,2 +0,0 @@
1# Mimic modprobe's install funcitonality with busybox's modprobe
2install gma500_gfx dmesg | grep gma500_gfx_checked || { /etc/modprobe.d/gma500-gfx-check.sh || modprobe gma500_gfx; }
diff --git a/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh b/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
deleted file mode 100644
index 75cda99f..00000000
--- a/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
+++ /dev/null
@@ -1,15 +0,0 @@
1#!/bin/sh
2
3# Check for devices we wish to avoid gma500_gfx for
4DEVICES="0x8119 0x4108"
5
6# Checked flag to avoid infinite modprobe
7echo "gma500_gfx_checked" >> /dev/kmsg;
8
9for DEVICE in $DEVICES; do
10 if udevadm trigger --subsystem-match=pci --verbose --attr-match=device=$DEVICE | grep "pci" >> /dev/null ; then
11 echo "Found $DEVICE, avoiding gma500_gfx module" >> /dev/kmsg;
12 exit 0
13 fi
14done
15exit 1
diff --git a/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb b/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
deleted file mode 100644
index 7b08064b..00000000
--- a/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
1SUMMARY = "Intel gma500_gfx fix for certain hardware"
2DESCRIPTION = "Avoid inserting gma500_gfx module for certain hardware devices."
3LICENSE="GPLv2"
4LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
5
6SRC_URI = "file://gma500-gfx-check.conf \
7 file://gma500-gfx-check.sh "
8
9do_install(){
10 install -d ${D}${sysconfdir}/modprobe.d/
11 install -m 755 ${WORKDIR}/gma500-gfx-check.sh ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.sh
12 install -m 644 ${WORKDIR}/gma500-gfx-check.conf ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.conf
13}
14
15FILES_${PN}="${sysconfdir}/modprobe.d/gma500-gfx-check.conf \
16 ${sysconfdir}/modprobe.d/gma500-gfx-check.sh"
17
18COMPATIBLE_MACHINE = "intel-core2-32"
diff --git a/recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb b/recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb
new file mode 100644
index 00000000..a0e8d214
--- /dev/null
+++ b/recipes-bsp/intel-cmt-cat/intel-cmt-cat_25.04.bb
@@ -0,0 +1,29 @@
1SUMMARY = "intel-cmt-cat"
2DESCRIPTION = "Software package which provides basic support for Intel(R) \
3Resource Director Technology (Intel(R) RDT)"
4HOMEPAGE = "https://github.com/intel/intel-cmt-cat"
5
6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=4b63c65942e1c16fd897f8cd20abebf8"
8
9SRC_URI = "git://github.com/intel/intel-cmt-cat;protocol=https;branch=master"
10SRCREV = "17629d0b726875836af6c7d9cb38b8ed23f32089"
11
12S = "${WORKDIR}/git"
13
14COMPATIBLE_HOST = '(x86_64).*-linux'
15COMPATIBLE_HOST:libc-musl = "null"
16
17do_install() {
18 oe_runmake install PREFIX=${D}${prefix} NOLDCONFIG=y
19}
20
21FILES:${PN} += "${nonarch_libdir}/libpqos*"
22FILES:${PN}-doc = "/usr/man*"
23
24INSANE_SKIP:${PN} += "ldflags"
25INSANE_SKIP:${PN} += "dev-so"
26INSANE_SKIP:${PN} += "libdir"
27INSANE_SKIP:${PN} += "already-stripped"
28
29INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
diff --git a/recipes-bsp/metee/metee_3.2.4.bb b/recipes-bsp/metee/metee_3.2.4.bb
new file mode 100644
index 00000000..da8220b9
--- /dev/null
+++ b/recipes-bsp/metee/metee_3.2.4.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Intel(R) METEE Library"
2DESCRIPTION = "MEETEE library provides a cross-platform simple \
3 programing interface for accessing Intel HECI interfaces on devices \
4 found in BigCore and Atom based products."
5
6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://COPYING;md5=2ee41112a44fe7014dce33e26468ba93"
8
9COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
10
11inherit cmake
12
13SRC_URI = "git://github.com/intel/metee.git;branch=master;protocol=https \
14"
15SRCREV = "db45e37e146fd9c06907a15ade55eba06ad1f951"
16
17S = "${WORKDIR}/git"
18
diff --git a/recipes-bsp/systemd-boot/systemd-boot/0001-efi-boot.c-workaround-for-Joule-BIOS-hang.patch b/recipes-bsp/systemd-boot/systemd-boot/0001-efi-boot.c-workaround-for-Joule-BIOS-hang.patch
deleted file mode 100644
index 8d0b6149..00000000
--- a/recipes-bsp/systemd-boot/systemd-boot/0001-efi-boot.c-workaround-for-Joule-BIOS-hang.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From 58669ad764767afea4de53f8a97357773b1855ef Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com>
3Date: Tue, 25 Oct 2016 12:54:08 -0700
4Subject: [PATCH] efi/boot.c: workaround for Joule BIOS hang
5
6This patch should be removed when the BIOS is fixed
7
8Authored-by: Steve Sakoman <steve@sakoman.com>
9
10Upstream-Status: Inappropriate [machine specific workaround]
11Signed-off-by: Saul Wold <sgw@linux.intel.com>
12---
13 src/boot/efi/boot.c | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/src/boot/efi/boot.c b/src/boot/efi/boot.c
17index 3dcd9a5..3c6ed8c 100644
18--- a/src/boot/efi/boot.c
19+++ b/src/boot/efi/boot.c
20@@ -649,7 +649,7 @@ static BOOLEAN menu_run(Config *config, ConfigEntry **chosen_entry, CHAR16 *load
21 }
22
23 /* timeout disabled, wait for next key */
24- wait = TRUE;
25+ wait = FALSE;
26 continue;
27 }
28
29--
302.7.4
31
diff --git a/recipes-bsp/systemd-boot/systemd-boot_%.bbappend b/recipes-bsp/systemd-boot/systemd-boot_%.bbappend
deleted file mode 100644
index d46ef410..00000000
--- a/recipes-bsp/systemd-boot/systemd-boot_%.bbappend
+++ /dev/null
@@ -1,15 +0,0 @@
1FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/systemd-boot:"
2
3SRC_URI_append_intel-x86-common = " \
4 file://0001-efi-boot.c-workaround-for-Joule-BIOS-hang.patch \
5 "
6
7PACKAGE_ARCH_intel-x86-common = "${INTEL_COMMON_PACKAGE_ARCH}"
8
9do_compile_append_intel-x86-common() {
10 ninja src/boot/efi/linux${SYSTEMD_BOOT_EFI_ARCH}.efi.stub
11}
12
13do_deploy_append_intel-x86-common() {
14 install ${B}/src/boot/efi/linux*.efi.stub ${DEPLOYDIR}
15}
diff --git a/recipes-bsp/thermald/files/0001-Include-poll.h-instead-of-sys-poll.h.patch b/recipes-bsp/thermald/files/0001-Include-poll.h-instead-of-sys-poll.h.patch
deleted file mode 100644
index 16d2ff10..00000000
--- a/recipes-bsp/thermald/files/0001-Include-poll.h-instead-of-sys-poll.h.patch
+++ /dev/null
@@ -1,36 +0,0 @@
1From b3de44c28cd930d68c17638575d46e590679f9fe Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 18 Jan 2018 10:10:40 +0800
4Subject: [PATCH] Include poll.h instead of sys/poll.h
5
6POSIX specifies poll.h to be the correct header name [1]. Also fixes
7a warning when built with musl.
8
9 | <sysroot>/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Werror=cpp]
10 | #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
11
12[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/poll.h.html
13
14Upstream-Status: Submitted [https://github.com/intel/thermal_daemon/pull/147]
15
16Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
17---
18 src/thd_kobj_uevent.h | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21diff --git a/src/thd_kobj_uevent.h b/src/thd_kobj_uevent.h
22index d30ea5c..aa8e33f 100644
23--- a/src/thd_kobj_uevent.h
24+++ b/src/thd_kobj_uevent.h
25@@ -28,7 +28,7 @@
26 #include <stdlib.h>
27 #include <string.h>
28
29-#include <sys/poll.h>
30+#include <poll.h>
31 #include <sys/socket.h>
32 #include <sys/types.h>
33 #include <unistd.h>
34--
352.7.4
36
diff --git a/recipes-bsp/thermald/files/0002-Use-correct-format-specifier-for-X32.patch b/recipes-bsp/thermald/files/0002-Use-correct-format-specifier-for-X32.patch
deleted file mode 100644
index 893b343a..00000000
--- a/recipes-bsp/thermald/files/0002-Use-correct-format-specifier-for-X32.patch
+++ /dev/null
@@ -1,87 +0,0 @@
1From fa6cfd59e52be6a45a067cc770adc62437295085 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 18 Jan 2018 14:29:09 +0800
4Subject: [PATCH 2/2] Use correct format specifier for X32
5
6time_t in x32 is of long long type. Using %ld specifier leads
7to errors like:
8
9| ../git/src/thd_model.cpp: In member function 'unsigned int cthd_model::update_set_point(unsigned int)':
10| ../git/src/thermald.h:74:68: error: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t {aka long long int}' [-Werror=format=]
11| #define thd_log_info(...) g_log(NULL, G_LOG_LEVEL_INFO, __VA_ARGS__)
12| ^
13| ../git/src/thd_model.cpp:112:3: note: in expansion of macro 'thd_log_info'
14| thd_log_info("update_pid %ld %ld %d %g %d\n", now, last_time, error,
15| ^~~~~~~~~~~~
16
17Use the correct format specifier based on the address model.
18
19Upstream-Status: Submitted [https://github.com/intel/thermal_daemon/pull/147]
20
21Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
22---
23 src/thd_model.cpp | 14 ++++++++++++++
24 src/thd_trip_point.cpp | 6 ++++++
25 2 files changed, 20 insertions(+)
26
27diff --git a/src/thd_model.cpp b/src/thd_model.cpp
28index 5f1d0d7..46b95dc 100644
29--- a/src/thd_model.cpp
30+++ b/src/thd_model.cpp
31@@ -109,8 +109,14 @@ unsigned int cthd_model::update_set_point(unsigned int curr_temp) {
32 /*Compute PID Output*/
33 output = kp * error + ki * err_sum + kd * d_err;
34 _setpoint = max_temp - (unsigned int) output;
35+
36+#if defined __x86_64__ && defined __ILP32__
37+ thd_log_info("update_pid %lld %lld %d %g %d\n", now, last_time, error,
38+ output, _setpoint);
39+#else
40 thd_log_info("update_pid %ld %ld %d %g %d\n", now, last_time, error,
41 output, _setpoint);
42+#endif
43 if ((_setpoint < 0) || (abs(set_point - _setpoint) > max_compensation))
44 set_point -= max_compensation;
45 else
46@@ -134,10 +140,18 @@ void cthd_model::add_sample(int temperature) {
47 updated_set_point = false;
48 if (trend_increase_start == 0 && temperature > hot_zone) {
49 trend_increase_start = tm;
50+#if defined __x86_64__ && defined __ILP32__
51+ thd_log_debug("Trend increase start %lld\n", trend_increase_start);
52+#else
53 thd_log_debug("Trend increase start %ld\n", trend_increase_start);
54+#endif
55 } else if (trend_increase_start && temperature < hot_zone) {
56 int _set_point;
57+#if defined __x86_64__ && defined __ILP32__
58+ thd_log_debug("Trend increase stopped %lld\n", trend_increase_start);
59+#else
60 thd_log_debug("Trend increase stopped %ld\n", trend_increase_start);
61+#endif
62 trend_increase_start = 0;
63 _set_point = read_set_point(); // Restore set point to a calculated max
64 if (_set_point > set_point) {
65diff --git a/src/thd_trip_point.cpp b/src/thd_trip_point.cpp
66index dd1b881..170adcf 100644
67--- a/src/thd_trip_point.cpp
68+++ b/src/thd_trip_point.cpp
69@@ -132,9 +132,15 @@ bool cthd_trip_point::thd_trip_point_check(int id, unsigned int read_temp,
70 time_t tm;
71 time(&tm);
72 if ((tm - cdevs[i].last_op_time) < cdevs[i].sampling_priod) {
73+#if defined __x86_64__ && defined __ILP32__
74+ thd_log_info("Too early to act index %d tm %lld\n",
75+ cdev->thd_cdev_get_index(),
76+ tm - cdevs[i].last_op_time);
77+#else
78 thd_log_info("Too early to act index %d tm %ld\n",
79 cdev->thd_cdev_get_index(),
80 tm - cdevs[i].last_op_time);
81+#endif
82 break;
83 }
84 cdevs[i].last_op_time = tm;
85--
862.7.4
87
diff --git a/recipes-core/images/core-image-minimal-initramfs.bbappend b/recipes-core/images/core-image-minimal-initramfs.bbappend
index 132f15b5..90ac28fd 100644
--- a/recipes-core/images/core-image-minimal-initramfs.bbappend
+++ b/recipes-core/images/core-image-minimal-initramfs.bbappend
@@ -1,2 +1,2 @@
1# Add i915 graphics firmware 1# Add i915 graphics firmware
2PACKAGE_INSTALL_append_intel-x86-common = " linux-firmware-i915" 2PACKAGE_INSTALL:append:intel-x86-common = " linux-firmware-i915"
diff --git a/recipes-core/images/core-image-tiny.bb b/recipes-core/images/core-image-tiny.bb
index 6b09b0c2..f521f668 100644
--- a/recipes-core/images/core-image-tiny.bb
+++ b/recipes-core/images/core-image-tiny.bb
@@ -32,5 +32,5 @@ python() {
32 d.appendVarFlag('do_image', 'depends', ' %s:do_image_complete' % initrd_i) 32 d.appendVarFlag('do_image', 'depends', ' %s:do_image_complete' % initrd_i)
33} 33}
34 34
35WKS_FILE_intel-corei7-64 = "core-image-tiny.wks.in" 35WKS_FILE:intel-corei7-64 = "core-image-tiny.wks.in"
36WKS_FILE_intel-core2-32 = "core-image-tiny.wks.in" 36WKS_FILE:intel-core2-32 = "core-image-tiny.wks.in"
diff --git a/recipes-core/libxcam/libxcam/0001-fake_v4l2_device.h-fix-narrowing-warning.patch b/recipes-core/libxcam/libxcam/0001-fake_v4l2_device.h-fix-narrowing-warning.patch
new file mode 100644
index 00000000..f15d5cc7
--- /dev/null
+++ b/recipes-core/libxcam/libxcam/0001-fake_v4l2_device.h-fix-narrowing-warning.patch
@@ -0,0 +1,94 @@
1From d4c97b50b577ea16b9ff6d9a352ab474a119310e Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Wed, 18 May 2022 15:41:24 +0800
4Subject: [PATCH] fake_v4l2_device.h: fix narrowing warning
5
6Use uint32_t instead of int for IOCTLs commands.
7
8Warning log:
9| ../../../git/xcore/fake_v4l2_device.h: In member function 'virtual int XCam::FakeV4l2Device::io_control(int, void*)':
10| ../../../git/xcore/fake_v4l2_device.h:42:14: error: narrowing conversion of '3225441794' from 'long unsigned int' to 'int' [-Wnarrowing]
11| 42 | case VIDIOC_ENUM_FMT:
12| | ^~~~~~~~~~~~~~~
13| make[4]: *** [Makefile:685: libgstxcamsrc_la-gstxcamsrc.lo] Error 1
14
15Issue: https://github.com/intel/libxcam/issues/801
16Upstream-Status: Submitted [https://github.com/intel/libxcam/pull/802]
17
18Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
19---
20 xcore/base/xcam_common.h | 2 +-
21 xcore/fake_v4l2_device.h | 2 +-
22 xcore/v4l2_device.cpp | 2 +-
23 xcore/v4l2_device.h | 2 +-
24 xcore/xcam_common.cpp | 2 +-
25 5 files changed, 5 insertions(+), 5 deletions(-)
26
27diff --git a/xcore/base/xcam_common.h b/xcore/base/xcam_common.h
28index 1f16e1e..4aa6cb9 100644
29--- a/xcore/base/xcam_common.h
30+++ b/xcore/base/xcam_common.h
31@@ -75,7 +75,7 @@ void xcam_free (void *ptr);
32 * return, 0 successfully
33 * else, check errno
34 */
35-int xcam_device_ioctl (int fd, int cmd, void *arg);
36+int xcam_device_ioctl (int fd, uint32_t cmd, void *arg);
37 const char *xcam_fourcc_to_string (uint32_t fourcc);
38
39 void xcam_set_log (const char* file_name);
40diff --git a/xcore/fake_v4l2_device.h b/xcore/fake_v4l2_device.h
41index f679c19..e29787d 100644
42--- a/xcore/fake_v4l2_device.h
43+++ b/xcore/fake_v4l2_device.h
44@@ -33,7 +33,7 @@ public:
45 : V4l2Device ("/dev/null")
46 {}
47
48- int io_control (int cmd, void *arg)
49+ int io_control (uint32_t cmd, void *arg)
50 {
51 XCAM_UNUSED (arg);
52
53diff --git a/xcore/v4l2_device.cpp b/xcore/v4l2_device.cpp
54index 395461e..66a8ac6 100644
55--- a/xcore/v4l2_device.cpp
56+++ b/xcore/v4l2_device.cpp
57@@ -185,7 +185,7 @@ V4l2Device::close ()
58 }
59
60 int
61-V4l2Device::io_control (int cmd, void *arg)
62+V4l2Device::io_control (uint32_t cmd, void *arg)
63
64 {
65 if (_fd <= 0)
66diff --git a/xcore/v4l2_device.h b/xcore/v4l2_device.h
67index b4ad7ad..2551a92 100644
68--- a/xcore/v4l2_device.h
69+++ b/xcore/v4l2_device.h
70@@ -104,7 +104,7 @@ public:
71 XCamReturn queue_buffer (SmartPtr<V4l2Buffer> &buf);
72
73 // use as less as possible
74- virtual int io_control (int cmd, void *arg);
75+ virtual int io_control (uint32_t cmd, void *arg);
76
77 protected:
78
79diff --git a/xcore/xcam_common.cpp b/xcore/xcam_common.cpp
80index 848884d..d4d5093 100644
81--- a/xcore/xcam_common.cpp
82+++ b/xcore/xcam_common.cpp
83@@ -53,7 +53,7 @@ void xcam_free(void *ptr)
84 free (ptr);
85 }
86
87-int xcam_device_ioctl (int fd, int cmd, void *arg)
88+int xcam_device_ioctl (int fd, uint32_t cmd, void *arg)
89 {
90 int ret = 0;
91 int tried_time = 0;
92--
932.25.1
94
diff --git a/recipes-core/libxcam/libxcam_1.5.0.bb b/recipes-core/libxcam/libxcam_1.5.0.bb
new file mode 100644
index 00000000..df459d72
--- /dev/null
+++ b/recipes-core/libxcam/libxcam_1.5.0.bb
@@ -0,0 +1,39 @@
1SUMMARY = "libXCam is a project for extended camera(not limited in camera) \
2features and focus on image quality improvement and video analysis"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=8c911f084a3e5f46b21582a6cc9973e6"
5SECTION = "lib"
6
7inherit autotools pkgconfig
8
9S = "${WORKDIR}/git"
10SRCREV = "231a1d5243cd45c7a6b511b667f1ec52178fdda8"
11SRC_URI = "git://github.com/intel/libxcam.git;branch=1.5.0;protocol=https \
12 file://0001-fake_v4l2_device.h-fix-narrowing-warning.patch \
13"
14
15COMPATIBLE_HOST:libc-musl = "null"
16
17PACKAGECONFIG ??= " gst \
18 ${@bb.utils.contains("DISTRO_FEATURES", "opengl", "gles", "", d)} \
19 ${@bb.utils.contains("DISTRO_FEATURES", "vulkan", "vulkan", "", d)} \
20 "
21
22PACKAGECONFIG[gst] = "--enable-gst, --disable-gst, gstreamer1.0 gstreamer1.0-plugins-base"
23PACKAGECONFIG[aiq] = "--enable-aiq, --disable-aiq,"
24PACKAGECONFIG[libcl] = "--enable-libcl, --disable-libcl,"
25PACKAGECONFIG[opencv] = "--enable-opencv, --disable-opencv, opencv"
26PACKAGECONFIG[render] = "--enable-render, --disable-render,"
27PACKAGECONFIG[gles] = "--enable-gles, --disable-gles, virtual/mesa"
28PACKAGECONFIG[vulkan] = "--enable-vulkan, --disable-vulkan, vulkan-loader virtual/mesa"
29PACKAGECONFIG[dnn] = "--enable-dnn, --disable-dnn,"
30
31do_install:append () {
32 install -d ${D}${bindir}/libxcam
33 cp -r ${B}/tests/.libs/* ${D}${bindir}/libxcam/
34}
35
36FILES:${PN} += "${libdir}/gstreamer-*/*.so"
37FILES:${PN}-test = "${bindir}/libxcam/*"
38PACKAGES =+ "${PN}-test"
39RDEPENDS:${PN}-test =+ "bash"
diff --git a/recipes-core/meta/icx-environment.inc b/recipes-core/meta/icx-environment.inc
new file mode 100644
index 00000000..65322a91
--- /dev/null
+++ b/recipes-core/meta/icx-environment.inc
@@ -0,0 +1,15 @@
1export ICX_LDFLAGS_OPTION = " -Wl,-dynamic-linker,/lib/ld-linux-x86-64.so.2"
2export ICXSDK_PREFIX_OPTION = "-B ${TARGET_PREFIX}"
3export ICXQSDK_PREFIX_OPTION = "-qgnu-prefix=${TARGET_PREFIX}"
4
5create_sdk_files:append() {
6 script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
7 if ${@bb.utils.contains('ICXSDK', '1', 'true', 'false', d)}; then
8 echo 'export ICX="icx ${ICXSDK_PREFIX_OPTION} --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script
9 echo 'export ICXCXX="icpx ${ICXSDK_PREFIX_OPTION} --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script
10 echo 'export ICXCPP="icx ${ICXSDK_PREFIX_OPTION} -E --target=${TARGET_SYS} ${TARGET_CC_ARCH} --sysroot=$SDKTARGETSYSROOT ${ICX_LDFLAGS_OPTION}"' >> $script
11 echo 'export ICXLD="xild --sysroot=$SDKTARGETSYSROOT "' >> $script
12 echo 'export ICXCCLD="icx ${ICXSDK_PREFIX_OPTION} --sysroot=$SDKTARGETSYSROOT"' >> $script
13 echo 'export ICXAR="xiar ${ICXQSDK_PREFIX_OPTION}"' >> $script
14 fi
15}
diff --git a/recipes-core/meta/meta-environment-extsdk.bbappend b/recipes-core/meta/meta-environment-extsdk.bbappend
new file mode 100644
index 00000000..2cff6fc4
--- /dev/null
+++ b/recipes-core/meta/meta-environment-extsdk.bbappend
@@ -0,0 +1,3 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
2
3require ${@bb.utils.contains('ICXSDK', '1', 'icx-environment.inc', '', d)}
diff --git a/recipes-core/meta/meta-environment.bbappend b/recipes-core/meta/meta-environment.bbappend
new file mode 100644
index 00000000..2cff6fc4
--- /dev/null
+++ b/recipes-core/meta/meta-environment.bbappend
@@ -0,0 +1,3 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
2
3require ${@bb.utils.contains('ICXSDK', '1', 'icx-environment.inc', '', d)}
diff --git a/recipes-core/microcode/files/Intel-Microcode-License b/recipes-core/microcode/files/Intel-Microcode-License
deleted file mode 100644
index af5b41c2..00000000
--- a/recipes-core/microcode/files/Intel-Microcode-License
+++ /dev/null
@@ -1,123 +0,0 @@
1INTEL SOFTWARE LICENSE AGREEMENT
2
3IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.
4Do not use or load this software and any associated materials (collectively,
5the "Software") until you have carefully read the following terms and
6conditions. By loading or using the Software, you agree to the terms of this
7Agreement. If you do not wish to so agree, do not install or use the Software.
8
9LICENSES: Please Note:
10- If you are a network administrator, the "Site License" below shall
11apply to you.
12- If you are an end user, the "Single User License" shall apply to you.
13- If you are an original equipment manufacturer (OEM), the "OEM License"
14shall apply to you.
15
16SITE LICENSE. You may copy the Software onto your organization's computers
17for your organization's use, and you may make a reasonable number of
18back-up copies of the Software, subject to these conditions:
19
201. This Software is licensed for use only in conjunction with Intel
21component products. Use of the Software in conjunction with non-Intel
22component products is not licensed hereunder.
232. You may not copy, modify, rent, sell, distribute or transfer any part
24of the Software except as provided in this Agreement, and you agree to
25prevent unauthorized copying of the Software.
263. You may not reverse engineer, decompile, or disassemble the Software.
274. You may not sublicense or permit simultaneous use of the Software by
28more than one user.
295. The Software may include portions offered on terms in addition to those
30set out here, as set out in a license accompanying those portions.
31
32SINGLE USER LICENSE. You may copy the Software onto a single computer for
33your personal, noncommercial use, and you may make one back-up copy of the
34Software, subject to these conditions:
35
361. This Software is licensed for use only in conjunction with Intel
37component products. Use of the Software in conjunction with non-Intel
38component products is not licensed hereunder.
392. You may not copy, modify, rent, sell, distribute or transfer any part
40of the Software except as provided in this Agreement, and you agree to
41prevent unauthorized copying of the Software.
423. You may not reverse engineer, decompile, or disassemble the Software.
434. You may not sublicense or permit simultaneous use of the Software by
44more than one user.
455. The Software may include portions offered on terms in addition to those
46set out here, as set out in a license accompanying those portions.
47
48OEM LICENSE: You may reproduce and distribute the Software only as an
49integral part of or incorporated in Your product or as a standalone
50Software maintenance update for existing end users of Your products,
51excluding any other standalone products, subject to these conditions:
52
531. This Software is licensed for use only in conjunction with Intel
54component products. Use of the Software in conjunction with non-Intel
55component products is not licensed hereunder.
562. You may not copy, modify, rent, sell, distribute or transfer any part
57of the Software except as provided in this Agreement, and you agree to
58prevent unauthorized copying of the Software.
593. You may not reverse engineer, decompile, or disassemble the Software.
604. You may only distribute the Software to your customers pursuant to a
61written license agreement. Such license agreement may be a "break-the-
62seal" license agreement. At a minimum such license shall safeguard
63Intel's ownership rights to the Software.
645. The Software may include portions offered on terms in addition to those
65set out here, as set out in a license accompanying those portions.
66
67NO OTHER RIGHTS. No rights or licenses are granted by Intel to You, expressly
68or by implication, with respect to any proprietary information or patent,
69copyright, mask work, trademark, trade secret, or other intellectual property
70right owned or controlled by Intel, except as expressly provided in this
71Agreement.
72
73OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Title to all copies of the Software
74remains with Intel or its suppliers. The Software is copyrighted and
75protected by the laws of the United States and other countries, and
76international treaty provisions. You may not remove any copyright notices
77from the Software. Intel may make changes to the Software, or to items
78referenced therein, at any time without notice, but is not obligated to
79support or update the Software. Except as otherwise expressly provided, Intel
80grants no express or implied right under Intel patents, copyrights,
81trademarks, or other intellectual property rights. You may transfer the
82Software only if the recipient agrees to be fully bound by these terms and if
83you retain no copies of the Software.
84
85LIMITED MEDIA WARRANTY. If the Software has been delivered by Intel on
86physical media, Intel warrants the media to be free from material physical
87defects for a period of ninety days after delivery by Intel. If such a defect
88is found, return the media to Intel for replacement or alternate delivery of
89the Software as Intel may select.
90
91EXCLUSION OF OTHER WARRANTIES. EXCEPT AS PROVIDED ABOVE, THE SOFTWARE IS
92PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND
93INCLUDING WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A
94PARTICULAR PURPOSE. Intel does not warrant or assume responsibility for the
95accuracy or completeness of any information, text, graphics, links or other
96items contained within the Software.
97
98LIMITATION OF LIABILITY. IN NO EVENT SHALL INTEL OR ITS SUPPLIERS BE LIABLE
99FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, LOST PROFITS,
100BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE OF OR
101INABILITY TO USE THE SOFTWARE, EVEN IF INTEL HAS BEEN ADVISED OF THE
102POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR
103LIMITATION OF LIABILITY FOR IMPLIED WARRANTIES OR CONSEQUENTIAL OR INCIDENTAL
104DAMAGES, SO THE ABOVE LIMITATION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE
105OTHER LEGAL RIGHTS THAT VARY FROM JURISDICTION TO JURISDICTION.
106
107TERMINATION OF THIS AGREEMENT. Intel may terminate this Agreement at any time
108if you violate its terms. Upon termination, you will immediately destroy the
109Software or return all copies of the Software to Intel.
110
111APPLICABLE LAWS. Claims arising under this Agreement shall be governed by the
112laws of California, excluding its principles of conflict of laws and the
113United Nations Convention on Contracts for the Sale of Goods. You may not
114export the Software in violation of applicable export laws and regulations.
115Intel is not obligated under any other agreements unless they are in writing
116and signed by an authorized representative of Intel.
117
118GOVERNMENT RESTRICTED RIGHTS. The Software is provided with "RESTRICTED
119RIGHTS." Use, duplication, or disclosure by the Government is subject to
120restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its
121successor. Use of the Software by the Government constitutes acknowledgment
122of Intel's proprietary rights therein. Contractor or Manufacturer is Intel
1232200 Mission College Blvd., Santa Clara, CA 95052.
diff --git a/recipes-core/microcode/intel-microcode_20180807.bb b/recipes-core/microcode/intel-microcode_20250512.bb
index 02601250..de011fda 100644
--- a/recipes-core/microcode/intel-microcode_20180807.bb
+++ b/recipes-core/microcode/intel-microcode_20250512.bb
@@ -11,16 +11,15 @@ DESCRIPTION = "The microcode data file contains the latest microcode\
11 if the file is placed in the /etc/firmware directory of the Linux system." 11 if the file is placed in the /etc/firmware directory of the Linux system."
12 12
13LICENSE = "Intel-Microcode-License" 13LICENSE = "Intel-Microcode-License"
14LIC_FILES_CHKSUM = "file://Intel-Microcode-License;md5=9052c0dbf7250dc0bef70bd8212b0573" 14LIC_FILES_CHKSUM = "file://license;md5=d8405101ec6e90c1d84b082b0c40c721"
15 15
16SRC_URI = "https://downloadmirror.intel.com/28039/eng/microcode-${PV}.tgz \ 16SRC_URI = "git://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files.git;protocol=https;branch=main \
17 file://Intel-Microcode-License \
18 " 17 "
19 18
20SRC_URI[md5sum] = "49f534f1079d3c5bc178a150c1c105aa" 19SRCREV = "eeb93b7a818bb27cb6b7a2be0454f8a0a75f1bd6"
21SRC_URI[sha256sum] = "29f9e8dc27e6c9b6488cecd7fe2394030307799e511db2d197d9e6553a7f9e40" 20
22DEPENDS = "iucode-tool-native" 21DEPENDS = "iucode-tool-native"
23S = "${WORKDIR}" 22S = "${WORKDIR}/git"
24 23
25COMPATIBLE_HOST = "(i.86|x86_64).*-linux" 24COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
26PACKAGE_ARCH = "${MACHINE_ARCH}" 25PACKAGE_ARCH = "${MACHINE_ARCH}"
@@ -32,30 +31,24 @@ inherit deploy
32UCODE_FILTER_PARAMETERS ?= "" 31UCODE_FILTER_PARAMETERS ?= ""
33 32
34do_compile() { 33do_compile() {
35 rm -f ${WORKDIR}/intel-ucode/list
36 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
37 ${UCODE_FILTER_PARAMETERS} \
38 --overwrite \
39 --write-to=${WORKDIR}/microcode_${PV}.bin \
40 ${WORKDIR}/intel-ucode/*
41
42 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \ 34 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
43 ${UCODE_FILTER_PARAMETERS} \ 35 ${UCODE_FILTER_PARAMETERS} \
44 --overwrite \ 36 --overwrite \
45 --write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \ 37 --write-earlyfw=${WORKDIR}/microcode_${PV}.cpio \
46 ${WORKDIR}/intel-ucode/* 38 ${S}/intel-ucode/* ${S}/intel-ucode-with-caveats/*
47} 39}
48 40
49do_install() { 41do_install() {
50 install -d ${D}${base_libdir}/firmware/intel-ucode/ 42 install -d ${D}${nonarch_base_libdir}/firmware/intel-ucode/
51 install ${WORKDIR}/microcode_${PV}.bin ${D}${base_libdir}/firmware/intel-ucode/ 43 ${STAGING_DIR_NATIVE}${sbindir_native}/iucode_tool \
52 cd ${D}${base_libdir}/firmware/intel-ucode/ 44 ${UCODE_FILTER_PARAMETERS} \
53 ln -sf microcode_${PV}.bin microcode.bin 45 --write-firmware=${D}${nonarch_base_libdir}/firmware/intel-ucode \
46 ${S}/intel-ucode/* ${S}/intel-ucode-with-caveats/*
54} 47}
55 48
56do_deploy() { 49do_deploy() {
57 install -d ${DEPLOYDIR} 50 install -d ${DEPLOYDIR}
58 install ${S}/microcode_${PV}.cpio ${DEPLOYDIR}/ 51 install ${WORKDIR}/microcode_${PV}.cpio ${DEPLOYDIR}/
59 cd ${DEPLOYDIR} 52 cd ${DEPLOYDIR}
60 rm -f microcode.cpio 53 rm -f microcode.cpio
61 ln -sf microcode_${PV}.cpio microcode.cpio 54 ln -sf microcode_${PV}.cpio microcode.cpio
@@ -65,4 +58,6 @@ addtask deploy before do_build after do_compile
65 58
66PACKAGES = "${PN}" 59PACKAGES = "${PN}"
67 60
68FILES_${PN} = "${base_libdir}" 61FILES:${PN} = "${nonarch_base_libdir}"
62
63UPSTREAM_CHECK_GITTAGREGEX = "^microcode-(?P<pver>(\d+)[a-z]*)$"
diff --git a/recipes-core/microcode/iucode-tool_2.3.1.bb b/recipes-core/microcode/iucode-tool_2.3.1.bb
index df74a8e9..19417b7c 100644
--- a/recipes-core/microcode/iucode-tool_2.3.1.bb
+++ b/recipes-core/microcode/iucode-tool_2.3.1.bb
@@ -12,14 +12,14 @@ DESCRIPTION = "iucode_tool is a program to manipulate Intel i686 and X86-64\
12HOMEPAGE = "https://gitlab.com/iucode-tool/" 12HOMEPAGE = "https://gitlab.com/iucode-tool/"
13BUGTRACKER = "https://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=iucode-tool;repeatmerged=0" 13BUGTRACKER = "https://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=iucode-tool;repeatmerged=0"
14 14
15LICENSE = "GPLv2+" 15LICENSE = "GPL-2.0-or-later"
16LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ 16LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
17 file://iucode_tool.c;beginline=1;endline=15;md5=71eeab3190360ff0267101b570874756" 17 file://iucode_tool.c;beginline=1;endline=15;md5=71eeab3190360ff0267101b570874756"
18 18
19DEPENDS_append_libc-musl = " argp-standalone" 19DEPENDS:append:libc-musl = " argp-standalone"
20 20
21SRC_URI = "https://gitlab.com/iucode-tool/releases/raw/master/iucode-tool_${PV}.tar.xz" 21SRC_URI = "https://gitlab.com/iucode-tool/releases/raw/master/iucode-tool_${PV}.tar.xz"
22SRC_URI_append_libc-musl = " file://0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch" 22SRC_URI:append:libc-musl = " file://0001-Makefile.am-Add-arg-parse-library-for-MUSL-support.patch"
23 23
24SRC_URI[md5sum] = "63b33cc0ea1f8c73b443412abbf39d6f" 24SRC_URI[md5sum] = "63b33cc0ea1f8c73b443412abbf39d6f"
25SRC_URI[sha256sum] = "12b88efa4d0d95af08db05a50b3dcb217c0eb2bfc67b483779e33d498ddb2f95" 25SRC_URI[sha256sum] = "12b88efa4d0d95af08db05a50b3dcb217c0eb2bfc67b483779e33d498ddb2f95"
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 62db0633..00000000
--- a/recipes-core/ovmf/files/0001-ovmf-RefkitTestCA-TEST-UEFI-SecureBoot.patch
+++ /dev/null
@@ -1,105 +0,0 @@
1From 48e511481d83c1614cd00a5a2edcf6b5d746b9c4 Mon Sep 17 00:00:00 2001
2From: Mikko Ylinen <mikko.ylinen@linux.intel.com>
3Date: Fri, 7 Apr 2017 12:06:14 +0300
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
12Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
13---
14 OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c | 68 +++++++++++++++++++++++++++
15 1 file changed, 68 insertions(+)
16
17diff --git a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
18index 24ab977..a3c12ba 100644
19--- a/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
20+++ b/OvmfPkg/EnrollDefaultKeys/EnrollDefaultKeys.c
21@@ -516,6 +516,73 @@ STATIC CONST UINT8 MicrosoftUefiCA[] = {
22 0x07, 0x92, 0x9b, 0xf5, 0xa6, 0xbc, 0x59, 0x83, 0x58
23 };
24
25+STATIC CONST UINT8 RefkitTestCA[] = {
26+ 0x30, 0x82, 0x02, 0xfb, 0x30, 0x82, 0x01, 0xe3, 0xa0, 0x03, 0x02, 0x01,
27+ 0x02, 0x02, 0x09, 0x00, 0xd4, 0xf6, 0x48, 0xc2, 0x68, 0x19, 0x91, 0xac,
28+ 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
29+ 0x0b, 0x05, 0x00, 0x30, 0x14, 0x31, 0x12, 0x30, 0x10, 0x06, 0x03, 0x55,
30+ 0x04, 0x03, 0x0c, 0x09, 0x72, 0x65, 0x66, 0x6b, 0x69, 0x74, 0x2d, 0x64,
31+ 0x62, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x37, 0x30, 0x34, 0x32, 0x30, 0x31,
32+ 0x32, 0x30, 0x36, 0x33, 0x32, 0x5a, 0x17, 0x0d, 0x31, 0x38, 0x30, 0x34,
33+ 0x32, 0x30, 0x31, 0x32, 0x30, 0x36, 0x33, 0x32, 0x5a, 0x30, 0x14, 0x31,
34+ 0x12, 0x30, 0x10, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x09, 0x72, 0x65,
35+ 0x66, 0x6b, 0x69, 0x74, 0x2d, 0x64, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30,
36+ 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01,
37+ 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02,
38+ 0x82, 0x01, 0x01, 0x00, 0xb4, 0x1c, 0x22, 0xa6, 0x22, 0x01, 0x57, 0xcd,
39+ 0xf1, 0x4f, 0xaf, 0x72, 0xe3, 0xd9, 0x01, 0x80, 0x50, 0x55, 0xef, 0x02,
40+ 0x5e, 0xeb, 0x99, 0x35, 0xcb, 0x7f, 0x2a, 0x79, 0xff, 0xb5, 0x3e, 0xec,
41+ 0x5d, 0x92, 0x06, 0x30, 0x20, 0xe7, 0x95, 0xad, 0xa4, 0x84, 0x2e, 0x3f,
42+ 0xfa, 0xd7, 0x46, 0xdd, 0x49, 0xa8, 0xe8, 0xe3, 0x79, 0x49, 0xf6, 0x8f,
43+ 0x0b, 0x1d, 0xfe, 0x63, 0xa8, 0xd1, 0x63, 0xa3, 0xd6, 0x0d, 0x4e, 0x6c,
44+ 0x66, 0x5c, 0xd6, 0x66, 0x26, 0xd1, 0x26, 0x98, 0xd4, 0x4f, 0x76, 0xc9,
45+ 0x65, 0x48, 0x58, 0x13, 0x08, 0x31, 0xbc, 0xe5, 0x47, 0x25, 0x65, 0x95,
46+ 0x39, 0x89, 0x5f, 0x02, 0xf1, 0xc5, 0x06, 0x17, 0x58, 0xca, 0x09, 0xfd,
47+ 0xf6, 0x1e, 0xc5, 0x97, 0xda, 0xa3, 0x4e, 0x1a, 0x48, 0xbe, 0xcf, 0x96,
48+ 0x27, 0x04, 0x4b, 0xb7, 0x6d, 0x67, 0xb6, 0x50, 0x18, 0x04, 0x73, 0x51,
49+ 0xd2, 0x6a, 0x2d, 0xdf, 0x3b, 0xab, 0xf2, 0x2d, 0x95, 0xd7, 0xa8, 0xb8,
50+ 0xa8, 0x30, 0xa1, 0xab, 0x8b, 0x92, 0x2b, 0x60, 0x3e, 0x3a, 0xe5, 0x86,
51+ 0x40, 0x71, 0xc1, 0x3f, 0x2d, 0x2e, 0x90, 0xe7, 0xd6, 0xec, 0xcc, 0xc2,
52+ 0x0b, 0x79, 0x83, 0x71, 0x6d, 0xf6, 0xa3, 0xa9, 0x4c, 0xcd, 0x46, 0x81,
53+ 0xdc, 0xef, 0xec, 0x51, 0xbe, 0x81, 0x2a, 0xf1, 0x78, 0x73, 0x41, 0xdb,
54+ 0x54, 0xce, 0x7c, 0xce, 0xa2, 0xe3, 0x90, 0x4f, 0x45, 0x1a, 0xf9, 0x3d,
55+ 0x88, 0xfc, 0x0e, 0xed, 0xd3, 0x69, 0x22, 0x4c, 0xfa, 0x0a, 0x69, 0xd1,
56+ 0x48, 0xc0, 0xaa, 0xa9, 0x3a, 0xb3, 0x8f, 0x10, 0x3a, 0x76, 0xa8, 0x0c,
57+ 0x7a, 0x3d, 0xd8, 0x79, 0xce, 0x1c, 0x96, 0x62, 0xf4, 0x06, 0xee, 0x47,
58+ 0xe8, 0xe0, 0x69, 0x91, 0xae, 0xea, 0x34, 0xcf, 0xda, 0xa8, 0xb4, 0x39,
59+ 0x5e, 0xf3, 0x7a, 0xd0, 0x88, 0x48, 0x47, 0x69, 0x02, 0x03, 0x01, 0x00,
60+ 0x01, 0xa3, 0x50, 0x30, 0x4e, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
61+ 0x04, 0x16, 0x04, 0x14, 0x68, 0x60, 0x11, 0x25, 0x85, 0x14, 0x78, 0x1b,
62+ 0x1a, 0x9f, 0x46, 0x12, 0xe6, 0x21, 0xe4, 0xef, 0xfb, 0x3b, 0xaa, 0xdd,
63+ 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04, 0x18, 0x30, 0x16, 0x80,
64+ 0x14, 0x68, 0x60, 0x11, 0x25, 0x85, 0x14, 0x78, 0x1b, 0x1a, 0x9f, 0x46,
65+ 0x12, 0xe6, 0x21, 0xe4, 0xef, 0xfb, 0x3b, 0xaa, 0xdd, 0x30, 0x0c, 0x06,
66+ 0x03, 0x55, 0x1d, 0x13, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30,
67+ 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b,
68+ 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x8f, 0xd2, 0x84, 0x7c, 0x43,
69+ 0x47, 0xca, 0x6b, 0xfd, 0x87, 0x83, 0xd0, 0xef, 0x75, 0xd3, 0x20, 0x52,
70+ 0x73, 0x18, 0xaa, 0x32, 0x71, 0xfb, 0xa5, 0xf4, 0xc9, 0x11, 0xa3, 0x68,
71+ 0x4d, 0xb7, 0x9d, 0xe6, 0xd9, 0x46, 0x24, 0xdc, 0xc7, 0xc2, 0x3b, 0xf9,
72+ 0xb0, 0x98, 0xfc, 0xee, 0x34, 0x6e, 0x10, 0x9b, 0x3d, 0x44, 0x6e, 0x33,
73+ 0x09, 0x11, 0xb8, 0x29, 0xd6, 0x2d, 0x06, 0xcf, 0x67, 0x8f, 0x96, 0x85,
74+ 0x9d, 0x63, 0x72, 0xbf, 0x64, 0x5f, 0x0d, 0xe3, 0xc9, 0x63, 0x19, 0x71,
75+ 0xd4, 0x7d, 0x4c, 0x9c, 0x77, 0x46, 0xda, 0x20, 0x97, 0x6d, 0xbc, 0xdd,
76+ 0xc2, 0x1f, 0xf3, 0x40, 0x38, 0x1e, 0xe7, 0xcc, 0x55, 0x05, 0x72, 0xba,
77+ 0x24, 0x4f, 0xb3, 0x8a, 0x93, 0x0c, 0x30, 0x60, 0xda, 0x9f, 0x6f, 0x35,
78+ 0xf6, 0xfb, 0xb0, 0x1f, 0xb3, 0x00, 0xdd, 0xc4, 0xa6, 0xbc, 0xe2, 0x37,
79+ 0xc1, 0xa3, 0xef, 0xd9, 0xa1, 0x86, 0xf9, 0xeb, 0xa4, 0xa5, 0x45, 0x38,
80+ 0xff, 0x4e, 0x87, 0x4a, 0x41, 0xcf, 0x6e, 0x69, 0x7e, 0x97, 0xbe, 0x2d,
81+ 0x22, 0xbc, 0x8d, 0xa0, 0x1a, 0x21, 0x8f, 0x4b, 0x72, 0x90, 0x01, 0x5c,
82+ 0xba, 0xa5, 0x9c, 0x2d, 0xd7, 0x25, 0x24, 0xfc, 0xff, 0x5c, 0x58, 0x14,
83+ 0x46, 0x30, 0x09, 0x7c, 0x55, 0x64, 0x83, 0x0b, 0xb9, 0xdf, 0xcf, 0x25,
84+ 0xee, 0xec, 0xf7, 0xcb, 0xdb, 0xd1, 0x5b, 0x93, 0x93, 0xc8, 0x8a, 0x10,
85+ 0x46, 0xb8, 0xb0, 0x35, 0x1c, 0x6c, 0x0d, 0x8f, 0x03, 0x6a, 0x8f, 0x1b,
86+ 0x36, 0x68, 0xf3, 0x53, 0x89, 0x36, 0x5b, 0x21, 0x80, 0xde, 0xe3, 0x92,
87+ 0x52, 0x94, 0x97, 0x9d, 0x49, 0x89, 0x7d, 0x3e, 0xde, 0x29, 0x51, 0xba,
88+ 0x11, 0xf7, 0xba, 0x01, 0xf7, 0xab, 0xea, 0xc1, 0xa7, 0x2e, 0xa3, 0x4d,
89+ 0x65, 0xfd, 0x40, 0x71, 0xf1, 0xe2, 0x3f, 0x6c, 0x28, 0xcb, 0xd3
90+};
91+
92 //
93 // The most important thing about the variable payload is that it is a list of
94 // lists, where the element size of any given *inner* list is constant.
95@@ -908,6 +975,7 @@ ShellAppMain (
96 &gEfiImageSecurityDatabaseGuid,
97 MicrosoftPCA, sizeof MicrosoftPCA, &gEfiCallerIdGuid,
98 MicrosoftUefiCA, sizeof MicrosoftUefiCA, &gEfiCallerIdGuid,
99+ RefkitTestCA, sizeof RefkitTestCA, &gEfiCallerIdGuid,
100 NULL);
101 if (EFI_ERROR (Status)) {
102 return 1;
103--
1042.1.4
105
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 b20f6e58..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 bbf5fa32..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-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend b/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
new file mode 100644
index 00000000..b5a5fdd4
--- /dev/null
+++ b/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
@@ -0,0 +1 @@
RDEPENDS:${PN} += "${@bb.utils.contains('ICXSDK', '1', ' intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev ', '', d)}"
diff --git a/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend
new file mode 100644
index 00000000..608ea3d3
--- /dev/null
+++ b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend
@@ -0,0 +1 @@
RRECOMMENDS:${PN}:append:intel-x86-common = "${@bb.utils.contains('ICXSDK', '1', ' intel-oneapi-dpcpp-cpp intel-oneapi-dpcpp-cpp-dev intel-oneapi-dpcpp-cpp-runtime intel-oneapi-dpcpp-cpp-runtime-dev ', '', d)}"
diff --git a/recipes-devtools/slimboot/slimboot-tools_git.bb b/recipes-devtools/slimboot/slimboot-tools_git.bb
new file mode 100644
index 00000000..72b3ffe8
--- /dev/null
+++ b/recipes-devtools/slimboot/slimboot-tools_git.bb
@@ -0,0 +1,22 @@
1SUMMARY = "Slim Bootloader Host Tools"
2DESCRIPTION = "Native host tools to generate the container images in a \
3binary file format understood by Slim Bootloader to load and initialize\
4Operating Systems or Hypervisors."
5HOMEPAGE = "https://slimbootloader.github.io/tools/index.html"
6
7SRC_URI = "git://github.com/slimbootloader/slimbootloader;protocol=https;branch=master"
8SRCREV = "a63818df94d3c9d8c04cdca5869ba7cde9fb5a38"
9PV = "0.0.0+git${SRCPV}"
10LICENSE = "BSD-2-Clause-Patent"
11LIC_FILES_CHKSUM = "file://LICENSE;md5=ef7fba7be2819ac13aaf5d0f842ce5d9"
12S = "${WORKDIR}/git"
13
14inherit python3native
15BBCLASSEXTEND = "native"
16
17do_configure[noexec] = "1"
18do_compile[noexec] = "1"
19do_install() {
20 install -m 755 -d ${D}${libexecdir}/slimboot/Tools
21 install -m 755 ${S}/BootloaderCorePkg/Tools/*.py ${D}${libexecdir}/slimboot/Tools
22}
diff --git a/recipes-graphics/gmmlib/gmmlib_22.7.1.bb b/recipes-graphics/gmmlib/gmmlib_22.7.1.bb
new file mode 100644
index 00000000..590141f1
--- /dev/null
+++ b/recipes-graphics/gmmlib/gmmlib_22.7.1.bb
@@ -0,0 +1,25 @@
1SUMMARY = "Intel(R) Graphics Memory Management Library"
2DESCRIPTION = "The Intel(R) Graphics Memory Management Library provides \
3device specific and buffer management for the Intel(R) Graphics \
4Compute Runtime for OpenCL(TM) and the Intel(R) Media Driver for VAAPI."
5
6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://LICENSE.md;md5=465fe90caea3edd6a2cecb3f0c28a654"
8
9SRC_URI = " \
10 git://github.com/intel/gmmlib.git;protocol=https;branch=master \
11 "
12
13SRCREV = "aa4e5d6c8f1d798b78ffd7ea85296fdd3a3946b2"
14
15S = "${WORKDIR}/git"
16
17COMPATIBLE_HOST:x86-x32 = "null"
18
19UPSTREAM_CHECK_GITTAGREGEX = "^intel-gmmlib-(?P<pver>(\d+(\.\d+)+))$"
20
21inherit pkgconfig cmake
22
23EXTRA_OECMAKE += "-DRUN_TEST_SUITE=OFF"
24
25BBCLASSEXTEND = "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
new file mode 100644
index 00000000..6d32da43
--- /dev/null
+++ b/recipes-graphics/hdcp/hdcp/0001-main-fix-hdcpd-service-failure.patch
@@ -0,0 +1,42 @@
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
new file mode 100644
index 00000000..8529b5ab
--- /dev/null
+++ b/recipes-graphics/hdcp/hdcp_21.2.0.bb
@@ -0,0 +1,26 @@
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/intel-gpu-tools/igt-gpu-tools_1.23.bb b/recipes-graphics/intel-gpu-tools/igt-gpu-tools_1.23.bb
deleted file mode 100644
index ffa4d839..00000000
--- a/recipes-graphics/intel-gpu-tools/igt-gpu-tools_1.23.bb
+++ /dev/null
@@ -1,42 +0,0 @@
1require ${COREBASE}/meta/recipes-graphics/xorg-app/xorg-app-common.inc
2
3SUMMARY = "Intel GPU tools"
4DESCRIPTION = "Variety of small tools for testing intel graphics."
5
6LIC_FILES_CHKSUM = "file://COPYING;md5=e4b3dd344780e0400593b21b115a6947"
7
8LICENSE_append = " & ISC"
9
10inherit autotools gtk-doc
11
12SRC_URI = "${XORG_MIRROR}/individual/app/${BP}.tar.xz"
13
14DEPENDS += "libdrm libpciaccess cairo udev glib-2.0 libxv libx11 libxext libxrandr procps libunwind"
15RDEPENDS_${PN} += "bash"
16RDEPENDS_${PN}-tests += "bash"
17
18PACKAGE_BEFORE_PN = "${PN}-benchmarks ${PN}-tests"
19
20SRC_URI[md5sum] = "04c1f10d6fd85e079271540b0ea786e9"
21SRC_URI[sha256sum] = "4d4b086c513bace5c23d0889de3f42ac3ebd3d968c64dedae6e28e006a499ad0"
22
23EXTRA_OECONF = "--disable-nouveau --disable-shader-debugger"
24COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"
25COMPATIBLE_HOST_libc-musl_class-target = "null"
26
27PACKAGECONFIG ??= ""
28PACKAGECONFIG[audio] = "--enable-audio,--disable-audio,alsa-lib gsl"
29
30gputools_sysroot_preprocess() {
31 rm -f ${SYSROOT_DESTDIR}${libdir}/pkgconfig/intel-gen4asm.pc
32}
33SYSROOT_PREPROCESS_FUNCS += "gputools_sysroot_preprocess"
34
35FILES_${PN} += "${libdir}/intel_aubdump.so"
36FILES_${PN}-benchmarks += "${libexecdir}/intel-gpu-tools/benchmarks"
37FILES_${PN}-tests += "\
38 ${libexecdir}/intel-gpu-tools/*\
39 ${datadir}/intel-gpu-tools/1080p-right.png\
40 ${datadir}/intel-gpu-tools/1080p-left.png\
41 ${datadir}/intel-gpu-tools/pass.png\
42 ${datadir}/intel-gpu-tools/test-list.txt"
diff --git a/recipes-graphics/libva/libva-intel-utils_2.22.0.bb b/recipes-graphics/libva/libva-intel-utils_2.22.0.bb
new file mode 100644
index 00000000..4ad97eed
--- /dev/null
+++ b/recipes-graphics/libva/libva-intel-utils_2.22.0.bb
@@ -0,0 +1,35 @@
1SUMMARY = "libva-utils is a collection of utilities from libva project"
2
3DESCRIPTION = "libva-utils is a collection of utilities \
4and examples to exercise VA-API in accordance with the libva \
5project.VA-API is an open-source library and API specification, \
6which provides access to graphics hardware acceleration capabilities \
7for video processing. It consists of a main library and driver-specific \
8acceleration backends for each supported hardware vendor"
9
10HOMEPAGE = "https://01.org/linuxmedia/vaapi"
11BUGTRACKER = "https://github.com/intel/libva-utils/issues"
12
13SECTION = "x11"
14LICENSE = "MIT"
15LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e"
16
17SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.22-branch;protocol=https"
18SRCREV = "1a13ae13382b7b548f3a7e8035e1d7df66662c0a"
19S = "${WORKDIR}/git"
20
21UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
22
23DEPENDS = "libva"
24
25inherit meson pkgconfig features_check
26
27# depends on libva which requires opengl
28REQUIRED_DISTRO_FEATURES = "opengl"
29
30PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
31PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes"
32PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland"
33
34PROVIDES = "libva-utils"
35RPROVIDES:${PN} += "libva-utils"
diff --git a/recipes-graphics/libva/libva-intel_2.22.0.bb b/recipes-graphics/libva/libva-intel_2.22.0.bb
new file mode 100644
index 00000000..2405f440
--- /dev/null
+++ b/recipes-graphics/libva/libva-intel_2.22.0.bb
@@ -0,0 +1,56 @@
1SUMMARY = "Video Acceleration (VA) API for Linux"
2DESCRIPTION = "Video Acceleration API (VA API) is a library (libVA) \
3and API specification which enables and provides access to graphics \
4hardware (GPU) acceleration for video processing on Linux and UNIX \
5based operating systems. Accelerated processing includes video \
6decoding, video encoding, subpicture blending and rendering. The \
7specification was originally designed by Intel for its GMA (Graphics \
8Media Accelerator) series of GPU hardware, the API is however not \
9limited to GPUs or Intel specific hardware, as other hardware and \
10manufacturers can also freely use this API for hardware accelerated \
11video decoding."
12
13HOMEPAGE = "https://01.org/linuxmedia/vaapi"
14BUGTRACKER = "https://github.com/intel/libva/issues"
15
16SECTION = "x11"
17LICENSE = "MIT"
18LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f"
19
20SRC_URI = "git://github.com/intel/libva.git;protocol=https;branch=v2.22-branch \
21 "
22
23SRCREV = "217da1c28336d6a7e9c0c4cb8f1c303968a675f1"
24
25S = "${WORKDIR}/git"
26
27UPSTREAM_CHECK_URI = "https://github.com/intel/libva/releases"
28
29DEPENDS = "libdrm"
30
31inherit meson pkgconfig
32
33PACKAGECONFIG ??= " \
34 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \
35 ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \
36"
37
38PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes"
39PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa"
40
41PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland"
42
43PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland"
44
45RDEPENDS:${PN}-x11 =+ "${PN}"
46RDEPENDS:${PN}-glx =+ "${PN}-x11"
47
48FILES:${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}"
49FILES:${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}"
50FILES:${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}"
51
52PROVIDES += "libva"
53RPROVIDES:${PN} += "libva"
54RPROVIDES:${PN}-x11 += "libva-x11"
55RPROVIDES:${PN}-glx += "libva-glx"
56RPROVIDES:${PN}-wayland += "libva-wayland"
diff --git a/recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb b/recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb
new file mode 100644
index 00000000..dbc17c1d
--- /dev/null
+++ b/recipes-graphics/metrics-discovery/metrics-discovery_1.13.178.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Intel Metrics Discovery Application Programming Interface"
2DESCRIPTION = "This software is a user mode library that provides access to \
3GPU performance data."
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://LICENSE.md;md5=195912d57508b573e068231099eba64c"
6SECTION = "lib"
7
8inherit pkgconfig cmake
9
10S = "${WORKDIR}/git"
11SRCREV = "65ffef89cf79d704f618768bcd3d95f4dd6d875b"
12SRC_URI = "git://github.com/intel/metrics-discovery.git;branch=master;protocol=https \
13 "
14
15EXTRA_OECMAKE += "-DMD_PLATFORM=linux"
16EXTRA_OECMAKE += "-DMD_LIBDRM_SRC=${STAGING_INCDIR}"
17
18DEPENDS = "libdrm"
diff --git a/recipes-graphics/xorg-driver/xf86-video-ast_1.1.5.bb b/recipes-graphics/xorg-driver/xf86-video-ast_1.1.6.bb
index 090efd62..d7e4eab4 100644
--- a/recipes-graphics/xorg-driver/xf86-video-ast_1.1.5.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-ast_1.1.6.bb
@@ -7,6 +7,6 @@ DESCRIPTION = "ast is an Xorg driver for ASpeed Technologies video cards"
7LIC_FILES_CHKSUM = "file://COPYING;md5=0b8c242f0218eea5caa949b7910a774b" 7LIC_FILES_CHKSUM = "file://COPYING;md5=0b8c242f0218eea5caa949b7910a774b"
8 8
9DEPENDS += "libpciaccess" 9DEPENDS += "libpciaccess"
10XORG_DRIVER_COMPRESSOR = ".tar.gz"
10 11
11SRC_URI[md5sum] = "4f85febe48d51e53624550a96fc9e9ee" 12SRC_URI[sha256sum] = "eeff52178ce2916a0e07b531bb23c8b105826b6e6e6c5f7c90e33f757827a7c7"
12SRC_URI[sha256sum] = "1edbbc55d47d3fd71dec99b15c2483e22738c642623a0fb86ef4a81a9067a2de"
diff --git a/recipes-kernel/cryptodev/cryptodev-module/0001-zc-Force-4.10-get_user_pages_remote-API.patch b/recipes-kernel/cryptodev/cryptodev-module/0001-zc-Force-4.10-get_user_pages_remote-API.patch
deleted file mode 100644
index 353126fe..00000000
--- a/recipes-kernel/cryptodev/cryptodev-module/0001-zc-Force-4.10-get_user_pages_remote-API.patch
+++ /dev/null
@@ -1,26 +0,0 @@
1From 3fcc81ad127c267018aed96a359bbf01db1bd8ee Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com>
3Date: Sat, 1 Apr 2017 11:43:31 -0700
4Subject: [PATCH] zc: Force 4.10 get_user_pages_remote API
5
6This change forces the newer API, as the linux-intel 4.9-LTS kernel
7backported the 4.10 API change in the page handling code.
8
9Signed-off-by: Saul Wold <sgw@linux.intel.com>
10---
11 zc.c | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/zc.c b/zc.c
15index ae464ff..b2759ce 100644
16--- a/zc.c
17+++ b/zc.c
18@@ -65,7 +65,7 @@ int __get_userbuf(uint8_t __user *addr, uint32_t len, int write,
19 #elif (LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0))
20 ret = get_user_pages_remote(task, mm,
21 (unsigned long)addr, pgcount, write, 0, pg, NULL);
22-#elif (LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0))
23+#elif (LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0) & 0)
24 ret = get_user_pages_remote(task, mm,
25 (unsigned long)addr, pgcount, write ? FOLL_WRITE : 0,
26 pg, NULL);
diff --git a/recipes-kernel/cryptodev/cryptodev-module_%.bbappend b/recipes-kernel/cryptodev/cryptodev-module_%.bbappend
deleted file mode 100644
index c59ddb2f..00000000
--- a/recipes-kernel/cryptodev/cryptodev-module_%.bbappend
+++ /dev/null
@@ -1,9 +0,0 @@
1FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:"
2
3python() {
4 # When we add more kernels for linux-intel, we may have to add a Version check
5 if (d.getVar("PREFERRED_PROVIDER_virtual/kernel") == "linux-intel"):
6 src_uri = d.getVar("SRC_URI")
7 d.setVar("SRC_URI", src_uri +
8 " file://0001-zc-Force-4.10-get_user_pages_remote-API.patch")
9}
diff --git a/recipes-kernel/intel-ethernet/ixgbe/0001-ixgbe-skip-host-depmod.patch b/recipes-kernel/intel-ethernet/ixgbe/0001-ixgbe-skip-host-depmod.patch
deleted file mode 100644
index 0041af57..00000000
--- a/recipes-kernel/intel-ethernet/ixgbe/0001-ixgbe-skip-host-depmod.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From 5f87ef7ed60bc9762467184ed0a6d000b80713d9 Mon Sep 17 00:00:00 2001
2From: sweeaun <swee.aun.khor@intel.com>
3Date: Sun, 8 Apr 2018 17:21:52 +0800
4Subject: [PATCH] ixgbe: skip host depmod
5
6Upstream-Status: Inappropriate [Cross-Compile]
7
8Depmod during do_install is irrelevant when cross-compiling.
9Remove the depmod steps during do_install.
10
11Signed-off-by: sweeaun <swee.aun.khor@intel.com>
12---
13 Makefile | 2 --
14 1 file changed, 2 deletions(-)
15
16diff --git a/Makefile b/Makefile
17index 545489a..07e422f 100644
18--- a/Makefile
19+++ b/Makefile
20@@ -141,8 +141,6 @@ install: default manfile
21 @install -D -m 644 ${DRIVER}.${MANSECTION}.gz ${INSTALL_MOD_PATH}${MANDIR}/man${MANSECTION}/${DRIVER}.${MANSECTION}.gz
22 @echo "Installing modules..."
23 @+$(call devkernelbuild,modules_install)
24- @echo "Running depmod..."
25- @$(call cmd_depmod)
26
27 uninstall:
28 rm -f ${INSTALL_MOD_PATH}/lib/modules/${KVER}/${INSTALL_MOD_DIR}/${DRIVER}.ko;
29--
302.7.4
31
diff --git a/recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb b/recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb
new file mode 100644
index 00000000..696c5c26
--- /dev/null
+++ b/recipes-kernel/intel-ethernet/ixgbe_5.20.10.bb
@@ -0,0 +1,43 @@
1SUMMARY = "ixgbe kernel driver for Intel Magnolia Park 10GbE"
2DESCRIPTION = "The ixgbe driver supports 82598- and 82599-based \
3PCI Express* 10 Gigabit Network Connections."
4
5HOMEPAGE = "https://sourceforge.net/projects/e1000/"
6SECTION = "kernel/network"
7LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417"
9
10SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/${PV}/${BP}.tar.gz \
11 "
12
13SRC_URI[sha256sum] = "da7e7b62ffb85a820d7541623fbef5c4abef8d1df7ac0af3f1acc3b3d76c9822"
14
15UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/"
16UPSTREAM_CHECK_REGEX = "ixgbe%20stable/(?P<pver>\d+(\.\d+)+)/"
17
18CVE_PRODUCT = "linux:linux_kernel_ixgbe"
19
20S = "${WORKDIR}/${BP}/src"
21
22EXTRA_OEMAKE = ' KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
23
24KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbe"
25KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbe"
26
27inherit module
28
29do_install:append () {
30 # Install scripts/set_irq_affinity
31 install -d ${D}${sysconfdir}/network
32 install -m 0755 ${S}/../scripts/set_irq_affinity ${D}${sysconfdir}/network
33
34 rm -rf ${D}${prefix}/man
35}
36
37PACKAGES += "${PN}-script"
38
39FILES:${PN}-script += "${sysconfdir}/network/set_irq_affinity"
40
41EXCLUDE_FROM_WORLD = "1"
42
43CVE_STATUS[CVE-2015-1142857] = "fixed-version: Fixed from version 4.4-rc1"
diff --git a/recipes-kernel/intel-ethernet/ixgbe_5.3.7.bb b/recipes-kernel/intel-ethernet/ixgbe_5.3.7.bb
deleted file mode 100644
index 58e3829f..00000000
--- a/recipes-kernel/intel-ethernet/ixgbe_5.3.7.bb
+++ /dev/null
@@ -1,37 +0,0 @@
1SUMMARY="ixgbe kernel driver for Intel Magnolia Park 10GbE"
2DESCRIPTION="The ixgbe driver supports 82598- and 82599-based \
3PCI Express* 10 Gigabit Network Connections."
4
5HOMEPAGE = "https://sourceforge.net/projects/e1000/"
6SECTION = "kernel/network"
7LICENSE = "GPLv2"
8LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
9
10SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbe%20stable/${PV}/${BP}.tar.gz \
11 file://0001-ixgbe-skip-host-depmod.patch \
12 "
13
14SRC_URI[md5sum] = "7d02dd0173bc8a2a043b0c87817d6c37"
15SRC_URI[sha256sum] = "1a38ae395f18cd4ce3c57f17beb22282171196115baa744b3a53cb7a80ead32b"
16
17S = "${WORKDIR}/${BP}/src"
18MODULES_INSTALL_TARGET = "install"
19
20EXTRA_OEMAKE='KSRC="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
21
22KERNEL_MODULE_AUTOLOAD_append_intel-core2-32 = " ixgbe"
23KERNEL_MODULE_AUTOLOAD_append_intel-corei7-64 = " ixgbe"
24
25inherit module
26
27do_install_append () {
28 # Install scripts/set_irq_affinity
29 install -d ${D}${sysconfdir}/network
30 install -m 0755 ${S}/../scripts/set_irq_affinity ${D}${sysconfdir}/network
31
32 rm -rf ${D}${prefix}/man
33}
34
35PACKAGES += "${PN}-script"
36
37FILES_${PN}-script += "${sysconfdir}/network/set_irq_affinity"
diff --git a/recipes-kernel/intel-ethernet/ixgbevf/0001-Makefile-check-for-CONFIG_IXGBEVF-instead.patch b/recipes-kernel/intel-ethernet/ixgbevf/0001-Makefile-check-for-CONFIG_IXGBEVF-instead.patch
deleted file mode 100644
index 49a59496..00000000
--- a/recipes-kernel/intel-ethernet/ixgbevf/0001-Makefile-check-for-CONFIG_IXGBEVF-instead.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From b1d7f46442e50458311573443a5c78637874f62b Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 12 Apr 2018 11:46:15 +0800
4Subject: [PATCH] Makefile: check for CONFIG_IXGBEVF instead
5
6Check for the correct config, otherwise it won't build with kbuild.
7
8Upstream-Status: Pending
9
10Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
11---
12 src/Makefile | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/Makefile b/Makefile
16index 968ef5e..e3cb81b 100644
17--- a/Makefile
18+++ b/Makefile
19@@ -28,7 +28,7 @@ ifneq ($(KERNELRELEASE),)
20 # Makefile for the Intel(R) 10GbE PCI Express Virtual Function Driver
21 #
22
23-obj-$(CONFIG_IXGBE) += ixgbevf.o
24+obj-$(CONFIG_IXGBEVF) += ixgbevf.o
25
26 define ixgbevf-y
27 ixgbevf_main.o
diff --git a/recipes-kernel/intel-ethernet/ixgbevf/0001-ixgbevf-skip-host-depmod.patch b/recipes-kernel/intel-ethernet/ixgbevf/0001-ixgbevf-skip-host-depmod.patch
deleted file mode 100644
index 656a897d..00000000
--- a/recipes-kernel/intel-ethernet/ixgbevf/0001-ixgbevf-skip-host-depmod.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From 9677d09f5c3984997ac8e7d90b5d4b11fb9ce277 Mon Sep 17 00:00:00 2001
2From: sweeaun <swee.aun.khor@intel.com>
3Date: Sat, 7 Oct 2017 20:56:35 -0700
4Subject: [PATCH] ixgbevf: skip host depmod
5
6Upstream-Status: Inappropriate [Cross-Compile]
7
8Depmod during do_install is irrelevant when cross-compiling.
9Remove the depmod steps during do_install.
10
11Signed-off-by: sweeaun <swee.aun.khor@intel.com>
12---
13 Makefile | 2 --
14 1 file changed, 2 deletions(-)
15
16diff --git a/Makefile b/Makefile
17index 91df705..1dcf350 100644
18--- a/Makefile
19+++ b/Makefile
20@@ -104,8 +104,6 @@ modules_install: default manfile
21 @install -D -m 644 ${DRIVER}.${MANSECTION}.gz ${INSTALL_MOD_PATH}${MANDIR}/man${MANSECTION}/${DRIVER}.${MANSECTION}.gz
22 @echo "Installing modules..."
23 @+$(call kernelbuild,modules_install)
24- @echo "Running depmod..."
25- @$(call cmd_depmod)
26
27 uninstall:
28 rm -f ${INSTALL_MOD_PATH}/lib/modules/${KVER}/${INSTALL_MOD_DIR}/${DRIVER}.ko;
29--
302.7.4
31
diff --git a/recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb b/recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb
new file mode 100644
index 00000000..92e25739
--- /dev/null
+++ b/recipes-kernel/intel-ethernet/ixgbevf_4.19.10.bb
@@ -0,0 +1,46 @@
1SUMMARY = "ixgbevf kernel driver for Intel Magnolia Park 10GbE"
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 \
4that can only be activated on kernels that support SR-IOV. \
5SR-IOV requires the correct platform and OS support. \
6The guest OS loading this driver must support MSI-X interrupts."
7
8HOMEPAGE = "https://sourceforge.net/projects/e1000/"
9SECTION = "kernel/network"
10LICENSE = "GPL-2.0-only"
11LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=a216b4192dc6b777b6f0db560e9a8417"
12
13SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/${PV}/${BP}.tar.gz \
14 "
15
16SRC_URI[sha256sum] = "73c6a27be324a48b069dbda0d1d07212a2214c71f54df57bca7177fc92b04881"
17
18UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/"
19UPSTREAM_CHECK_REGEX = "ixgbevf%20stable/(?P<pver>\d+(\.\d+)+)/"
20
21CVE_PRODUCT = "linux:linux_kernel_ixgbe"
22
23S = "${WORKDIR}/${BP}/src"
24
25EXTRA_OEMAKE = 'KSRC="${STAGING_KERNEL_DIR}" KOBJ="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
26
27KERNEL_MODULE_AUTOLOAD:append:intel-core2-32 = " ixgbevf"
28KERNEL_MODULE_AUTOLOAD:append:intel-corei7-64 = " ixgbevf"
29
30inherit module
31
32do_install:append () {
33 # Install scripts/set_irq_affinity
34 install -d ${D}${sysconfdir}/network
35 install -m 0755 ${S}/../scripts/set_irq_affinity ${D}${sysconfdir}/network
36
37 rm -rf ${D}${prefix}/man
38}
39
40PACKAGES += "${PN}-script"
41
42FILES:${PN}-script += "${sysconfdir}/network/set_irq_affinity"
43
44CVE_STATUS[CVE-2015-1142857] = "fixed-version: Fixed from version 4.4-rc1"
45
46EXCLUDE_FROM_WORLD = "1"
diff --git a/recipes-kernel/intel-ethernet/ixgbevf_4.3.5.bb b/recipes-kernel/intel-ethernet/ixgbevf_4.3.5.bb
deleted file mode 100644
index 6f1ca081..00000000
--- a/recipes-kernel/intel-ethernet/ixgbevf_4.3.5.bb
+++ /dev/null
@@ -1,41 +0,0 @@
1SUMMARY="ixgbevf kernel driver for Intel Magnolia Park 10GbE"
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 \
4that can only be activated on kernels that support SR-IOV. \
5SR-IOV requires the correct platform and OS support. \
6The guest OS loading this driver must support MSI-X interrupts."
7
8HOMEPAGE = "https://sourceforge.net/projects/e1000/"
9SECTION = "kernel/network"
10LICENSE = "GPLv2"
11LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
12
13SRC_URI = "https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/${PV}/${BP}.tar.gz \
14 file://0001-ixgbevf-skip-host-depmod.patch \
15 file://0001-Makefile-check-for-CONFIG_IXGBEVF-instead.patch \
16 "
17
18SRC_URI[md5sum] = "cdd9c52f034223c114d4b10345d11fe9"
19SRC_URI[sha256sum] = "f2ae017462bd1ea8082710580ec3dadfc322a0b2ecd4a576a16f0a4b622e5968"
20
21S = "${WORKDIR}/${BP}/src"
22MODULES_INSTALL_TARGET = "install"
23
24EXTRA_OEMAKE='KSRC="${STAGING_KERNEL_BUILDDIR}" KVER="${KERNEL_VERSION}" INSTALL_MOD_PATH="${D}"'
25
26KERNEL_MODULE_AUTOLOAD_append_intel-core2-32 = " ixgbevf"
27KERNEL_MODULE_AUTOLOAD_append_intel-corei7-64 = " ixgbevf"
28
29inherit module
30
31do_install_append () {
32 # Install scripts/set_irq_affinity
33 install -d ${D}${sysconfdir}/network
34 install -m 0755 ${S}/../scripts/set_irq_affinity ${D}${sysconfdir}/network
35
36 rm -rf ${D}${prefix}/man
37}
38
39PACKAGES += "${PN}-script"
40
41FILES_${PN}-script += "${sysconfdir}/network/set_irq_affinity"
diff --git a/recipes-kernel/iwlwifi/backport-iwlwifi/0001-hrtimer-fix-version-numbers-because-production-kerne.patch b/recipes-kernel/iwlwifi/backport-iwlwifi/0001-hrtimer-fix-version-numbers-because-production-kerne.patch
deleted file mode 100644
index 4fdc36f7..00000000
--- a/recipes-kernel/iwlwifi/backport-iwlwifi/0001-hrtimer-fix-version-numbers-because-production-kerne.patch
+++ /dev/null
@@ -1,87 +0,0 @@
1From ecb29b78ce946c802058be0c46a0d20432f412e5 Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com>
3Date: Thu, 28 Sep 2017 10:51:15 -0700
4Subject: [PATCH] hrtimer: fix version numbers because production kernel has
5 update
6
7Decrease the version check because the OTC production kernel which is
84.9 includes the HRTimer code that this is using.
9
10Upstream-Status: [Backport] It's been backported into the older kernel
11Signed-off-by: Saul Wold <sgw@linux.intel.com>
12---
13 backport-include/linux/hrtimer.h | 2 +-
14 drivers/net/wireless/intel/iwlwifi/mvm/tx.c | 2 +-
15 drivers/net/wireless/intel/iwlwifi/pcie/tx.c | 2 +-
16 drivers/net/wireless/intel/iwlwifi/trans_slave/shared.c | 2 +-
17 net/mac80211/tx.c | 2 +-
18 5 files changed, 5 insertions(+), 5 deletions(-)
19
20diff --git a/backport-include/linux/hrtimer.h b/backport-include/linux/hrtimer.h
21index bdcf106e1..ae128852d 100644
22--- a/backport-include/linux/hrtimer.h
23+++ b/backport-include/linux/hrtimer.h
24@@ -4,7 +4,7 @@
25 #include_next <linux/hrtimer.h>
26 #include <linux/interrupt.h>
27
28-#if LINUX_VERSION_IS_LESS(4,10,0)
29+#if LINUX_VERSION_IS_LESS(4,9,0)
30 static inline void backport_hrtimer_start(struct hrtimer *timer, s64 time,
31 const enum hrtimer_mode mode)
32 {
33diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
34index cf1f95a01..e6f1ff294 100644
35--- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
36+++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
37@@ -1310,7 +1310,7 @@ static void iwl_mvm_tx_lat_add_ts_ack(struct sk_buff *skb)
38 s64 ts_1 = ktime_to_ns(skb->tstamp) >> 32;
39 s64 diff = temp - ts_1;
40
41-#if LINUX_VERSION_IS_LESS(4,10,0)
42+#if LINUX_VERSION_IS_LESS(4,9,0)
43 skb->tstamp.tv64 += diff;
44 #else
45 skb->tstamp += diff;
46diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/tx.c b/drivers/net/wireless/intel/iwlwifi/pcie/tx.c
47index df81bce25..ad664bacd 100644
48--- a/drivers/net/wireless/intel/iwlwifi/pcie/tx.c
49+++ b/drivers/net/wireless/intel/iwlwifi/pcie/tx.c
50@@ -1955,7 +1955,7 @@ static void iwl_trans_pci_tx_lat_add_ts_write(struct sk_buff *skb)
51 s64 ts_1 = ktime_to_ns(skb->tstamp) >> 32;
52 s64 diff = temp - ts_1;
53
54-#if LINUX_VERSION_IS_LESS(4,10,0)
55+#if LINUX_VERSION_IS_LESS(4,9,0)
56 skb->tstamp.tv64 += diff << 16;
57 #else
58 skb->tstamp += diff << 16;
59diff --git a/drivers/net/wireless/intel/iwlwifi/trans_slave/shared.c b/drivers/net/wireless/intel/iwlwifi/trans_slave/shared.c
60index e4d45bcf7..cdd0ba9a2 100644
61--- a/drivers/net/wireless/intel/iwlwifi/trans_slave/shared.c
62+++ b/drivers/net/wireless/intel/iwlwifi/trans_slave/shared.c
63@@ -796,7 +796,7 @@ void iwl_slv_tx_lat_add_ts_write(struct iwl_trans_slv *trans_slv,
64
65 ts_1 = ktime_to_ns(data_entry->skb->tstamp) >> 32;
66 diff = temp - ts_1;
67-#if LINUX_VERSION_IS_LESS(4,10,0)
68+#if LINUX_VERSION_IS_LESS(4,9,0)
69 data_entry->skb->tstamp.tv64 += diff << 16;
70 #else
71 data_entry->skb->tstamp += diff << 16;
72diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
73index 94a348688..0f226c413 100644
74--- a/net/mac80211/tx.c
75+++ b/net/mac80211/tx.c
76@@ -2278,7 +2278,7 @@ static void ieee80211_tx_latency_start_msrmnt(struct ieee80211_local *local,
77 if (!tx_latency && !tx_consec && !tx_thrshld)
78 return;
79 temp = ktime_to_ms(ktime_get());
80-#if LINUX_VERSION_IS_LESS(4,10,0)
81+#if LINUX_VERSION_IS_LESS(4,9,0)
82 skb->tstamp.tv64 += temp << 32;
83 #else
84 skb->tstamp += temp << 32;
85--
862.13.5
87
diff --git a/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb b/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
index 0173ef83..7aaf22c2 100644
--- a/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
+++ b/recipes-kernel/iwlwifi/backport-iwlwifi_git.bb
@@ -1,13 +1,13 @@
1SUMMARY = "Intel Wireless LinuxCore kernel driver" 1SUMMARY = "Intel Wireless LinuxCore kernel driver"
2DESCRIPTION = "Intel Wireless LinuxCore kernel driver" 2DESCRIPTION = "Intel Wireless LinuxCore kernel driver"
3SECTION = "kernel" 3SECTION = "kernel"
4LICENSE = "GPLv2" 4LICENSE = "GPL-2.0-only"
5 5
6REQUIRED_DISTRO_FEATURES = "wifi" 6REQUIRED_DISTRO_FEATURES = "wifi"
7 7
8LIC_FILES_CHKSUM = "file://${S}/COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7" 8LIC_FILES_CHKSUM = "file://${S}/COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
9 9
10inherit module 10inherit module features_check
11 11
12# For some iwfwifi LinuxCore supported wireless chips, the best/latest 12# For some iwfwifi LinuxCore supported wireless chips, the best/latest
13# firmware blobs are found in the iwlwifi's linux-firmware.git fork. 13# firmware blobs are found in the iwlwifi's linux-firmware.git fork.
@@ -17,16 +17,12 @@ inherit module
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 = "30" 20PV = "79"
21SRCREV = "b31221a99488021300e7f89d2ecf9bdd2bc52dd2" 21SRCREV = "574631d89d736fd2c76b0e2ea489270c50903e52"
22
23# Add a patch for Intel's Production Kernel as it's got a backport of HRTimers
24PK_PATCH = "${@bb.utils.contains('PREFERRED_PROVIDER_virtual/kernel','linux-intel','file://0001-hrtimer-fix-version-numbers-because-production-kerne.patch','',d)}"
25 22
26SRC_URI = " \ 23SRC_URI = " \
27 git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/backport-iwlwifi;branch=release/LinuxCore${PV} \ 24 git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/backport-iwlwifi;branch=release/core${PV} \
28 file://0001-Makefile.real-skip-host-install-scripts.patch \ 25 file://0001-Makefile.real-skip-host-install-scripts.patch \
29 ${PK_PATCH} \
30 file://iwlwifi.conf \ 26 file://iwlwifi.conf \
31 " 27 "
32 28
@@ -38,17 +34,21 @@ do_configure() {
38 CC=gcc CFLAGS= LDFLAGS= make defconfig-iwlwifi-public KLIB_BUILD=${KBUILD_OUTPUT} 34 CC=gcc CFLAGS= LDFLAGS= make defconfig-iwlwifi-public KLIB_BUILD=${KBUILD_OUTPUT}
39} 35}
40 36
41MODULES_INSTALL_TARGET="install" 37MODULES_INSTALL_TARGET = "install"
42 38
43do_install_append() { 39do_install:append() {
44 ## install configs and service scripts 40 ## install configs and service scripts
45 install -d ${D}${sysconfdir}/modprobe.d 41 install -d ${D}${sysconfdir}/modprobe.d
46 install -m 0644 ${WORKDIR}/iwlwifi.conf ${D}${sysconfdir}/modprobe.d 42 install -m 0644 ${WORKDIR}/iwlwifi.conf ${D}${sysconfdir}/modprobe.d
47} 43}
48 44
49RDEPENDS_${PN} = "linux-firmware-iwlwifi" 45RDEPENDS:${PN} = "linux-firmware-iwlwifi"
46
47FILES:${PN} += "${sysconfdir}/modprobe.d/iwlwifi.conf"
50 48
51KERNEL_MODULE_AUTOLOAD_append_core2-32-intel-common = " iwlwifi" 49KERNEL_MODULE_AUTOLOAD:append:core2-32-intel-common = " iwlwifi"
52KERNEL_MODULE_AUTOLOAD_append_corei7-64-intel-common = " iwlwifi" 50KERNEL_MODULE_AUTOLOAD:append:corei7-64-intel-common = " iwlwifi"
53 51
54KERNEL_MODULE_PACKAGE_PREFIX = "backport-iwlwifi" 52KERNEL_MODULE_PACKAGE_PREFIX = "backport-iwlwifi"
53
54EXCLUDE_FROM_WORLD = "1"
diff --git a/recipes-kernel/linux/linux-intel-rt_4.14.bb b/recipes-kernel/linux/linux-intel-rt_4.14.bb
deleted file mode 100644
index 2af2ab35..00000000
--- a/recipes-kernel/linux/linux-intel-rt_4.14.bb
+++ /dev/null
@@ -1,24 +0,0 @@
1require linux-intel.inc
2
3# Skip processing of this recipe if it is not explicitly specified as the
4# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
5# to build multiple virtual/kernel providers, e.g. as dependency of
6# core-image-rt-sdk, core-image-rt.
7python () {
8 if d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-intel-rt":
9 raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-intel-rt to enable it")
10}
11
12KBRANCH = "4.14/preempt-rt"
13KMETA_BRANCH = "yocto-4.14"
14
15# Fix for 32-bit perf issue. Remove when patch is backported to 4.14.
16SRC_URI_append = " file://0001-perf-x86-32-explicitly-include-errno.h.patch"
17
18DEPENDS += "elfutils-native openssl-native util-linux-native"
19
20LINUX_VERSION ?= "4.14.59"
21SRCREV_machine ?= "6a0fa58d9e8c74b7a3884834d3196b19b42db194"
22SRCREV_meta ?= "5c089e91b398ac284f027a4611979136becbf9b1"
23
24LINUX_KERNEL_TYPE = "preempt-rt"
diff --git a/recipes-kernel/linux/linux-intel-rt_4.9.bb b/recipes-kernel/linux/linux-intel-rt_4.9.bb
deleted file mode 100644
index 0b81987a..00000000
--- a/recipes-kernel/linux/linux-intel-rt_4.9.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1
2require linux-intel.inc
3
4# Skip processing of this recipe if it is not explicitly specified as the
5# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
6# to build multiple virtual/kernel providers, e.g. as dependency of
7# core-image-rt-sdk, core-image-rt.
8python () {
9 if d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-intel-rt":
10 raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-intel-rt to enable it")
11}
12
13KBRANCH = "4.9/yocto/base-rt"
14KMETA_BRANCH = "yocto-4.9"
15
16LINUX_VERSION ?= "4.9.84"
17SRCREV_machine ?= "33b17c3a62dc470c849f85ce2a90cfa90e96bcf5"
18SRCREV_meta ?= "bae5cc4e973f60baa35ed227ba0c3bdda4d16e87"
19
20LINUX_KERNEL_TYPE = "preempt-rt"
diff --git a/recipes-kernel/linux/linux-intel-rt_6.12.bb b/recipes-kernel/linux/linux-intel-rt_6.12.bb
new file mode 100644
index 00000000..13b495d1
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel-rt_6.12.bb
@@ -0,0 +1,35 @@
1require linux-intel.inc
2
3SRC_URI:prepend = "git://github.com/intel/linux-intel-lts.git;protocol=https;name=machine;branch=${KBRANCH}; \
4 "
5SRC_URI:append = " file://0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch \
6 "
7
8# Skip processing of this recipe if it is not explicitly specified as the
9# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
10# to build multiple virtual/kernel providers, e.g. as dependency of
11# core-image-rt-sdk, core-image-rt.
12python () {
13 if d.getVar("KERNEL_PACKAGE_NAME", True) == "kernel" and d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-intel-rt":
14 raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-intel-rt to enable it")
15}
16
17KBRANCH = "6.12/linux"
18KMETA_BRANCH = "yocto-6.12"
19
20LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
21
22DEPENDS += "elfutils-native openssl-native util-linux-native"
23
24LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}"
25
26LINUX_VERSION ?= "6.12.27"
27SRCREV_machine ?= "9e2f92c31c6353101755c83670232c94e0c07ddc"
28SRCREV_meta ?= "da71eb19ceab34a7a6ff4284f1580e043c870168"
29
30LINUX_KERNEL_TYPE = "preempt-rt"
31
32# Functionality flags
33KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc"
34
35UPSTREAM_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 2525c70d..c698ae28 100644
--- a/recipes-kernel/linux/linux-intel.inc
+++ b/recipes-kernel/linux/linux-intel.inc
@@ -1,26 +1,22 @@
1require recipes-kernel/linux/linux-yocto.inc 1require recipes-kernel/linux/linux-yocto.inc
2require recipes-kernel/linux/meta-intel-compat-kernel.inc 2require 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 git://github.com/intel/linux-intel-lts.git;protocol=https;name=machine;branch=${KBRANCH}; \
10 file://0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch \
11 ${KERNEL_CONFIG_URI} \ 9 ${KERNEL_CONFIG_URI} \
10 file://fix-perf-reproducibility.patch \
11 file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch \
12 file://0002-mconf-fix-output-of-cflags-and-libraries.patch \
12 " 13 "
13 14
14SRC_URI_append_core2-32-intel-common = " file://disable_skylake_sound.cfg"
15
16LINUX_VERSION_EXTENSION ?= "-intel-pk-${LINUX_KERNEL_TYPE}"
17
18PV = "${LINUX_VERSION}+git${SRCPV}" 15PV = "${LINUX_VERSION}+git${SRCPV}"
19 16
20KMETA = "kernel-meta" 17KMETA = "kernel-meta"
21KCONF_BSP_AUDIT_LEVEL = "2" 18KCONF_BSP_AUDIT_LEVEL = "0"
22 19
23COMPATIBLE_MACHINE ?= "(intel-corei7-64|intel-core2-32)" 20COMPATIBLE_MACHINE ?= "(intel-corei7-64)"
24 21
25KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}" 22KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
26KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}"
diff --git a/recipes-kernel/linux/linux-intel/0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch b/recipes-kernel/linux/linux-intel/0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch
new file mode 100644
index 00000000..df2a4139
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel/0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch
@@ -0,0 +1,48 @@
1From 4881d0f985aab70c685bd63b56a2d6ad5e790abc 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 8267e8d71338..755dd33a8b04 100755
27--- a/lib/build_OID_registry
28+++ b/lib/build_OID_registry
29@@ -9,6 +9,7 @@
30
31 use strict;
32 use Cwd qw(abs_path);
33+use File::Basename;
34
35 my @names = ();
36 my @oids = ();
37@@ -40,7 +41,7 @@ open C_FILE, ">$ARGV[1]" or die;
38 print C_FILE "/*\n";
39 my $scriptname = $0;
40 $scriptname =~ s#^\Q$abs_srctree/\E##;
41-print C_FILE " * Automatically generated by ", $scriptname, ". 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.34.1
48
diff --git a/recipes-kernel/linux/linux-intel/0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch b/recipes-kernel/linux/linux-intel/0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch
deleted file mode 100644
index a9e9213b..00000000
--- a/recipes-kernel/linux/linux-intel/0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch
+++ /dev/null
@@ -1,62 +0,0 @@
1From e6ebc8e654bba53f28af5229a1069fc74fa58b7b Mon Sep 17 00:00:00 2001
2From: Jason Wessel <jason.wessel@windriver.com>
3Date: Thu, 25 Sep 2014 11:26:49 -0700
4Subject: [PATCH] menuconfig,check-lxdiaglog.sh: Allow specification of ncurses
5 location
6
7In some cross build environments such as the Yocto Project build
8environment it provides an ncurses library that is compiled
9differently than the host's version. This causes display corruption
10problems when the host's curses includes are used instead of the
11includes from the provided compiler are overridden. There is a second
12case where there is no curses libraries at all on the host system and
13menuconfig will just fail entirely.
14
15The solution is simply to allow an override variable in
16check-lxdialog.sh for environments such as the Yocto Project. Adding
17a CROSS_CURSES_LIB and CROSS_CURSES_INC solves the issue and allowing
18compiling and linking against the right headers and libraries.
19
20Upstream-Status: submitted [https://lkml.org/lkml/2013/3/3/103]
21
22Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
23cc: Michal Marek <mmarek@suse.cz>
24cc: linux-kbuild@vger.kernel.org
25Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
26Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
27---
28 scripts/kconfig/lxdialog/check-lxdialog.sh | 8 ++++++++
29 1 file changed, 8 insertions(+)
30 mode change 100755 => 100644 scripts/kconfig/lxdialog/check-lxdialog.sh
31
32diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh b/scripts/kconfig/lxdialog/check-lxdialog.sh
33old mode 100755
34new mode 100644
35index 5075ebf2d3b9..ba9242101190
36--- a/scripts/kconfig/lxdialog/check-lxdialog.sh
37+++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
38@@ -4,6 +4,10 @@
39 # What library to link
40 ldflags()
41 {
42+ if [ "$CROSS_CURSES_LIB" != "" ]; then
43+ echo "$CROSS_CURSES_LIB"
44+ exit
45+ fi
46 pkg-config --libs ncursesw 2>/dev/null && exit
47 pkg-config --libs ncurses 2>/dev/null && exit
48 for ext in so a dll.a dylib ; do
49@@ -21,6 +25,10 @@ ldflags()
50 # Where is ncurses.h?
51 ccflags()
52 {
53+ if [ x"$CROSS_CURSES_INC" != x ]; then
54+ echo "$CROSS_CURSES_INC"
55+ exit
56+ fi
57 if pkg-config --cflags ncursesw 2>/dev/null; then
58 echo '-DCURSES_LOC="<ncurses.h>" -DNCURSES_WIDECHAR=1'
59 elif pkg-config --cflags ncurses 2>/dev/null; then
60--
612.14.3
62
diff --git a/recipes-kernel/linux/linux-intel/0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch b/recipes-kernel/linux/linux-intel/0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch
new file mode 100644
index 00000000..a601e783
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel/0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-.patch
@@ -0,0 +1,52 @@
1From 1811da09f42ca5e82282970e8ad014707bc94c82 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@windriver.com>
3Date: Mon, 2 Jul 2018 23:10:28 -0400
4Subject: [PATCH 1/2] menuconfig,mconf-cfg: Allow specification of ncurses
5 location
6
7In some cross build environments such as the Yocto Project build
8environment it provides an ncurses library that is compiled
9differently than the host's version. This causes display corruption
10problems when the host's curses includes are used instead of the
11includes from the provided compiler are overridden. There is a second
12case where there is no curses libraries at all on the host system and
13menuconfig will just fail entirely.
14
15The solution is simply to allow an override variable in
16check-lxdialog.sh for environments such as the Yocto Project. Adding
17a CROSS_CURSES_LIB and CROSS_CURSES_INC solves the issue and allowing
18compiling and linking against the right headers and libraries.
19
20Upstream-Status: Submitted
21
22Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
23cc: Michal Marek <mmarek@suse.cz>
24cc: linux-kbuild@vger.kernel.org
25Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
26Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
27---
28 scripts/kconfig/mconf-cfg.sh | 8 ++++++++
29 1 file changed, 8 insertions(+)
30
31diff --git a/scripts/kconfig/mconf-cfg.sh b/scripts/kconfig/mconf-cfg.sh
32index 1e61f50a5905..38cf8304bb31 100755
33--- a/scripts/kconfig/mconf-cfg.sh
34+++ b/scripts/kconfig/mconf-cfg.sh
35@@ -7,6 +7,14 @@ libs=$2
36 PKG="ncursesw"
37 PKG2="ncurses"
38
39+if [ "$CROSS_CURSES_LIB" != "" ]; then
40+ echo libs=\'$CROSS_CURSES_LIB\'
41+ if [ x"$CROSS_CURSES_INC" != x ]; then
42+ echo cflags=\'$CROSS_CURSES_INC\'
43+ fi
44+ exit 0
45+fi
46+
47 if [ -n "$(command -v ${HOSTPKG_CONFIG})" ]; then
48 if ${HOSTPKG_CONFIG} --exists $PKG; then
49 ${HOSTPKG_CONFIG} --cflags ${PKG} > ${cflags}
50--
512.34.1
52
diff --git a/recipes-kernel/linux/linux-intel/0001-perf-x86-32-explicitly-include-errno.h.patch b/recipes-kernel/linux/linux-intel/0001-perf-x86-32-explicitly-include-errno.h.patch
deleted file mode 100644
index 5c8b27c7..00000000
--- a/recipes-kernel/linux/linux-intel/0001-perf-x86-32-explicitly-include-errno.h.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 57af599929263e7bb6f2f369c9e4bc1e440528a9 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@windriver.com>
3Date: Mon, 21 Aug 2017 13:52:53 -0400
4Subject: [PATCH 1/1] perf: x86-32: explicitly include <errno.h>
5
6Upstream-Status: submitted
7
8The 32bit x86 perf build does not find the system definitions of error
9return values, hence we end up with:
10
11| In file included from util/libunwind/x86_32.c:32:0:
12| util/libunwind/../../arch/x86/util/unwind-libunwind.c: In function 'libunwind__x86_reg_id':
13| util/libunwind/../../arch/x86/util/unwind-libunwind.c:109:11: error: 'EINVAL' undeclared (first use in this function); did you mean 'UNW_EINVAL'?
14| return -EINVAL;
15| ^~~~~~
16| UNW_EINVAL
17
18By explicitly including errno.h, we can fix this build without impacting
19other architectures.
20
21Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
22---
23
24 tools/perf/util/libunwind/x86_32.c | 1 +
25 1 file changed, 1 insertion(+)
26
27diff --git a/tools/perf/util/libunwind/x86_32.c b/tools/perf/util/libunwind/x86_32.c
28index 957ffff72428..d781f7bdeb88 100644
29--- a/tools/perf/util/libunwind/x86_32.c
30+++ b/tools/perf/util/libunwind/x86_32.c
31@@ -20,6 +20,7 @@
32 #define LIBUNWIND__ARCH_REG_IP PERF_REG_X86_IP
33 #define LIBUNWIND__ARCH_REG_SP PERF_REG_X86_SP
34
35+#include <errno.h>
36 #include "unwind.h"
37 #include "debug.h"
38 #include "libunwind-x86.h"
39--
402.14.3
41
diff --git a/recipes-kernel/linux/linux-intel/0002-mconf-fix-output-of-cflags-and-libraries.patch b/recipes-kernel/linux/linux-intel/0002-mconf-fix-output-of-cflags-and-libraries.patch
new file mode 100644
index 00000000..a96b68d9
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel/0002-mconf-fix-output-of-cflags-and-libraries.patch
@@ -0,0 +1,40 @@
1From 1b53d82a8152843afcddd7f16b0c43b6b4f22895 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Mon, 17 Jul 2023 17:17:55 -0400
4Subject: [PATCH 2/2] mconf: fix output of cflags and libraries
5
6commit 3122c84409d578a5df8bcb1 [kconfig: refactor Makefile to reduce
7process forks] changes the way that flags are detected. They are
8no longer just echo'd and captured, they are written to a file and
9later read.
10
11We adjust our CROSS ncurses patch accordingly.
12
13We'll eventually be able to drop this patch, but not quite yet.
14
15Upstream-Status: Inappropriate [OE-Specific]
16Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
17Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
18---
19 scripts/kconfig/mconf-cfg.sh | 4 ++--
20 1 file changed, 2 insertions(+), 2 deletions(-)
21
22diff --git a/scripts/kconfig/mconf-cfg.sh b/scripts/kconfig/mconf-cfg.sh
23index 38cf8304bb31..a5ae56e08b07 100755
24--- a/scripts/kconfig/mconf-cfg.sh
25+++ b/scripts/kconfig/mconf-cfg.sh
26@@ -8,9 +8,9 @@ PKG="ncursesw"
27 PKG2="ncurses"
28
29 if [ "$CROSS_CURSES_LIB" != "" ]; then
30- echo libs=\'$CROSS_CURSES_LIB\'
31+ echo $CROSS_CURSES_LIB > ${libs}
32 if [ x"$CROSS_CURSES_INC" != x ]; then
33- echo cflags=\'$CROSS_CURSES_INC\'
34+ echo $CROSS_CURSES_INC > ${cflags}
35 fi
36 exit 0
37 fi
38--
392.34.1
40
diff --git a/recipes-kernel/linux/linux-intel/disable_skylake_sound.cfg b/recipes-kernel/linux/linux-intel/disable_skylake_sound.cfg
deleted file mode 100644
index b38cf6c2..00000000
--- a/recipes-kernel/linux/linux-intel/disable_skylake_sound.cfg
+++ /dev/null
@@ -1,12 +0,0 @@
1# CONFIG_SND_SOC_INTEL_SKYLAKE is not set
2# CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH is not set
3# CONFIG_SND_SOC_INTEL_BXT_RT298_MACH is not set
4# CONFIG_SND_SOC_INTEL_BXT_TDF8532_MACH is not set
5# CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH is not set
6# CONFIG_SND_SOC_INTEL_SKL_RT286_MACH is not set
7# CONFIG_SND_SOC_INTEL_CNL_RT274_MACH is not set
8# CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH is not set
9# CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH is not set
10# CONFIG_SND_SOC_INTEL_CNL_CS42L42_MACH is not set
11# CONFIG_SND_SOC_INTEL_CNL_RT700_MACH is not set
12# CONFIG_SND_SOC_INTEL_CNL_SVFPGA_MACH is not set
diff --git a/recipes-kernel/linux/linux-intel/fix-perf-reproducibility.patch b/recipes-kernel/linux/linux-intel/fix-perf-reproducibility.patch
new file mode 100644
index 00000000..1a98b1db
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel/fix-perf-reproducibility.patch
@@ -0,0 +1,39 @@
1From b8cd0e429bf75b673c438a8277d4bc74327df992 Mon Sep 17 00:00:00 2001
2From: Tom Zanussi <tom.zanussi@intel.com>
3Date: Tue, 3 Jul 2012 13:07:23 -0500
4Subject: perf: change --root to --prefix for python install
5
6Otherwise we get the sysroot path appended to the build path, not what
7we want.
8
9Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
10
11Upstream-Status: Inappropriate
12
13Taken from linux-yocto, v5.15/standard/base
14https://git.yoctoproject.org/linux-yocto/commit?id=b8cd0e429bf75b673c438a8277d4bc74327df992&h=v5.15%2Fstandard%2Fbase
15
16Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
17---
18 tools/perf/Makefile.perf | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21(limited to 'tools/perf/Makefile.perf')
22
23diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
24index 8f738e11356d..ee945d8e3996 100644
25--- a/tools/perf/Makefile.perf
26+++ b/tools/perf/Makefile.perf
27@@ -1022,7 +1022,7 @@ install-bin: install-tools install-tests install-traceevent-plugins
28 install: install-bin try-install-man
29
30 install-python_ext:
31- $(PYTHON_WORD) util/setup.py --quiet install --root='/$(DESTDIR_SQ)'
32+ $(PYTHON_WORD) util/setup.py --quiet install --prefix='$(DESTDIR_SQ)/usr'
33
34 # 'make install-doc' should call 'make -C Documentation install'
35 $(INSTALL_DOC_TARGETS):
36--
37cgit
38
39
diff --git a/recipes-kernel/linux/linux-intel_4.14.bb b/recipes-kernel/linux/linux-intel_4.14.bb
deleted file mode 100644
index d9bb1222..00000000
--- a/recipes-kernel/linux/linux-intel_4.14.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1require linux-intel.inc
2
3KBRANCH = "4.14/base"
4KMETA_BRANCH = "yocto-4.14"
5
6# Fix for 32-bit perf issue. Remove when patch is backported to 4.14.
7SRC_URI_append = " file://0001-perf-x86-32-explicitly-include-errno.h.patch"
8
9DEPENDS += "elfutils-native openssl-native util-linux-native"
10
11LINUX_VERSION ?= "4.14.68"
12SRCREV_machine ?= "6a22f4848396c544f862f5a4b20e32f0ce106078"
13SRCREV_meta ?= "0936b18ed8d58257f8f1d79c085adbf6d4362530"
14
15# For Crystalforest and Romley
16KERNEL_MODULE_AUTOLOAD_append_core2-32-intel-common = " uio"
17KERNEL_MODULE_AUTOLOAD_append_corei7-64-intel-common = " uio"
18
19# Functionality flags
20KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/security/security.scc"
diff --git a/recipes-kernel/linux/linux-intel_4.9.bb b/recipes-kernel/linux/linux-intel_4.9.bb
deleted file mode 100644
index 32f2949f..00000000
--- a/recipes-kernel/linux/linux-intel_4.9.bb
+++ /dev/null
@@ -1,16 +0,0 @@
1
2require linux-intel.inc
3
4KBRANCH = "4.9/yocto/base"
5KMETA_BRANCH = "yocto-4.9"
6
7LINUX_VERSION ?= "4.9.126"
8SRCREV_machine ?= "38d41ee6fde529a3c8e98a0134411e6f0067e0ad"
9SRCREV_meta ?= "f9e90afd4e47920e990dacb73cd6508917ca5422"
10
11# For Crystalforest and Romley
12KERNEL_MODULE_AUTOLOAD_append_core2-32-intel-common = " uio"
13KERNEL_MODULE_AUTOLOAD_append_corei7-64-intel-common = " uio"
14
15# Functionality flags
16KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
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..32b0b2e4
--- /dev/null
+++ b/recipes-kernel/linux/linux-intel_6.12.bb
@@ -0,0 +1,25 @@
1require linux-intel.inc
2
3SRC_URI:prepend = "git://github.com/intel/linux-intel-lts.git;protocol=https;name=machine;branch=${KBRANCH}; \
4 "
5SRC_URI:append = " file://0001-6.12-lib-build_OID_registry-fix-reproducibility-issues.patch \
6 "
7KBRANCH = "6.12/linux"
8KMETA_BRANCH = "yocto-6.12"
9
10LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
11
12DEPENDS += "elfutils-native openssl-native util-linux-native"
13
14LINUX_VERSION_EXTENSION ??= "-intel-pk-${LINUX_KERNEL_TYPE}"
15
16LINUX_VERSION ?= "6.12.27"
17SRCREV_machine ?= "9e2f92c31c6353101755c83670232c94e0c07ddc"
18SRCREV_meta ?= "da71eb19ceab34a7a6ff4284f1580e043c870168"
19
20# Functionality flags
21KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc \
22 features/security/security.scc \
23 features/intel-npu/intel-npu.scc"
24
25UPSTREAM_CHECK_GITTAGREGEX = "^lts-(?P<pver>v6.12.(\d+)-linux-(\d+)T(\d+)Z)$"
diff --git a/recipes-kernel/linux/linux-yocto-dev.bbappend b/recipes-kernel/linux/linux-yocto-dev.bbappend
index 6173148c..deb19940 100644
--- a/recipes-kernel/linux/linux-yocto-dev.bbappend
+++ b/recipes-kernel/linux/linux-yocto-dev.bbappend
@@ -1,21 +1,21 @@
1FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:" 1FILESEXTRAPATHS:prepend:intel-x86-common := "${THISDIR}/${PN}:"
2 2
3COMPATIBLE_MACHINE_core2-32-intel-common = "${MACHINE}" 3COMPATIBLE_MACHINE:core2-32-intel-common = "${MACHINE}"
4KMACHINE_core2-32-intel-common = "intel-core2-32" 4KMACHINE:core2-32-intel-common = "intel-core2-32"
5KERNEL_FEATURES_append_core2-32-intel-common = "${KERNEL_FEATURES_INTEL_COMMON}" 5KERNEL_FEATURES:append:core2-32-intel-common = "${KERNEL_FEATURES_INTEL_COMMON}"
6 6
7COMPATIBLE_MACHINE_corei7-64-intel-common = "${MACHINE}" 7COMPATIBLE_MACHINE:corei7-64-intel-common = "${MACHINE}"
8KMACHINE_corei7-64-intel-common = "intel-corei7-64" 8KMACHINE:corei7-64-intel-common = "intel-corei7-64"
9KERNEL_FEATURES_append_corei7-64-intel-common = "${KERNEL_FEATURES_INTEL_COMMON}" 9KERNEL_FEATURES:append:corei7-64-intel-common = "${KERNEL_FEATURES_INTEL_COMMON}"
10 10
11# NOTE: We do not set SRCREVs here as -dev is intended to be built with AUTOREV 11# NOTE: We do not set SRCREVs here as -dev is intended to be built with AUTOREV
12# and setting them here breaks the default mechanism to use AUTOREV if the 12# and setting them here breaks the default mechanism to use AUTOREV if the
13# default SRCREV is set and linux-yocto-dev is the preferred provider. 13# default SRCREV is set and linux-yocto-dev is the preferred provider.
14 14
15# For Crystalforest and Romley 15# For Crystalforest and Romley
16KERNEL_MODULE_AUTOLOAD_append_core2-32-intel-common = " uio" 16KERNEL_MODULE_AUTOLOAD:append:core2-32-intel-common = " uio"
17KERNEL_MODULE_AUTOLOAD_append_corei7-64-intel-common = " uio" 17KERNEL_MODULE_AUTOLOAD:append:corei7-64-intel-common = " uio"
18 18
19# For FRI2, NUC 19# For FRI2, NUC
20KERNEL_MODULE_AUTOLOAD_append_core2-32-intel-common = " iwlwifi" 20KERNEL_MODULE_AUTOLOAD:append:core2-32-intel-common = " iwlwifi"
21KERNEL_MODULE_AUTOLOAD_append_corei7-64-intel-common = " iwlwifi" 21KERNEL_MODULE_AUTOLOAD:append:corei7-64-intel-common = " iwlwifi"
diff --git a/recipes-kernel/linux/linux-yocto-rt_4.14.bbappend b/recipes-kernel/linux/linux-yocto-rt_%.bbappend
index daa7dd6b..daa7dd6b 100644
--- a/recipes-kernel/linux/linux-yocto-rt_4.14.bbappend
+++ b/recipes-kernel/linux/linux-yocto-rt_%.bbappend
diff --git a/recipes-kernel/linux/linux-yocto-rt_4.18.bbappend b/recipes-kernel/linux/linux-yocto-rt_4.18.bbappend
deleted file mode 100644
index daa7dd6b..00000000
--- a/recipes-kernel/linux/linux-yocto-rt_4.18.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1require meta-intel-compat-kernel.inc
diff --git a/recipes-kernel/linux/linux-yocto_%.bbappend b/recipes-kernel/linux/linux-yocto_%.bbappend
index 7c29be14..9f3d43e3 100644
--- a/recipes-kernel/linux/linux-yocto_%.bbappend
+++ b/recipes-kernel/linux/linux-yocto_%.bbappend
@@ -1,4 +1,6 @@
1require meta-intel-compat-kernel.inc
2
1# The kernel build is 64-bit regardless, so include both common overrides. 3# The kernel build is 64-bit regardless, so include both common overrides.
2# Without this, the kernel will be missing vars that make it buildable for the 4# Without this, the kernel will be missing vars that make it buildable for the
3# intel-corei7-64 machine. 5# intel-corei7-64 machine.
4MACHINEOVERRIDES_prepend_corei7-64-x32-intel-common = "corei7-64-intel-common:" 6MACHINEOVERRIDES:prepend:corei7-64-x32-intel-common = "corei7-64-intel-common:"
diff --git a/recipes-kernel/linux/linux-yocto_4.14.bbappend b/recipes-kernel/linux/linux-yocto_4.14.bbappend
deleted file mode 100644
index daa7dd6b..00000000
--- a/recipes-kernel/linux/linux-yocto_4.14.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1require meta-intel-compat-kernel.inc
diff --git a/recipes-kernel/linux/linux-yocto_4.18.bbappend b/recipes-kernel/linux/linux-yocto_4.18.bbappend
deleted file mode 100644
index daa7dd6b..00000000
--- a/recipes-kernel/linux/linux-yocto_4.18.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1require meta-intel-compat-kernel.inc
diff --git a/recipes-kernel/linux/meta-intel-compat-kernel.inc b/recipes-kernel/linux/meta-intel-compat-kernel.inc
index be5056c2..0c861e13 100644
--- a/recipes-kernel/linux/meta-intel-compat-kernel.inc
+++ b/recipes-kernel/linux/meta-intel-compat-kernel.inc
@@ -3,11 +3,12 @@
3 3
4KERNEL_FEATURES_INTEL_COMMON ?= "" 4KERNEL_FEATURES_INTEL_COMMON ?= ""
5 5
6COMPATIBLE_MACHINE_intel-x86-common = "${MACHINE}" 6COMPATIBLE_MACHINE:intel-x86-common = "${MACHINE}"
7KERNEL_FEATURES_intel-x86-common = "${KERNEL_FEATURES_INTEL_COMMON}" 7KERNEL_FEATURES:intel-x86-common = "${KERNEL_FEATURES_INTEL_COMMON}"
8 8
9KMACHINE_corei7-64-intel-common = "intel-corei7-64" 9KMACHINE:corei7-64-intel-common = "intel-corei7-64"
10KMACHINE_core2-32-intel-common = "intel-core2-32" 10KMACHINE:core2-32-intel-common = "intel-core2-32"
11KMACHINE:x86-64-v3-intel-common = "intel-corei7-64"
11 12
12INTEL_COMMON_AUTOLOAD ?= " uio iwlwifi i915" 13INTEL_COMMON_AUTOLOAD ?= " uio iwlwifi i915"
13KERNEL_MODULE_AUTOLOAD_intel-x86-common = " ${INTEL_COMMON_AUTOLOAD}" 14KERNEL_MODULE_AUTOLOAD:intel-x86-common = " ${INTEL_COMMON_AUTOLOAD}"
diff --git a/recipes-kernel/lttng/lttng-modules/0002-lttng-modules-PKT-4.9-yocto-build-failed.patch b/recipes-kernel/lttng/lttng-modules/0002-lttng-modules-PKT-4.9-yocto-build-failed.patch
deleted file mode 100644
index 32b49b8d..00000000
--- a/recipes-kernel/lttng/lttng-modules/0002-lttng-modules-PKT-4.9-yocto-build-failed.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From ebfdc8b8af17f9cf23c6878eb52476fde7b48e5c Mon Sep 17 00:00:00 2001
2From: Priyalee Kushwaha <priyalee.kushwaha@intel.com>
3Date: Fri, 22 Sep 2017 14:40:57 -0700
4Subject: [PATCH] lttng-modules: PKT 4.9 yocto build failed
5
6PKT 4.9 yocto kernel backports a patch from upstream and that
7changes header include/linux/ktimer.h. Since this backported
8patch is only relevant for PKT kernel, we need to carry this
9patch.
10
11Upstream-Status: Backport
12Signed-off-by: Kushwaha, Priyalee <priyalee.kushwaha@intel.com>
13---
14 instrumentation/events/lttng-module/timer.h | 6 +++---
15 1 file changed, 3 insertions(+), 3 deletions(-)
16
17diff --git a/instrumentation/events/lttng-module/timer.h b/instrumentation/events/lttng-module/timer.h
18index d62fd25..59da988 100644
19--- a/instrumentation/events/lttng-module/timer.h
20+++ b/instrumentation/events/lttng-module/timer.h
21@@ -16,11 +16,11 @@ struct timer_list;
22
23 #endif /* _TRACE_TIMER_DEF_ */
24
25-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
26+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0))
27 #define lttng_ktime_get_tv64(kt) (kt)
28-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
29+#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0)) */
30 #define lttng_ktime_get_tv64(kt) ((kt).tv64)
31-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) */
32+#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0)) */
33
34 LTTNG_TRACEPOINT_EVENT_CLASS(timer_class,
35
36--
372.7.4
38
diff --git a/recipes-kernel/lttng/lttng-modules_%.bbappend b/recipes-kernel/lttng/lttng-modules_%.bbappend
deleted file mode 100644
index dc1c4a74..00000000
--- a/recipes-kernel/lttng/lttng-modules_%.bbappend
+++ /dev/null
@@ -1,7 +0,0 @@
1FILESEXTRAPATHS_prepend_intel-x86-common := "${THISDIR}/${PN}:"
2
3
4LTTNG_PATCH = "${@bb.utils.contains_any('PREFERRED_PROVIDER_virtual/kernel','linux-intel linux-intel-rt','file://0002-lttng-modules-PKT-4.9-yocto-build-failed.patch','',d)}"
5
6SRC_URI_append_intel-x86-common = " ${LTTNG_PATCH}"
7
diff --git a/recipes-multimedia/itt/itt_3.26.1.bb b/recipes-multimedia/itt/itt_3.26.1.bb
new file mode 100644
index 00000000..0043b5de
--- /dev/null
+++ b/recipes-multimedia/itt/itt_3.26.1.bb
@@ -0,0 +1,33 @@
1SUMMARY = "Intel® Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API"
2DESCRIPTION = "The Instrumentation and Tracing Technology (ITT) API enables \
3application to generate and control the collection of trace data during its \
4execution across different Intel tools."
5
6LICENSE = "BSD-3-Clause & GPL-2.0-only"
7LIC_FILES_CHKSUM = "file://LICENSES/BSD-3-Clause.txt;md5=c551872bcf41ce707df54c722edeca7b \
8 file://LICENSES/GPL-2.0-only.txt;md5=e2d76e7801260c21b90eea3605508ad6 \
9 "
10
11SRC_URI = "git://github.com/intel/ittapi.git;protocol=https;branch=master"
12SRCREV = "e535d565c88e4407f044719e2e9ec70c0b023d23"
13S = "${WORKDIR}/git"
14PE = "1"
15
16UPSTREAM_CHECK_GITTAGREGEX = "^v(?P<pver>(\d+(\.\d+)+))$"
17
18COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
19
20inherit pkgconfig cmake
21
22EXTRA_OECMAKE += "-DCMAKE_BUILD_TYPE=Release"
23EXTRA_OECMAKE += "${@oe.utils.conditional('TARGET_ARCH','x86_64','','-DFORCE_32=ON',d)}"
24
25do_install() {
26 install -d -m 755 ${D}${libdir} ${D}${includedir}/ittnotify
27 install -m 644 ${B}/bin/*.a ${D}${libdir}
28 cp -r ${S}/include/* ${D}${includedir}/ittnotify
29 cp -r ${S}/src/ittnotify/*.h ${D}${includedir}/ittnotify
30 rm -r ${D}${includedir}/ittnotify/fortran/win32
31}
32
33RDEPENDS:${PN}-dev:remove = "${PN} (= ${EXTENDPKGV})"
diff --git a/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch
new file mode 100644
index 00000000..ffb5b747
--- /dev/null
+++ b/recipes-multimedia/libva/files/0003-Force-ARGB-surface-to-tile4-for-ACM.patch
@@ -0,0 +1,44 @@
1From 6132115dd2f1db55a6a5371618247dfaa334a035 Mon Sep 17 00:00:00 2001
2From: Lim Siew Hoon <siew.hoon.lim@intel.com>
3Date: Wed, 11 Oct 2023 15:36:21 +0800
4Subject: [PATCH 3/7] Force ARGB surface to tile4 for ACM
5
6Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1728]
7
8Signed-off-by: Soon, Thean Siew <thean.siew.soon@intel.com>
9Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
10---
11 media_driver/linux/common/ddi/media_libva_util.cpp | 10 ++++++++++
12 1 file changed, 10 insertions(+)
13
14diff --git a/media_driver/linux/common/ddi/media_libva_util.cpp b/media_driver/linux/common/ddi/media_libva_util.cpp
15index a4e12edfa..11634f66e 100755
16--- a/media_driver/linux/common/ddi/media_libva_util.cpp
17+++ b/media_driver/linux/common/ddi/media_libva_util.cpp
18@@ -521,6 +521,7 @@ VAStatus DdiMediaUtil_AllocateSurface(
19 gmmCustomParams.Flags.Gpu.UnifiedAuxSurface = 0;
20 }
21 }
22+
23 break;
24 case TILING_X:
25 gmmCustomParams.Flags.Info.TiledX = true;
26@@ -702,6 +703,15 @@ VAStatus DdiMediaUtil_AllocateSurface(
27 }
28 }
29 }
30+ // There's no VAAPI interface for modifier query yet. As a workaround, always allocate
31+ // RGB surface as tile4.
32+ if ((format == Media_Format_A8R8G8B8 ||
33+ format == Media_Format_B10G10R10A2 |
34+ format == Media_Format_A8B8G8R8 ||
35+ format == Media_Format_X8R8G8B8) && !MEDIA_IS_SKU(&mediaDrvCtx->SkuTable, FtrTileY))
36+ {
37+ gmmParams.Flags.Info.Tile4 = true;
38+ }
39 break;
40 case TILING_X:
41 gmmParams.Flags.Info.TiledX = true;
42--
432.43.0
44
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/intel-media-driver_25.1.4.bb b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb
new file mode 100644
index 00000000..b972e230
--- /dev/null
+++ b/recipes-multimedia/libva/intel-media-driver_25.1.4.bb
@@ -0,0 +1,52 @@
1SUMMARY = "VA driver for Intel Gen based graphics hardware"
2DESCRIPTION = "Intel Media Driver for VAAPI is a new VA-API (Video Acceleration API) \
3user mode driver supporting hardware accelerated decoding, encoding, \
4and video post processing for GEN based graphics hardware."
5
6HOMEPAGE = "https://github.com/intel/media-driver"
7BUGTRACKER = "https://github.com/intel/media-driver/issues"
8
9LICENSE = "MIT & BSD-3-Clause"
10LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6aab5363823095ce682b155fef0231f0 \
11 file://media_driver/media_libvpx.LICENSE;md5=d5b04755015be901744a78cc30d390d4 \
12 "
13
14COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
15
16inherit features_check
17REQUIRED_DISTRO_FEATURES = "opengl"
18
19DEPENDS += "libva gmmlib"
20
21SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \
22 file://0003-Force-ARGB-surface-to-tile4-for-ACM.patch \
23 file://0004-Fix-failed-4k-videowalll-test-case-and-color-corrupt.patch \
24 "
25
26SRCREV = "14e2e7bcf1014186dbf1c099089c7c05cd880ae8"
27S = "${WORKDIR}/git"
28
29COMPATIBLE_HOST:x86-x32 = "null"
30
31UPSTREAM_CHECK_GITTAGREGEX = "^intel-media-(?P<pver>(?!600\..*)\d+(\.\d+)+)$"
32
33inherit cmake pkgconfig
34
35MEDIA_DRIVER_ARCH:x86 = "32"
36MEDIA_DRIVER_ARCH:x86-64 = "64"
37
38EXTRA_OECMAKE += " \
39 -DMEDIA_RUN_TEST_SUITE=OFF \
40 -DARCH=${MEDIA_DRIVER_ARCH} \
41 -DMEDIA_BUILD_FATAL_WARNINGS=OFF \
42 "
43
44CXXFLAGS:append:x86 = " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE"
45
46do_configure:prepend:toolchain-clang() {
47 sed -i -e '/-fno-tree-pre/d' ${S}/media_driver/cmake/linux/media_compile_flags_linux.cmake
48}
49
50FILES:${PN} += " \
51 ${libdir}/dri/ \
52 "
diff --git a/recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb b/recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb
index 9036f74e..5038d8d7 100644
--- a/recipes-multimedia/libva/intel-vaapi-driver_2.2.0.bb
+++ b/recipes-multimedia/libva/intel-vaapi-driver_2.4.1.bb
@@ -13,21 +13,22 @@ COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
13 13
14DEPENDS = "libva libdrm" 14DEPENDS = "libva libdrm"
15 15
16SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.bz2" 16SRC_URI = "https://github.com/intel/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.bz2 \
17SRC_URI[md5sum] = "e296c52fa1cb5c3d53a6cc994ce0a66c" 17 "
18SRC_URI[sha256sum] = "e8a5f54694eb76aad42653b591030b8a53b1513144c09a80defb3d8d8c875c18" 18
19SRC_URI[sha256sum] = "0081fce08eb3a83f7d99c3b853c8fdfa0af437b8f5b0fb7c66faeb83bcbe0c19"
19 20
20UPSTREAM_CHECK_URI = "https://github.com/intel/intel-vaapi-driver/releases" 21UPSTREAM_CHECK_URI = "https://github.com/intel/intel-vaapi-driver/releases"
21 22
22inherit autotools pkgconfig distro_features_check 23inherit meson pkgconfig features_check
23 24
24REQUIRED_DISTRO_FEATURES = "opengl" 25REQUIRED_DISTRO_FEATURES = "opengl"
25 26
26PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \ 27PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)} \
27 ${@bb.utils.contains("DISTRO_FEATURES", "opengl wayland", "wayland", "", d)}" 28 ${@bb.utils.contains("DISTRO_FEATURES", "opengl wayland", "wayland", "", d)}"
28PACKAGECONFIG[x11] = "--enable-x11,--disable-x11" 29PACKAGECONFIG[x11] = "-Dwith_x11=yes, -Dwith_x11=no"
29PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native virtual/egl" 30PACKAGECONFIG[wayland] = "-Dwith_wayland=yes, -Dwith_wayland=no, wayland wayland-native virtual/egl"
30 31
31FILES_${PN} += "${libdir}/dri/*.so" 32FILES:${PN} += "${libdir}/dri/*.so"
32FILES_${PN}-dev += "${libdir}/dri/*.la" 33FILES:${PN}-dev += "${libdir}/dri/*.la"
33FILES_${PN}-dbg += "${libdir}/dri/.debug" 34FILES:${PN}-dbg += "${libdir}/dri/.debug"
diff --git a/recipes-multimedia/libyami/libyami-utils/0001-Fix-build-with-clang.patch b/recipes-multimedia/libyami/libyami-utils/0001-Fix-build-with-clang.patch
deleted file mode 100644
index f7de9d16..00000000
--- a/recipes-multimedia/libyami/libyami-utils/0001-Fix-build-with-clang.patch
+++ /dev/null
@@ -1,96 +0,0 @@
1From f2e6d2ecfea635ab952649156e31ca893d4b1a47 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 12 Aug 2017 08:49:20 -0700
4Subject: [PATCH] Fix build with clang
5
6Fix errors e.g.
7error: comparison of constant -1 with expression of type 'char' is always true [-Werror,-Wtautological-constant-out-of-range-compare]error: comparison of constant -1 with expression of type 'char' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
8
9and
10
11psnr.cpp:225:17: error: bool literal returned from 'main' [-Werror,-Wmain]
12
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14Upstream-Status: Pending
15
16---
17 tests/decodehelp.cpp | 2 +-
18 tests/encodehelp.h | 2 +-
19 tests/vpp.cpp | 2 +-
20 tests/yamitranscode.cpp | 2 +-
21 testscripts/psnr.cpp | 4 ++--
22 5 files changed, 6 insertions(+), 6 deletions(-)
23
24diff --git a/tests/decodehelp.cpp b/tests/decodehelp.cpp
25index b27b977..62cca63 100644
26--- a/tests/decodehelp.cpp
27+++ b/tests/decodehelp.cpp
28@@ -81,7 +81,7 @@ bool processCmdLine(int argc, char** argv, DecodeParameter* parameters)
29 { NULL, no_argument, NULL, 0 }
30 };
31
32- char opt;
33+ int opt;
34 while ((opt = getopt_long_only(argc, argv, "h:m:n:i:f:o:w:?", long_opts,&option_index)) != -1){
35 switch (opt) {
36 case 'h':
37diff --git a/tests/encodehelp.h b/tests/encodehelp.h
38index 63580a4..651ec08 100644
39--- a/tests/encodehelp.h
40+++ b/tests/encodehelp.h
41@@ -109,7 +109,7 @@ static VideoRateControl string_to_rc_mode(char *str)
42
43 static bool process_cmdline(int argc, char *argv[])
44 {
45- char opt;
46+ int opt;
47 const struct option long_opts[] = {
48 { "help", no_argument, NULL, 'h' },
49 { "qp", required_argument, NULL, 0 },
50diff --git a/tests/vpp.cpp b/tests/vpp.cpp
51index 5a60c0a..52da43b 100644
52--- a/tests/vpp.cpp
53+++ b/tests/vpp.cpp
54@@ -151,7 +151,7 @@ public:
55 private:
56 bool processCmdLine(int argc, char* argv[])
57 {
58- char opt;
59+ int opt;
60 const struct option long_opts[] = {
61 { "help", no_argument, NULL, 'h' },
62 { "sharpening", required_argument, NULL, 's' },
63diff --git a/tests/yamitranscode.cpp b/tests/yamitranscode.cpp
64index 6207209..00164ce 100755
65--- a/tests/yamitranscode.cpp
66+++ b/tests/yamitranscode.cpp
67@@ -100,7 +100,7 @@ static VideoRateControl string_to_rc_mode(char *str)
68
69 static bool processCmdLine(int argc, char *argv[], TranscodeParams& para)
70 {
71- char opt;
72+ int opt;
73 const struct option long_opts[] = {
74 { "help", no_argument, NULL, 'h' },
75 { "qp", required_argument, NULL, 0 },
76diff --git a/testscripts/psnr.cpp b/testscripts/psnr.cpp
77index 5cc24c9..68bd668 100644
78--- a/testscripts/psnr.cpp
79+++ b/testscripts/psnr.cpp
80@@ -215,14 +215,14 @@ int main(int argc, char *argv[])
81 const char* psnrresult = "average_psnr.txt";
82 int width=0,height=0;
83 int standardpsnr = NORMAL_PSNR;
84- char opt;
85+ int opt;
86 while ((opt = getopt(argc, argv, "h:W:H:i:o:s:?")) != -1)
87 {
88 switch (opt) {
89 case 'h':
90 case '?':
91 print_help(argv[0]);
92- return false;
93+ return -1;
94 case 'i':
95 filename1 = optarg;
96 break;
diff --git a/recipes-multimedia/libyami/libyami-utils_git.bb b/recipes-multimedia/libyami/libyami-utils_git.bb
deleted file mode 100644
index 505d4f65..00000000
--- a/recipes-multimedia/libyami/libyami-utils_git.bb
+++ /dev/null
@@ -1,31 +0,0 @@
1SUMMARY = "Applications and Scripts for libyami."
2DESCRIPTION = "Applications and Scripts for libyami."
3
4HOMEPAGE = "https://github.com/intel/libyami-utils"
5BUGTRACKER = "https://github.com/intel/libyami-utils/issues/new"
6
7LICENSE = "Apache-2.0"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
9
10SRC_URI = "git://github.com/intel/libyami-utils.git \
11 file://0001-Fix-build-with-clang.patch \
12 "
13SRCREV = "06f0e45a34d85fa4f4858ec369adc0c7ed333469"
14S = "${WORKDIR}/git"
15PV = "1.3.0+git${SRCPV}"
16
17DEPENDS = "libva libyami"
18
19EXTRA_OECONF = "--disable-md5"
20
21inherit autotools pkgconfig distro_features_check
22
23REQUIRED_DISTRO_FEATURES = "opengl"
24
25PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
26
27# --enable-x11 needs libva-x11
28# gles-tests fail to build without x11: see https://github.com/intel/libyami-utils/issues/91
29PACKAGECONFIG[x11] = "--enable-x11 --enable-egl,--disable-x11 --disable-egl, virtual/libx11"
30
31UPSTREAM_CHECK_COMMITS = "1"
diff --git a/recipes-multimedia/libyami/libyami/0001-bitWriter.cpp-Delete-unused-CACHEBYTES.patch b/recipes-multimedia/libyami/libyami/0001-bitWriter.cpp-Delete-unused-CACHEBYTES.patch
deleted file mode 100644
index a96c9b85..00000000
--- a/recipes-multimedia/libyami/libyami/0001-bitWriter.cpp-Delete-unused-CACHEBYTES.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From 294874b610a5b8af9b736b3afc938010af58785e Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 17:15:45 -0700
4Subject: [PATCH 1/9] bitWriter.cpp: Delete unused CACHEBYTES
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Pending
9
10 codecparsers/bitWriter.cpp | 1 -
11 1 file changed, 1 deletion(-)
12
13diff --git a/codecparsers/bitWriter.cpp b/codecparsers/bitWriter.cpp
14index 9bcb14d..08469bf 100644
15--- a/codecparsers/bitWriter.cpp
16+++ b/codecparsers/bitWriter.cpp
17@@ -24,7 +24,6 @@
18
19 namespace YamiParser {
20
21-const uint32_t CACHEBYTES = sizeof(unsigned long int);
22 const uint32_t CACHEBITS = sizeof(unsigned long int) * 8;
23
24 // clip to keep lowest n bits
25--
262.14.1
27
diff --git a/recipes-multimedia/libyami/libyami/0002-typecast-index-from-size_t-to-int.patch b/recipes-multimedia/libyami/libyami/0002-typecast-index-from-size_t-to-int.patch
deleted file mode 100644
index a216566c..00000000
--- a/recipes-multimedia/libyami/libyami/0002-typecast-index-from-size_t-to-int.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From 88fa048e22ad00b04054b8a64df53bd440e01537 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 17:29:02 -0700
4Subject: [PATCH 2/9] typecast index from size_t to int
5
6size_t is not consistent across architectures e.g. on arm its unsigned int
7
8Fixes
9error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare]
10
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12---
13Upstream-Status: Pending
14
15 codecparsers/jpegParser.cpp | 4 ++--
16 1 file changed, 2 insertions(+), 2 deletions(-)
17
18diff --git a/codecparsers/jpegParser.cpp b/codecparsers/jpegParser.cpp
19index 2217028..6da5c36 100644
20--- a/codecparsers/jpegParser.cpp
21+++ b/codecparsers/jpegParser.cpp
22@@ -639,7 +639,7 @@ bool Parser::parseDAC()
23
24 length -= 2;
25
26- if (index < 0 || index >= (2 * NUM_ARITH_TBLS)) {
27+ if ((int)index < 0 || index >= (2 * NUM_ARITH_TBLS)) {
28 ERROR("Invalid DAC Index");
29 return false;
30 }
31@@ -747,7 +747,7 @@ bool Parser::parseDHT()
32 huffTables = &m_dcHuffTables;
33 }
34
35- if (index < 0 || index >= NUM_HUFF_TBLS) {
36+ if ((int)index < 0 || index >= NUM_HUFF_TBLS) {
37 ERROR("Bad Huff Table Index");
38 return false;
39 }
40--
412.14.1
42
diff --git a/recipes-multimedia/libyami/libyami/0003-Add-Wno-invalid-offsetof-to-compiler-commandline.patch b/recipes-multimedia/libyami/libyami/0003-Add-Wno-invalid-offsetof-to-compiler-commandline.patch
deleted file mode 100644
index 17289602..00000000
--- a/recipes-multimedia/libyami/libyami/0003-Add-Wno-invalid-offsetof-to-compiler-commandline.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1From 533d63287e9dd8f269b137c18fbe6c19206c8668 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 17:49:43 -0700
4Subject: [PATCH 3/9] Add -Wno-invalid-offsetof to compiler commandline
5
6clang++ is fussy about offsetof on non-POD types
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10Upstream-Status: Pending
11
12 codecparsers/Makefile.am | 1 +
13 1 file changed, 1 insertion(+)
14
15diff --git a/codecparsers/Makefile.am b/codecparsers/Makefile.am
16index 720bf81..d9226b3 100644
17--- a/codecparsers/Makefile.am
18+++ b/codecparsers/Makefile.am
19@@ -118,6 +118,7 @@ libyami_codecparser_cppflags = \
20 -Dvp8dx_start_decode=libyami_vp8dx_start_decode \
21 -Dvp8dx_bool_decoder_fill=libyami_vp8dx_bool_decoder_fill \
22 -I$(top_srcdir)/interface \
23+ -Wno-invalid-offsetof \
24 $(extra_includes) \
25 $(NULL)
26
27--
282.14.1
29
diff --git a/recipes-multimedia/libyami/libyami/0004-Typecast-POWER32SUB2-to-uint8_t.patch b/recipes-multimedia/libyami/libyami/0004-Typecast-POWER32SUB2-to-uint8_t.patch
deleted file mode 100644
index 27eca39b..00000000
--- a/recipes-multimedia/libyami/libyami/0004-Typecast-POWER32SUB2-to-uint8_t.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From d9c831ee38da4551396fad5cd53c3dfc0e5e0cf8 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 17:57:34 -0700
4Subject: [PATCH 4/9] Typecast POWER32SUB2 to uint8_t
5
6Fixes
7
8h265Parser.cpp:1064:5: error: comparison of constant 4294967294 with expression
9of type 'uint8_t' (aka 'unsigned char') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
10
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12---
13Upstream-Status: Pending
14
15 codecparsers/h265Parser.cpp | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/codecparsers/h265Parser.cpp b/codecparsers/h265Parser.cpp
19index 0dea3a6..c6cded2 100644
20--- a/codecparsers/h265Parser.cpp
21+++ b/codecparsers/h265Parser.cpp
22@@ -125,7 +125,7 @@ namespace H265 {
23 \
24 CHECK_READ_UE(var->var##_max_num_reorder_pics[i], 0, var->var##_max_dec_pic_buffering_minus1[i]); \
25 \
26- CHECK_READ_UE(var->var##_max_latency_increase_plus1[i], 0, POWER32SUB2); \
27+ CHECK_READ_UE(var->var##_max_latency_increase_plus1[i], 0, (uint8_t)POWER32SUB2); \
28 } \
29 }
30
31--
322.14.1
33
diff --git a/recipes-multimedia/libyami/libyami/0005-move-c-definitions-out-of-extern-C-block.patch b/recipes-multimedia/libyami/libyami/0005-move-c-definitions-out-of-extern-C-block.patch
deleted file mode 100644
index e77e85f7..00000000
--- a/recipes-multimedia/libyami/libyami/0005-move-c-definitions-out-of-extern-C-block.patch
+++ /dev/null
@@ -1,130 +0,0 @@
1From 3748cf904089878971cfcf66abf14c4d74f8241a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 18:03:07 -0700
4Subject: [PATCH 5/9] move c++ definitions out of extern "C" block
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Pending
9
10 decoder/vaapidecoder_host.cpp | 2 +-
11 encoder/vaapiencoder_host.cpp | 3 ++-
12 interface/VideoDecoderHost.h | 8 ++++----
13 interface/VideoEncoderHost.h | 8 ++++----
14 interface/VideoPostProcessHost.h | 8 ++++----
15 vpp/vaapipostprocess_host.cpp | 3 +--
16 6 files changed, 16 insertions(+), 16 deletions(-)
17
18diff --git a/decoder/vaapidecoder_host.cpp b/decoder/vaapidecoder_host.cpp
19index bcc9165..d9129f3 100644
20--- a/decoder/vaapidecoder_host.cpp
21+++ b/decoder/vaapidecoder_host.cpp
22@@ -100,9 +100,9 @@ void releaseVideoDecoder(IVideoDecoder * p)
23 {
24 delete p;
25 }
26+} // extern "C"
27
28 std::vector<std::string> getVideoDecoderMimeTypes()
29 {
30 return VaapiDecoderFactory::keys();
31 }
32-} // extern "C"
33diff --git a/encoder/vaapiencoder_host.cpp b/encoder/vaapiencoder_host.cpp
34index 49e903a..3ee9354 100644
35--- a/encoder/vaapiencoder_host.cpp
36+++ b/encoder/vaapiencoder_host.cpp
37@@ -78,9 +78,10 @@ void releaseVideoEncoder(IVideoEncoder* p) {
38 delete p;
39 }
40
41+} // extern "C"
42+
43 std::vector<std::string> getVideoEncoderMimeTypes()
44 {
45 return VaapiEncoderFactory::keys();
46 }
47
48-} // extern "C"
49diff --git a/interface/VideoDecoderHost.h b/interface/VideoDecoderHost.h
50index 86210fe..fd2ba7b 100644
51--- a/interface/VideoDecoderHost.h
52+++ b/interface/VideoDecoderHost.h
53@@ -32,12 +32,12 @@ extern "C" { // for dlsym usage
54 YamiMediaCodec::IVideoDecoder *createVideoDecoder(const char *mimeType);
55 /// \brief destroy the decoder
56 void releaseVideoDecoder(YamiMediaCodec::IVideoDecoder * p);
57-/** \fn void getVideoDecoderMimeTypes()
58- * \brief return the MimeTypes enabled in the current build
59-*/
60-std::vector<std::string> getVideoDecoderMimeTypes();
61
62 typedef YamiMediaCodec::IVideoDecoder *(*YamiCreateVideoDecoderFuncPtr) (const char *mimeType);
63 typedef void (*YamiReleaseVideoDecoderFuncPtr)(YamiMediaCodec::IVideoDecoder * p);
64 }
65+// \fn void getVideoDecoderMimeTypes()
66+// \brief return the MimeTypes enabled in the current build
67+//
68+std::vector<std::string> getVideoDecoderMimeTypes();
69 #endif /* VIDEO_DECODER_HOST_H_ */
70diff --git a/interface/VideoEncoderHost.h b/interface/VideoEncoderHost.h
71index fb80335..5fb5ab3 100644
72--- a/interface/VideoEncoderHost.h
73+++ b/interface/VideoEncoderHost.h
74@@ -32,12 +32,12 @@ extern "C" { // for dlsym usage
75 YamiMediaCodec::IVideoEncoder *createVideoEncoder(const char *mimeType);
76 ///brief destroy encoder
77 void releaseVideoEncoder(YamiMediaCodec::IVideoEncoder * p);
78-/** \fn void getVideoEncoderMimeTypes()
79- * \brief return the MimeTypes enabled in the current build
80-*/
81-std::vector<std::string> getVideoEncoderMimeTypes();
82
83 typedef YamiMediaCodec::IVideoEncoder *(*YamiCreateVideoEncoderFuncPtr) (const char *mimeType);
84 typedef void (*YamiReleaseVideoEncoderFuncPtr)(YamiMediaCodec::IVideoEncoder * p);
85 }
86 #endif /* VIDEO_ENCODER_HOST_H_ */
87+// \fn void getVideoEncoderMimeTypes()
88+// \brief return the MimeTypes enabled in the current build
89+//
90+std::vector<std::string> getVideoEncoderMimeTypes();
91diff --git a/interface/VideoPostProcessHost.h b/interface/VideoPostProcessHost.h
92index de046cd..f1c5ce5 100644
93--- a/interface/VideoPostProcessHost.h
94+++ b/interface/VideoPostProcessHost.h
95@@ -34,12 +34,12 @@ YamiMediaCodec::IVideoPostProcess *createVideoPostProcess(const char *mimeType);
96 * \brief destroy encoder
97 */
98 void releaseVideoPostProcess(YamiMediaCodec::IVideoPostProcess * p);
99-/** \fn void getVideoPostProcessMimeTypes()
100- * \brief return the MimeTypes enabled in the current build
101-*/
102-std::vector<std::string> getVideoPostProcessMimeTypes();
103
104 typedef YamiMediaCodec::IVideoPostProcess *(*YamiCreateVideoPostProcessFuncPtr) (const char *mimeType);
105 typedef void (*YamiReleaseVideoPostProcessFuncPtr)(YamiMediaCodec::IVideoPostProcess * p);
106 }
107 #endif /* VIDEO_POST_PROCESS_HOST_H_ */
108+// \fn void getVideoPostProcessMimeTypes()
109+// \brief return the MimeTypes enabled in the current build
110+//
111+std::vector<std::string> getVideoPostProcessMimeTypes();
112diff --git a/vpp/vaapipostprocess_host.cpp b/vpp/vaapipostprocess_host.cpp
113index cd40dea..bc06b38 100644
114--- a/vpp/vaapipostprocess_host.cpp
115+++ b/vpp/vaapipostprocess_host.cpp
116@@ -75,10 +75,9 @@ void releaseVideoPostProcess(IVideoPostProcess * p)
117 {
118 delete p;
119 }
120+} // extern "C"
121
122 std::vector<std::string> getVideoPostProcessMimeTypes()
123 {
124 return VaapiPostProcessFactory::keys();
125 }
126-
127-} // extern "C"
128--
1292.14.1
130
diff --git a/recipes-multimedia/libyami/libyami/0006-Avoid-namespace-conflicts-by-adding-explicit-using-n.patch b/recipes-multimedia/libyami/libyami/0006-Avoid-namespace-conflicts-by-adding-explicit-using-n.patch
deleted file mode 100644
index c9c74520..00000000
--- a/recipes-multimedia/libyami/libyami/0006-Avoid-namespace-conflicts-by-adding-explicit-using-n.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 27b61f5ab1b1643436f56517e4980734b4b9acca Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 18:38:05 -0700
4Subject: [PATCH 6/9] Avoid namespace conflicts by adding explicit using
5 <namespace>
6
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9Upstream-Status: Pending
10
11 decoder/vaapidecoder_h264.h | 1 +
12 decoder/vaapidecoder_h265.h | 1 +
13 2 files changed, 2 insertions(+)
14
15diff --git a/decoder/vaapidecoder_h264.h b/decoder/vaapidecoder_h264.h
16index 57e2c27..ea5c2f2 100644
17--- a/decoder/vaapidecoder_h264.h
18+++ b/decoder/vaapidecoder_h264.h
19@@ -30,6 +30,7 @@ namespace YamiMediaCodec {
20
21 class VaapiDecPictureH264;
22 class VaapiDecoderH264 : public VaapiDecoderBase {
23+using YamiMediaCodec::VaapiDecoderBase::createPicture;
24 public:
25 typedef SharedPtr<VaapiDecPictureH264> PicturePtr;
26 typedef std::vector<PicturePtr> RefSet;
27diff --git a/decoder/vaapidecoder_h265.h b/decoder/vaapidecoder_h265.h
28index f7e2303..159e25f 100644
29--- a/decoder/vaapidecoder_h265.h
30+++ b/decoder/vaapidecoder_h265.h
31@@ -38,6 +38,7 @@ namespace YamiMediaCodec {
32
33 class VaapiDecPictureH265;
34 class VaapiDecoderH265:public VaapiDecoderBase {
35+ using YamiMediaCodec::VaapiDecoderBase::createPicture;
36 typedef YamiParser::H265::SPS SPS;
37 typedef YamiParser::H265::SliceHeader SliceHeader;
38 typedef YamiParser::H265::NalUnit NalUnit;
39--
402.14.1
41
diff --git a/recipes-multimedia/libyami/libyami/0007-Delete-unused-variables.patch b/recipes-multimedia/libyami/libyami/0007-Delete-unused-variables.patch
deleted file mode 100644
index b80774c9..00000000
--- a/recipes-multimedia/libyami/libyami/0007-Delete-unused-variables.patch
+++ /dev/null
@@ -1,36 +0,0 @@
1From b982997c96e11b9c0b3cd58a31af2d0a219713a3 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 18:39:58 -0700
4Subject: [PATCH 7/9] Delete unused variables
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Pending
9
10 decoder/vaapidecoder_vp8.cpp | 8 ++++----
11 1 file changed, 4 insertions(+), 4 deletions(-)
12
13diff --git a/decoder/vaapidecoder_vp8.cpp b/decoder/vaapidecoder_vp8.cpp
14index 5fc89ec..ff5b896 100644
15--- a/decoder/vaapidecoder_vp8.cpp
16+++ b/decoder/vaapidecoder_vp8.cpp
17@@ -32,12 +32,12 @@ typedef VaapiDecoderVP8::PicturePtr PicturePtr;
18
19 // the following parameter apply to Intra-Predicted Macroblocks,
20 // $11.2 $11.4: key frame default probs
21-static const uint8_t keyFrameYModeProbs[4] = { 145, 156, 163, 128 };
22-static const uint8_t keyFrameUVModeProbs[3] = { 142, 114, 183 };
23+//static const uint8_t keyFrameYModeProbs[4] = { 145, 156, 163, 128 };
24+//static const uint8_t keyFrameUVModeProbs[3] = { 142, 114, 183 };
25
26 // $16.1: non-key frame default probs
27-static const uint8_t nonKeyFrameDefaultYModeProbs[4] = { 112, 86, 140, 37 };
28-static const uint8_t nonKeyFrameDefaultUVModeProbs[3] = { 162, 101, 204 };
29+//static const uint8_t nonKeyFrameDefaultYModeProbs[4] = { 112, 86, 140, 37 };
30+//static const uint8_t nonKeyFrameDefaultUVModeProbs[3] = { 162, 101, 204 };
31
32 static const uint32_t surfaceNumVP8 = 3;
33
34--
352.14.1
36
diff --git a/recipes-multimedia/libyami/libyami/0008-NalUnit-is-declared-in-different-namespace.patch b/recipes-multimedia/libyami/libyami/0008-NalUnit-is-declared-in-different-namespace.patch
deleted file mode 100644
index 18b98be8..00000000
--- a/recipes-multimedia/libyami/libyami/0008-NalUnit-is-declared-in-different-namespace.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From c54130511c91e457f1c5bb47729f5e3a0fc0cb91 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 18:42:28 -0700
4Subject: [PATCH 8/9] NalUnit is declared in different namespace
5
6Fixes
7vaapidecoder_h265.h:32:5: error: struct 'NalUnit' was previously declared as a class [-Werror,-Wmismatched-tags] struct NalUnit;
8
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11Upstream-Status: Pending
12
13 decoder/vaapidecoder_h265.h | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/decoder/vaapidecoder_h265.h b/decoder/vaapidecoder_h265.h
17index 159e25f..674638f 100644
18--- a/decoder/vaapidecoder_h265.h
19+++ b/decoder/vaapidecoder_h265.h
20@@ -29,7 +29,7 @@ namespace YamiParser {
21 namespace H265 {
22 struct SPS;
23 struct SliceHeader;
24- struct NalUnit;
25+ class NalUnit;
26 class Parser;
27 };
28 };
29--
302.14.1
31
diff --git a/recipes-multimedia/libyami/libyami/0009-Fix-clang-warnings.patch b/recipes-multimedia/libyami/libyami/0009-Fix-clang-warnings.patch
deleted file mode 100644
index 08ef455b..00000000
--- a/recipes-multimedia/libyami/libyami/0009-Fix-clang-warnings.patch
+++ /dev/null
@@ -1,37 +0,0 @@
1From a54dc7b6a777882f55a3f31bd97748a261db03d2 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 11 Aug 2017 18:53:06 -0700
4Subject: [PATCH 9/9] Fix clang warnings
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Pending
9
10 encoder/vaapiencoder_h264.cpp | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/encoder/vaapiencoder_h264.cpp b/encoder/vaapiencoder_h264.cpp
14index 98bc2ed..94015cb 100644
15--- a/encoder/vaapiencoder_h264.cpp
16+++ b/encoder/vaapiencoder_h264.cpp
17@@ -509,7 +509,7 @@ bit_writer_write_sps(BitWriter* bitwriter,
18 }
19 /* vcl_hrd_parameters_present_flag */
20 bitwriter->writeBits(0, 1);
21- if (nal_hrd_parameters_present_flag || 0/*vcl_hrd_parameters_present_flag*/) {
22+ if (nal_hrd_parameters_present_flag || !!(0)/*vcl_hrd_parameters_present_flag*/) {
23 /* low_delay_hrd_flag */
24 bitwriter->writeBits(0, 1);
25 }
26@@ -1889,7 +1889,7 @@ bool VaapiEncoderH264::addSliceHeaders (const PicturePtr& picture) const
27 sliceParam->num_macroblocks = curSliceMbs;
28 sliceParam->macroblock_info = VA_INVALID_ID;
29 sliceParam->slice_type = h264_get_slice_type (picture->m_type);
30- assert (sliceParam->slice_type != -1);
31+ assert ((int)sliceParam->slice_type != -1);
32 sliceParam->idr_pic_id = m_idrNum;
33 sliceParam->pic_order_cnt_lsb = picture->m_poc % m_maxPicOrderCnt;
34
35--
362.14.1
37
diff --git a/recipes-multimedia/libyami/libyami_git.bb b/recipes-multimedia/libyami/libyami_git.bb
deleted file mode 100644
index 7ff9effd..00000000
--- a/recipes-multimedia/libyami/libyami_git.bb
+++ /dev/null
@@ -1,34 +0,0 @@
1SUMMARY = "Yami is media infrastructure base on libva"
2DESCRIPTION = "Yet Another Media Infrastructure \
3light weight hardware codec library base on VA-API "
4
5HOMEPAGE = "https://github.com/intel/libyami"
6BUGTRACKER = "https://github.com/intel/libyami/issues/new"
7
8LICENSE = "Apache-2.0"
9LIC_FILES_CHKSUM = "file://LICENSE.md;md5=3b83ef96387f14655fc854ddc3c6bd57"
10
11SRC_URI = "git://github.com/intel/libyami.git;branch=apache \
12 file://0001-bitWriter.cpp-Delete-unused-CACHEBYTES.patch \
13 file://0002-typecast-index-from-size_t-to-int.patch \
14 file://0003-Add-Wno-invalid-offsetof-to-compiler-commandline.patch \
15 file://0004-Typecast-POWER32SUB2-to-uint8_t.patch \
16 file://0005-move-c-definitions-out-of-extern-C-block.patch \
17 file://0006-Avoid-namespace-conflicts-by-adding-explicit-using-n.patch \
18 file://0007-Delete-unused-variables.patch \
19 file://0008-NalUnit-is-declared-in-different-namespace.patch \
20 file://0009-Fix-clang-warnings.patch \
21"
22SRCREV = "49f32de0e537577927b98deb551e16a7fa89d892"
23S = "${WORKDIR}/git"
24PV = "1.3.0+git${SRCPV}"
25
26PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "x11", "x11", "", d)}"
27PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 libxrandr libxrender"
28
29DEPENDS = "libva"
30inherit autotools pkgconfig distro_features_check
31
32REQUIRED_DISTRO_FEATURES = "opengl"
33
34UPSTREAM_CHECK_COMMITS = "1"
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/vpl/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
new file mode 100644
index 00000000..f9a568a7
--- /dev/null
+++ b/recipes-multimedia/vpl/files/0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch
@@ -0,0 +1,25 @@
1From ff715f4c543ddabc5c90160d0ae5c5598e8e1289 Mon Sep 17 00:00:00 2001
2From: Markus Volk <f_l_k@t-online.de>
3Date: Thu, 15 Jun 2023 13:43:32 +0200
4Subject: [PATCH] vpl.pc.in: dont pass pcfiledir to cflags
5
6Signed-off-by: Markus Volk <f_l_k@t-online.de>
7
8Upstream-Status: Inappropriate [oe specific]
9---
10 libvpl/pkgconfig/vpl.pc.in | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/libvpl/pkgconfig/vpl.pc.in b/libvpl/pkgconfig/vpl.pc.in
14index aa9b158..b4e85ff 100644
15--- a/libvpl/pkgconfig/vpl.pc.in
16+++ b/libvpl/pkgconfig/vpl.pc.in
17@@ -7,6 +7,6 @@ Description: Accelerated video decode, encode, and frame processing capabilities
18 Version: @API_VERSION_MAJOR@.@API_VERSION_MINOR@
19 URL: https://github.com/intel/libvpl
20
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@
23 Libs.private: @VPL_PKGCONFIG_PRIVATE_LIBS@
24-Cflags: -I${includedir} -I${includedir}/vpl
25+Cflags: -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@ -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/vpl
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..e89a9d46
--- /dev/null
+++ b/recipes-multimedia/vpl/libvpl-tools_1.3.0.bb
@@ -0,0 +1,44 @@
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"
17S = "${WORKDIR}/git"
18
19inherit cmake
20DEPENDS += "libva libvpl pkgconfig-native"
21
22PACKAGECONFIG ??= "tools"
23PACKAGECONFIG[tools] = "-DENABLE_WAYLAND=ON, -DENABLE_WAYLAND=OFF, wayland wayland-native wayland-protocols"
24
25do_install:append() {
26 mkdir -p ${D}${datadir}/VPL/samples
27 mv ${D}${bindir}/sample_* ${D}${datadir}/VPL/samples
28 mv ${D}${bindir}/metrics_monitor ${D}${datadir}/VPL/samples
29}
30
31COMPATIBLE_HOST = '(x86_64).*-linux'
32
33FILES_SOLIBSDEV = ""
34
35FILES:${PN} += " ${datadir}/VPL/samples \
36 ${libdir}/libcttmetrics.so \
37 ${libdir}/vpl-tools/libvpl_wayland.* \
38 "
39
40FILES:${PN}-dev += "${libdir}/vpl-tools/libvpl_wayland.so \
41 "
42
43FILES:${PN}-doc += " ${datadir}/vpl-tools \
44 "
diff --git a/recipes-multimedia/vpl/libvpl_2.14.0.bb b/recipes-multimedia/vpl/libvpl_2.14.0.bb
new file mode 100644
index 00000000..d52ca076
--- /dev/null
+++ b/recipes-multimedia/vpl/libvpl_2.14.0.bb
@@ -0,0 +1,44 @@
1SUMMARY = "Intel Video Processing Library"
2DESCRIPTION = "Intel Video Processing Library (VPL) provides \
3a single video processing API for encode, decode, and video processing \
4that works across a wide range of accelerators."
5
6HOMEPAGE = "https://github.com/intel/libvpl"
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.git;protocol=https;branch=main \
12 file://0001-vpl.pc.in-dont-pass-pcfiledir-to-cflags.patch \
13 "
14SRCREV = "025d43d086a3e663184cb49febe86152bf05409f"
15S = "${WORKDIR}/git"
16
17inherit cmake
18DEPENDS += "libva pkgconfig-native"
19
20PACKAGECONFIG ??= "tools"
21PACKAGECONFIG[tools] = "-DBUILD_TOOLS=ON, -DBUILD_TOOLS=OFF, wayland wayland-native wayland-protocols"
22
23EXTRA_OECMAKE = "-DBUILD_EXAMPLES=ON"
24
25do_install:append() {
26 mkdir -p ${D}${datadir}/VPL/samples
27 mv ${D}${bindir}/hello-* ${D}${datadir}/VPL/samples
28}
29
30COMPATIBLE_HOST = '(x86_64).*-linux'
31
32PACKAGES =+ "${PN}-examples"
33
34RREPLACES:${PN} = "onevpl"
35RCONFLICTS:${PN} = "onevpl"
36
37FILES:${PN}-examples = "${datadir}/vpl \
38 "
39
40FILES_SOLIBSDEV = ""
41FILES:${PN}-dev += "${libdir}/libvpl.so"
42
43FILES:${PN} += " ${datadir}/VPL/samples \
44 "
diff --git a/recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb b/recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb
new file mode 100644
index 00000000..d182ce53
--- /dev/null
+++ b/recipes-multimedia/vpl/vpl-gpu-rt_25.1.4.bb
@@ -0,0 +1,33 @@
1SUMMARY = "Intel(R) oneVPL runtime for Intel GPU accelerated media processing"
2DESCRIPTION = "Intel(R) oneVPL runtime provides an runtime to access hardware-accelerated \
3video decode, encode and filtering on Intel® graphics."
4
5HOMEPAGE = "https://github.com/intel/vpl-gpu-rt"
6BUGTRACKER = "https://github.com/intel/vpl-gpu-rt/issues"
7
8LICENSE = "MIT"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=eb8cb45b9b57dbaa9fcc9adc4230202b"
10
11PE = "1"
12
13# Only for 64 bit
14COMPATIBLE_HOST = '(x86_64).*-linux'
15COMPATIBLE_HOST:x86-x32 = "null"
16
17DEPENDS += "libdrm libva intel-media-driver libvpl pkgconfig-native"
18RDEPENDS:${PN} += "intel-media-driver"
19
20SRC_URI = "git://github.com/intel/vpl-gpu-rt.git;protocol=https;nobranch=1;lfs=0 \
21 "
22
23SRCREV = "c65990e456acf901597a76b22407232679152547"
24S = "${WORKDIR}/git"
25
26FILES:${PN} += " \
27 ${libdir}/libmfx-gen/enctools.so \
28 "
29
30inherit cmake
31
32RREPLACES:${PN} = "onevpl-intel-gpu"
33RCONFLICTS:${PN} = "onevpl-intel-gpu"
diff --git a/recipes-oneapi/crypto/intel-crypto-mb/0001-CMakeLists.txt-exclude-host-system-headers.patch b/recipes-oneapi/crypto/intel-crypto-mb/0001-CMakeLists.txt-exclude-host-system-headers.patch
new file mode 100644
index 00000000..58ed1c9a
--- /dev/null
+++ b/recipes-oneapi/crypto/intel-crypto-mb/0001-CMakeLists.txt-exclude-host-system-headers.patch
@@ -0,0 +1,27 @@
1From efedbf9080c19241c2aa9ee7ba901245d38c8fa2 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Mon, 7 Mar 2022 16:44:24 +0800
4Subject: [PATCH 1/2] CMakeLists.txt: exclude host system headers
5
6Upstream-Status: Inappropriate
7
8Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
9---
10 sources/ippcp/crypto_mb/CMakeLists.txt | 1 -
11 1 file changed, 1 deletion(-)
12
13diff --git a/sources/ippcp/crypto_mb/CMakeLists.txt b/sources/ippcp/crypto_mb/CMakeLists.txt
14index c4cc82a..4094f34 100644
15--- a/sources/ippcp/crypto_mb/CMakeLists.txt
16+++ b/sources/ippcp/crypto_mb/CMakeLists.txt
17@@ -82,7 +82,6 @@ include_directories(
18 ${CRYPTO_MB_INCLUDE_DIR}
19 ${OPENSSL_INCLUDE_DIR}
20 $<$<C_COMPILER_ID:Intel>:$ENV{ROOT}/compiler/include $ENV{ROOT}/compiler/include/icc>
21- $<$<NOT:$<C_COMPILER_ID:Intel>>:${CMAKE_SYSTEM_INCLUDE_PATH}>
22 $<$<OR:$<C_COMPILER_ID:Intel>,$<BOOL:${MSVC_IDE}>>:$ENV{INCLUDE}>
23 )
24
25--
262.17.1
27
diff --git a/recipes-oneapi/crypto/intel-crypto-mb/0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch b/recipes-oneapi/crypto/intel-crypto-mb/0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch
new file mode 100644
index 00000000..c47c8de5
--- /dev/null
+++ b/recipes-oneapi/crypto/intel-crypto-mb/0001-crypto-mb-Make-sure-libs-are-installed-correctly.patch
@@ -0,0 +1,42 @@
1From 3b7b4eca54aa8d851e37f60c74e4a027fa7b21f2 Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Wed, 14 Jun 2023 13:18:45 +0800
4Subject: [PATCH] crypto-mb: Make sure libs are installed correctly
5
6Dont assume that "lib" is always the correct destination. This fixes
7multilib builds when libdir != /usr/lib.
8
9Upstream-Status: Pending
10
11Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
12---
13 sources/ippcp/crypto_mb/src/CMakeLists.txt | 6 +++---
14 1 file changed, 3 insertions(+), 3 deletions(-)
15
16diff --git a/sources/ippcp/crypto_mb/src/CMakeLists.txt b/sources/ippcp/crypto_mb/src/CMakeLists.txt
17index c9cad06..31f52bd 100644
18--- a/sources/ippcp/crypto_mb/src/CMakeLists.txt
19+++ b/sources/ippcp/crypto_mb/src/CMakeLists.txt
20@@ -123,8 +123,8 @@ endif(DYNAMIC_LIB OR MB_STANDALONE)
21 # Installation of the shared library
22 if (MB_STANDALONE) # standalone crypto_mb's cmake run
23 install(TARGETS ${MB_DYN_LIB_TARGET}
24- LIBRARY DESTINATION "lib"
25- RUNTIME DESTINATION "lib"
26+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
27+ RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
28 PUBLIC_HEADER DESTINATION "include/crypto_mb")
29 elseif (DYNAMIC_LIB) # build from ippcp's cmake
30 install(TARGETS ${MB_DYN_LIB_TARGET}
31@@ -154,7 +154,7 @@ endif()
32 # Static lib installation
33 if(MB_STANDALONE)
34 install(TARGETS ${MB_STATIC_LIB_TARGET}
35- ARCHIVE DESTINATION "lib"
36+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
37 PUBLIC_HEADER DESTINATION "include/crypto_mb")
38 else()
39 install(TARGETS ${MB_STATIC_LIB_TARGET}
40--
412.37.3
42
diff --git a/recipes-oneapi/crypto/intel-crypto-mb/0002-cmake-exclude-Yocto-build-flags.patch b/recipes-oneapi/crypto/intel-crypto-mb/0002-cmake-exclude-Yocto-build-flags.patch
new file mode 100644
index 00000000..62b56ea2
--- /dev/null
+++ b/recipes-oneapi/crypto/intel-crypto-mb/0002-cmake-exclude-Yocto-build-flags.patch
@@ -0,0 +1,45 @@
1From b4549bb765d279b5ba042c6340e1dd69d0890b64 Mon Sep 17 00:00:00 2001
2From: Naveen Saini <naveen.kumar.saini@intel.com>
3Date: Thu, 10 Mar 2022 14:30:01 +0800
4Subject: [PATCH 2/2] cmake: exclude Yocto build flags
5
6Ipp-crypto has its own set of flags and -march values,
7which causes conflict with default -march=nehalem in gcc
8
9Upstream-Status: Inappropriate
10
11Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
12---
13 sources/ippcp/crypto_mb/src/CMakeLists.txt | 2 +-
14 sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake | 2 +-
15 2 files changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/sources/ippcp/crypto_mb/src/CMakeLists.txt b/sources/ippcp/crypto_mb/src/CMakeLists.txt
18index 1ca1a8c..5284d62 100644
19--- a/sources/ippcp/crypto_mb/src/CMakeLists.txt
20+++ b/sources/ippcp/crypto_mb/src/CMakeLists.txt
21@@ -81,7 +81,7 @@ endif()
22 set(MB_LIB_TARGET ${MB_DYN_LIB_TARGET})
23
24 set_source_files_properties(${CRYPTO_MB_SOURCES} PROPERTIES COMPILE_DEFINITIONS "${AVX512_LIBRARY_DEFINES}"
25- COMPILE_FLAGS "${AVX512_CFLAGS} ${CMAKE_ASM_FLAGS} ${CMAKE_C_FLAGS_SECURITY}")
26+ COMPILE_FLAGS "${AVX512_CFLAGS} ${CMAKE_C_FLAGS_SECURITY}")
27
28 # Don't specify architectural flags for the assembler for this sources, because of the bug in Intel® C Compiler under MacOS: error: invalid instruction mnemonic 'vkmovb'
29 # The bug has been fixed since version 2021.3. This is a workaround to support older versions of Intel® C Compiler.
30diff --git a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
31index a2abeeb..aadd6e2 100644
32--- a/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
33+++ b/sources/ippcp/crypto_mb/src/cmake/linux/GNU.cmake
34@@ -58,7 +58,7 @@ set(LINK_FLAGS_DYNAMIC "${LINK_FLAGS_DYNAMIC} ${CRYPTO_MB_SOURCES_DIR}/cmake/dll
35 # Compiler flags
36
37 # Tells the compiler to align functions and loops
38-set(CMAKE_C_FLAGS " -falign-functions=32 -falign-loops=32")
39+set(CMAKE_C_FLAGS " -falign-functions=32 -falign-loops=32 ${TOOLCHAIN_OPTIONS}")
40 # Ensures that compilation takes place in a freestanding environment
41 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffreestanding")
42
43--
442.17.1
45
diff --git a/recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb b/recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb
new file mode 100644
index 00000000..61383f82
--- /dev/null
+++ b/recipes-oneapi/crypto/intel-crypto-mb_2021.12.1.bb
@@ -0,0 +1,28 @@
1SUMMARY = "Crypto Multi-buffer Library"
2DESCRIPTION = "Intel® Integrated Performance Primitives (Intel® IPP) Cryptography \
3is a secure, fast and lightweight library of building blocks for cryptography, \
4highly-optimized for various Intel® CPUs."
5HOMEPAGE = "https://github.com/intel/ipp-crypto"
6
7LICENSE = "Apache-2.0"
8
9LIC_FILES_CHKSUM = "file://../../../LICENSE;md5=d94a5b4dbbc5c6a0c2ce95ab337df6c4"
10
11IPP_BRANCH = "ipp-crypto_${@'_'.join(d.getVar('PV').rsplit('.')[-3:])}"
12
13SRC_URI = "git://github.com/intel/ipp-crypto;protocol=https;branch=${IPP_BRANCH} \
14 file://0001-CMakeLists.txt-exclude-host-system-headers.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 \
17 "
18SRCREV = "7d6ac349507258f49d00909df33d5dea4ff77f39"
19
20S = "${WORKDIR}/git/sources/ippcp/crypto_mb"
21
22DEPENDS = "openssl"
23
24inherit cmake pkgconfig
25COMPATIBLE_HOST = '(x86_64).*-linux'
26
27EXTRA_OECMAKE += " -DARCH=intel64"
28EXTRA_OECMAKE += " -DTOOLCHAIN_OPTIONS='${TOOLCHAIN_OPTIONS}'"
diff --git a/recipes-oneapi/onedpl/onedpl_2022.8.0.bb b/recipes-oneapi/onedpl/onedpl_2022.8.0.bb
new file mode 100644
index 00000000..7e3f309f
--- /dev/null
+++ b/recipes-oneapi/onedpl/onedpl_2022.8.0.bb
@@ -0,0 +1,26 @@
1SUMMARY = "oneAPI DPC++ Library (oneDPL)"
2DESCRIPTION = "The oneAPI DPC++ Library (oneDPL) aims to work with the \
3oneAPI DPC++ Compiler to provide high-productivity APIs to developers, \
4which can minimize DPC++ programming efforts across devices for high \
5performance parallel applications."
6HOMEPAGE = "https://github.com/oneapi-src/oneDPL"
7
8LICENSE = "Apache-2.0-with-LLVM-exception"
9LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2e982d844baa4df1c80de75470e0c5cb \
10 file://third-party-programs.txt;md5=409cd5c825a23043b6bb347861d34b35"
11
12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/uxlfoundation/oneDPL.git;protocol=https;branch=release/2022.8.0 \
15 "
16SRCREV = "89d8d8befd4da2cb52f3724f668d17d7e39d42cf"
17
18do_compile[noexec] = "1"
19do_configure[noexec] = "1"
20
21do_install() {
22 install -d -m 755 ${D}${includedir}/onedpl
23 cp -r ${S}/include/* ${D}${includedir}/onedpl
24}
25
26UPSTREAM_CHECK_GITTAGREGEX = "^oneDPL-(?P<pver>(\d+(\.\d+)+))-release$"
diff --git a/recipes-oneapi/setup-oneapi-env/files/intel-oneapi-runtime.conf b/recipes-oneapi/setup-oneapi-env/files/intel-oneapi-runtime.conf
new file mode 100644
index 00000000..5faf9854
--- /dev/null
+++ b/recipes-oneapi/setup-oneapi-env/files/intel-oneapi-runtime.conf
@@ -0,0 +1,4 @@
1/opt/intel/oneapi/lib
2/opt/intel/oneapi/lib/intel64
3/opt/intel/oneapi/lib/ia32
4/opt/intel/oneapi/lib/emu
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
new file mode 100644
index 00000000..a1762a16
--- /dev/null
+++ b/recipes-oneapi/setup-oneapi-env/setup-intel-oneapi-env_2023.0.0-25370.bb
@@ -0,0 +1,23 @@
1SUMMARY = "Intel® oneAPI runtime libraries environment set up"
2DESCRIPTION = "Recipe to set up the environment for Intel® oneAPI runtime libraries \
3via configuration file in ld.so.conf.d directory."
4
5LICENSE = "EULA"
6LIC_FILES_CHKSUM = "file://${CUSTOM_LICENSES_PATH}/EULA;md5=7bfc91523de2e84e7131d0eacf2827d4"
7
8SRC_URI = "file://intel-oneapi-runtime.conf"
9
10S = "${WORKDIR}/sources"
11UNPACKDIR = "${S}"
12
13do_install() {
14 mkdir -p ${D}${sysconfdir}/ld.so.conf.d/
15 install -m 644 ${S}/intel-oneapi-runtime.conf ${D}${sysconfdir}/ld.so.conf.d/
16}
17
18pkg_postinst_ontarget:${PN}() {
19if [ x"$D" = "x" ]; then
20 if [ -x /sbin/ldconfig ]; then /sbin/ldconfig ; fi
21fi
22}
23BBCLASSEXTEND = "native nativesdk"
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 e03e7b47..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.1.bb b/recipes-support/isa-l/isa-l_2.31.1.bb
new file mode 100644
index 00000000..78850579
--- /dev/null
+++ b/recipes-support/isa-l/isa-l_2.31.1.bb
@@ -0,0 +1,19 @@
1SUMMARY = "Intelligent Storage Acceleration Library"
2DESCRIPTION = "ISA-L is a collection of optimized low-level functions \
3targeting storage applications."
4LICENSE = "BSD-3-Clause"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=2476688d0948d4a3f7c69473a603540d"
6SECTION = "lib"
7
8inherit autotools pkgconfig
9
10S = "${WORKDIR}/git"
11SRCREV = "c387163fcbca62701d646149564c550c78a4f985"
12SRC_URI = "git://github.com/intel/isa-l.git;branch=master;protocol=https"
13
14DEPENDS = "nasm-native"
15AS[unexport] = "1"
16
17TARGET_CC_ARCH += "${LDFLAGS}"
18
19COMPATIBLE_HOST = '(x86_64).*-linux'
diff --git a/recipes-support/libipt/libipt_2.1.2.bb b/recipes-support/libipt/libipt_2.1.2.bb
new file mode 100644
index 00000000..edc9c371
--- /dev/null
+++ b/recipes-support/libipt/libipt_2.1.2.bb
@@ -0,0 +1,34 @@
1SUMMARY = "Intel(R) Processor Trace Decoder Library"
2DESCRIPTION = "The Intel Processor Trace (Intel PT) Decoder Library is Intel's \
3reference implementation for decoding Intel PT. It can be used as a standalone \
4library or it can be partially or fully integrated into your tool."
5HOMEPAGE = "https://github.com/intel/libipt"
6
7LICENSE = "BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=491799fd9431e57ad52cb0ef3497afce"
9
10inherit pkgconfig cmake
11
12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/intel/libipt.git;protocol=https;branch=stable/v2.1"
15
16SRCREV = "ffc548e5fbc2fa3e9795d4593f861e1df99cf906"
17
18EXTRA_OECMAKE += " \
19 -DPTDUMP=ON \
20 -DPTTC=ON \
21 -DPTSEG=ON \
22 -DCMAKE_SKIP_RPATH=ON \
23 "
24
25do_install:append() {
26 install -d ${D}${bindir}/libipt
27 install -d ${D}${bindir}/libipt/tests
28
29 cp -r ${B}/bin/* ${D}${bindir}/libipt/
30 cp -r ${S}/test/src/* ${D}${bindir}/libipt/tests
31}
32
33FILES:${PN}-test = "${bindir}"
34PACKAGES =+ "${PN}-test"
diff --git a/recipes-support/sbsigntool/sbsigntool-native_git.bb b/recipes-support/sbsigntool/sbsigntool-native_git.bb
deleted file mode 100644
index 430a6a78..00000000
--- a/recipes-support/sbsigntool/sbsigntool-native_git.bb
+++ /dev/null
@@ -1,77 +0,0 @@
1DESCRIPTION = "Utility for signing and verifying files for UEFI Secure Boot"
2LICENSE = "GPLv3 & LGPL-2.1 & LGPL-3.0 & 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 \
23 git://github.com/rustyrussell/ccan.git;protocol=https;destsuffix=git/lib/ccan.git;name=ccan \
24 "
25
26SRCREV_sbsigntools ?= "efbb550858e7bd3f43e64228d22aea440ef6a14d"
27SRCREV_ccan ?= "b1f28e17227f2320d07fe052a8a48942fe17caa5"
28SRCREV_FORMAT = "sbsigntools_ccan"
29
30DEPENDS = "binutils-native gnu-efi-native help2man-native openssl10-native util-linux-native"
31
32PV = "0.8-git${SRCPV}"
33
34S = "${WORKDIR}/git"
35
36inherit native autotools pkgconfig
37
38do_configure_prepend() {
39 cd ${S}
40
41 if [ ! -e lib/ccan ]; then
42
43 # Use empty SCOREDIR because 'make scores' is not run.
44 # The default setting depends on (non-whitelisted) host tools.
45 sed -i -e 's#^\(SCOREDIR=\).*#\1#' lib/ccan.git/Makefile
46
47 lib/ccan.git/tools/create-ccan-tree \
48 --build-type=automake lib/ccan \
49 talloc read_write_all build_assert array_size endian
50 fi
51
52 # Create generatable docs from git
53 (
54 echo "Authors of sbsigntool:"
55 echo
56 git log --format='%an' | sort -u | sed 's,^,\t,'
57 ) > AUTHORS
58
59 # Generate simple ChangeLog
60 git log --date=short --format='%ad %t %an <%ae>%n%n * %s%n' > ChangeLog
61
62 cd ${B}
63}
64
65def efi_arch(d):
66 import re
67 harch = d.getVar("HOST_ARCH")
68 if re.match("i[3456789]86", harch):
69 return "ia32"
70 return harch
71
72EXTRA_OEMAKE = "\
73 INCLUDES+='-I${S}/lib/ccan.git/ \
74 -I${STAGING_INCDIR_NATIVE}/efi \
75 -I${STAGING_INCDIR_NATIVE} \
76 -I${STAGING_INCDIR_NATIVE}/efi/${@efi_arch(d)}' \
77 "
diff --git a/wic/grub-bootdisk-microcode.wks b/wic/grub-bootdisk-microcode.wks.in
index 7eda3766..7dc66f98 100644
--- a/wic/grub-bootdisk-microcode.wks
+++ b/wic/grub-bootdisk-microcode.wks.in
@@ -9,4 +9,4 @@ part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024
9 9
10part swap --ondisk sda --size 44 --label swap1 --fstype=swap --use-uuid 10part swap --ondisk sda --size 44 --label swap1 --fstype=swap --use-uuid
11 11
12bootloader --ptable gpt --timeout=5 --append="rootwait rootfstype=ext4 console=ttyS0,115200 console=tty0" 12bootloader --ptable gpt --timeout=5 --append=" rootfstype=ext4 "
diff --git a/wic/image-installer.wks.in b/wic/image-installer.wks.in
new file mode 100644
index 00000000..933e8d85
--- /dev/null
+++ b/wic/image-installer.wks.in
@@ -0,0 +1,8 @@
1# create an installer disk image
2# populate content to install using IMAGE_BOOT_FILES
3
4part /boot --source bootimg-efi --sourceparams="loader=${EFI_PROVIDER},title=install,label=install-efi,initrd=microcode.cpio;${INITRD_IMAGE_LIVE}-${MACHINE}.${INITRAMFS_FSTYPES}" --ondisk sda --label install --active --align 1024 --use-uuid
5
6part / --source bootimg-partition --ondisk sda --fstype=ext4 --label image --use-uuid --align 1024
7
8bootloader --ptable gpt --timeout=5 --append=" rootwait "
diff --git a/wic/systemd-bootdisk-microcode.wks b/wic/systemd-bootdisk-microcode.wks.in
index c171fd8e..925c1fa3 100644
--- a/wic/systemd-bootdisk-microcode.wks
+++ b/wic/systemd-bootdisk-microcode.wks.in
@@ -10,4 +10,4 @@ part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024
10 10
11part swap --ondisk sda --size 44 --label swap1 --fstype=swap --use-uuid 11part swap --ondisk sda --size 44 --label swap1 --fstype=swap --use-uuid
12 12
13bootloader --ptable gpt --timeout=5 --append="rootwait rootfstype=ext4 console=ttyS0,115200 console=tty0" 13bootloader --ptable gpt --timeout=5 --append=" rootfstype=ext4 "