Due to the variables rename in the scope of inclusive language, the
layer is not compatible with older versions. This change drops all
versions but kirkstone from LAYERSERIES_COMPAT.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Build 5.10 with poky-altcfg as kenrel 5.4 support is going to drop
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Instead of zlib-intel from this layer, use zlib from oe-core by default
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
The initial version of the recipe for Intel OneAPI IPP library.
IPP is an extensive library of ready-to-use, domain-specific functions
that are highly optimized for diverse Intel architectures.
Signed-off-by: Mariia Vtiurina <mariia.vtiurina@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Building with oe-core gatesgarth is no longer supported. Remove from
LAYERSERIES_COMPAT and remove the LLVM 11 patches as well.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Based on LLVMVERSION, select opencl-clang version
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Added logic to make sure, it does not break with old releases.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Some of these were missed when using the script and were noticed when
building intel-skylake-64 and tiny images which had started failing.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Mark the layer as compatible with honister as well now that OE-Core
has switched to using the new override syntax in master branch.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Don't pass show-cursor as it's no longer a valid option. We pass the
correct show-cursor=on in runqemu so remove it from here.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
It does not provide any essential dependencies.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Intel® oneVPL GPU Runtime provides a plain C API to access
hardware-accelerated video decode, encode and filtering on Intel®
graphics hardware platforms. GPU Runtime is successor for Intel Media
SDK.
Ref:
https://github.com/oneapi-src/oneVPL-intel-gpu
Signed-off-by: Yew, Chang Ching <chang.ching.yew@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
The oneAPI Video Processing Library (oneVPL) provides a single
video processing API for encode, decode, and video processing
that works across a wide range of accelerators.
This repository contains the following components of oneVPL:
* Copies of the oneVPL Specification API header files
* oneVPL dispatcher
* Examples demonstrating API usage
* oneVPL command line tools
Ref:
https://github.com/oneapi-src/oneVPL
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Build opencl-clang with llvm-12 and point to latest from ocl-open-120
branch.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
We'd still like to remain compatible with dunfell and gatesgarth core as well.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
thermald recipe moved to dynamic layer due to meta-oe
dependency.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
media-driver is the newer and supported driver and should be used
instead. Supported platforms list is updated with each release in the
notes available here:
https://github.com/intel/media-driver/releases
Old platforms that need the old driver should override or extend
MACHINE_HWCODECS.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Point to latest for llvm 11 branch as there's no official release yet.
And, pick the version of opencl-clang based on LLVMVERSION.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
We need a later version of libva than what is available in oe-core for
the media components.
Create our own copy of the recipe and include it only when someone has
included one of meta-intel MACHINEs.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
We need a later version of libva than what is available in oe-core for
the media components.
Create our own copy of the recipe and include it only when someone has
included one of meta-intel MACHINEs.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
libva-utils in oe-core moved to latest release, so no need
to carry in meta-intel anymore.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
libva in oe-core moved to latest release, so no need to
carry in meta-intel anymore.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
as meta-intel drop support for 4.19 kernel, this bbappend are no longer
required.
reverts commit 108c6938a9.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Class 'distro_features_check' has moved to 'features_check', which
does not allow dunfell and latest releases to build against zeus
release.
Inherit class based on LAYERSERIES_CORENAMES.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
opencl-clang project release branches links to
different LLVM versions. So, in order to use latest igc version
with both clang 10.x and 9.x, added seprated recipes.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Make sure that we use the upgraded version of libva-utils
only when using MACHINE value from meta-intel.
For all other cases, libva-utils from oe-core should be used.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Make sure that we use the upgraded version of libva
only when using MACHINE value from meta-intel.
For all other cases, libva from oe-core should be used.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Use skylake-client instead of legacy kvm64 for intel-skylake-64 MACHINE.
Also helps prevent problems when booting up using KVM in QEMU.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
And also mark 4.19 as the kernel to be built when using poky-altcfg.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
media-driver is recommended to be used for BDW/SKL and above instead of
intel-vaapi-driver. Include it by default along with Media SDK codecs.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This is a check to avoid loading gma500 module on certain older hardware
using 32 bit BSP where gma was claiming ownership of graphics when it
shouldn't have.
The platforms for which this was added aren't supported anymore so
remove.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Model Optimizer is a cross-platform command-line tool that facilitates
the transition between the training and deployment environment,
performs static model analysis, and adjusts deep learning models for
optimal execution on end-point target devices.
For more details, see:
https://software.intel.com/en-us/openvino-toolkit/deep-learning-cv
Since the recipe requires bits from meta-python, move this to the
dynamic layers section and add meta-python to BBFILES_DYNAMIC.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Mark 4.14 (it should later be changed to 4.19 after the next LTS has been
merged) as the kernel to be built when using poky-altcfg. It'll help build
and test both the supported kernels.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
The skylake tune introduced on 04510bfa
Currently disables qemu-usermode by default, due to the lack
of support from QEMU to several of the Intel instruction set
extensions introduced within the few latest generations of
CPU architectures (e.g. QEMU does not support avx2)
While there is a good reason to perform the removal of qemu-usermode
from MACHINE_FEATURES, there are several components within the
build system that rely on it for proper compilation and behavior,
for example anything that uses gobject data introspection or even
the components like the chromium web browser require to run a QEMU
for the target architecture to build successfully.
There is no reason why we can't have those components built without
sacrificing the cpu (most) optimizations.
The process I followed on meta-chromebook to enable an optimized build
and whats being upstreamed by this patch is that by doing some
reverse engineering, I was able to figure out which instruction
set extensions are not compatible with QEMU Skylake-Client, by
performing a bit gcc magic from inside QEMU (target) to get the
available optimizations for the native architecture (which is
actually our target in this case).
These are all (not surprisingly) the avx2 extensions, listed as
follows:
-mno-avx
-mno-avx2
-mno-avx512f
-mno-avx512er
-mno-avx512cd
-mno-avx512pf
-mno-avx512dq
-mno-avx512bw
-mno-avx512vl
-mno-avx512ifma
-mno-avx512vbmi
-mno-avx512vbmi2
-mno-avx512vnni
-mno-avx512bitalg
Specifically disabling these manually (for now), allows us to build an
optimized system for the skylake/skylake based architectures (e.g. KabyLake)
while keeping the capability of using qemu-usermode, as a side note GCC
does show more unavailable optimization tunes, (hence why there might be
some warnings), but getting rid of these specifically seems enough to make
it run happily in qemu-usermode.
Basically the MACHINE_FEATURES variable is able to dictate how we will tune
the build for our device, if qemu-usermode is present, TUNE_CCARGS will
expand as follows:
TUNE_CCARGS=" -m64 -march=skylake -mtune=skylake -mno-avx -mno-avx2
-mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-avx512dq
-mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-avx512vbmi2
-mno-avx512vnni -mno-avx512bitalg -mfpmath=sse"
Whats this means is that the build will be tuned for skylake architectures,
enabling all possible extensions, (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED,
ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC and XSAVES) minus the ones QEMU is unable
to run, which will result in an illegal instruction error, notice the tune is
kept as skylake.
Whilst, if qemu-usermode is not found on MACHINE_FEATURES, TUNE_CCARGS will
expand to:
TUNE_CCARGS=" -m64 -march=skylake -mtune=generic -mavx2 -mfpmath=sse"
Which is exactly what its set to with the current tune, so this patch should
be harmless, and only extend current functionality, we will still keep
qemu-usermode disabled by default (hence enabling avx2) but the user would
have the capability to decide how the skylake tune will be handled.
As the GCC manual states, we should really try to avoid using mtune=generic
when possible, and this patch allows us to do so [1].
This patch also addresses a problem on which the current skylake tune includes
tune-core2.inc instead of tune-corei7.inc to get the list of AVAILTUNES
and PACKAGE_EXTRA_ARCHS.
Right now, AVAILTUNES are set as follows:
AVAILTUNES=" x86 x86-64 x86-64-x32 i586 i686 core2-32 core2-64 core2-64-x32
skylake-64"
Where the proper set should be (after this patch):
AVAILTUNES=" x86 x86-64 x86-64-x32 i586 i686 core2-32 core2-64 core2-64-x32
corei7-32 corei7-64 corei7-64-x32 skylake-64"
When (if), QEMU gains support for the AVX2 instruction set extensions these
can be easily removed to provide full support for qemu-usermode.
[1] https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gcc/x86-Options.html
Signed-off-by: Alejandro Enedino Hernandez Samaniego <aehs29@gmail.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Add 64-bit new machine (intel-skylake-64) with -march=skylake
and avx2 instruction-set set up.
We do see a qemu-usermode failure at build time, on setup of
avx2 instruction-set as QEMU does not support AVX instruction
set.
Check this:
https://bugs.launchpad.net/qemu/+bug/1818075
So to bypass this issue disabling qemu-usermode for intel-skylake-64
machine.
Due to above limitation and in order to not affecting existing
machines, this new machine is being proposed to add.
A quick performance comparision between intel-corei7-64 vs intel-skylake-64 machines
Measurements are in time, taken by the benchmark tests. Less is better.
Test/Benchmark intel-corei7-64 intel-skylake-64
(1) CppPerformanceBenchmarks (Test: Math Library)
(1st) 5m 15.70s 4m 36.39s
(2nd) 5m 16.37s 4m 36.51s
(3rd) 5m 15.54s 4m 37.80s
CppPerformanceBenchmarks is a set of C++ compiler performance benchmarks.
(2) AOBench
(1st) 0m 35.07s 0m 28.74s
(2nd) 0m 34.90s 0m 28.72s
(3rd) 0m 34.85s 0m 28.89s
AOBench is a lightweight ambient occlusion renderer, written in C. The
test profile is using a size of 2048 x 2048.
(3) C-Ray
(1st) 320 seconds 232 seconds
(2nd) 320 seconds 232 seconds
(3rd) 321 seconds 232 seconds
C-Ray, a simple raytracer designed to test the floating-point CPU performance.
For this patch, 'bitbake world' gets successfully built with latest poky master.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
We include the firmware as part of initramfs image that is used for
live images. Make sure that we include this module for others as well.
Also include the kernel module for all images instead of relying on
"linux-modules" using MACHINE_EXTRA_RRECOMMENDS. Use
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS instead to pull in i915 module so it
works for all images based on packagegroup-core-boot.
Fixes [YOCTO #13446]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
mediasdk & media-driver doesn't support building for x32.
Instead of patching makefile to build for x32 and risk runtime
failures, do not include in x32 build.
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This layer adds zlib-intel, which PROVIDES zlib. If meta-intel is added to a build but a meta-intel MACHINE isn't used then bitbake will warn that there are multiple candidates for zlib:
NOTE: Multiple providers are available for zlib-native (zlib-native, zlib-intel-native)
Consider defining a PREFERRED_PROVIDER entry to match zlib-native
NOTE: Multiple providers are available for zlib (zlib, zlib-intel)
Consider defining a PREFERRED_PROVIDER entry to match zlib
Silence these warnings by adding PREFERRED_PROVIDER defaults in layer.conf.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
It adds generic recipe for libXCam for extended camera feature, but not limited
in camera. It focuses on image quality improvement and video analysis.
Signed-off-by: Ankit Navik <ankit.tarot@gmail.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
media-driver is recommended to be used for BDW/SKL and above instead of
intel-vaapi-driver. Include it by default along with Media SDK codecs.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This is a new release of Local Manageability Service.
This open-source release deprecates unsupported lms7 and lms8.
This recipe depends on ACE and MeTee library recipes.
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Common clang is a thin wrapper library around clang. Common clang has
OpenCL-oriented API and is capable to compile OpenCL C kernels to SPIR-V
modules.
This adds a bbappend to clang recipe from meta-clang to build the
necessary components and moves it to dynamic layers so it's built only
when clang-layer is included.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Don't change native or nativesdk so that builds using both
meta-intel and other machines can share native sstate.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Rename the systemd and grub-efi .wks files to .wks.in, and replace all 'append'
entries apart from rootfstype (which is specific to the wks file) with
${APPEND}, so the values of APPEND from the BSP and user is respected.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Add generic recipe for Intel(R) Math Kernel Library for Deep Neural
Networks. The library accelerates deep-learning applications and
frameworks on Intel architecture.
Signed-off-by: Ankit Navik <ankit.tarot@gmail.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Intel(R) Media SDK provides an API to access hardware-accelerated
video decode, encode and filtering on Intel® platforms with integrated
graphics.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Hardware accelerated video driver that supports Intel(R) HD Graphics
starting from Broadwell. Please see for details:
https://01.org/intel-media-for-linux
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
It provides buffer management for Intel(R) Graphics Compute Runtime
for OpenCL(TM) and the Intel(R) Media Driver for VAAPI.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Looks for the wrong device node, startup script fails among other
issues and as a result, doesn't work.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Include intel vaapi driver directly as part of hwcodecs instead of going
indirectly through a separate recipe.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
It's not being maintained anymore and the scripts have not been kept in
sync with upstream for quite some time.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
This adds both intel-core2-32 and intel-corei7-64 as the COMPATIBLE_MACHINE
for qat17 package.
Signed-off-by: Tan, Raymond <raymond.tan@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
"atm" wasn't a real target and breaks the dpdk build now that the
TARGET_MACHINE selection is fixed. Just allow it to default since that's
what it effectively got before.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
This allows early boot microcode updates by default.
Since microcode is needed, we also add intel-microcode to
WKS_FILE_DEPENDS.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
The code hasn't been touched for over 4 years. Its also unlikely to have
been used much if at all considering our previous lack of EFI boot
partition support.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
OLD_XSERVER_X86_EXT was added to support emgd drivers that needed X server
older than 1.13. We neither support X server older than 1.13 nor the emgd
drivers now.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>