| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
LSB support has been removed from OE-core:
https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=bac4bc9aa6a1f2fcf2ce9644925615185cc8e847
https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=66dba027289d7dd20df4bae9ae4307ae3a225216
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Explicitly set the kernel to be used when building an image with
linux-intel-rt kernel.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
| |
Set preferred kernel to 4.19 for LSB as well.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
| |
The recipe was removed from dpdk layer.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
| |
We don't supply binaries anymore. Also, remove some obsolete comments.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
| |
Not all platforms need it and should be enabled only when it is required.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
| |
The recipe was removed and this is no longer needed.
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>
|
|
|
|
|
|
| |
Point to the meta-intel wks file when grub-efi is to be used.
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit ab858eb989071f10f6a3796b200c6c61d42ee082.
This caused no bootloader to appear in the boot partition if WKS_FILE
was changed manually. Furthermore, wic wouldn't error, it would just
silently ignore the missing binary.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
WKS_FILE_DEPENDS includes all the dependencies for producing wic images
and is meant to be overridden with correct set by image recipes. Right now,
the default values result in grub-efi being built even when EFI_PROVIDER
is set to systemd-boot.
Change the value to depend only on the EFI_PROVIDER bootloader.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
|
| |
These dependencies on native tools needed by wic images have already been
added by image_types_wic bbclass. Appending here results in same dependencies
being added twice.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
| |
Previously the ltsi kernel was 4.4, requiring us to use linux-yocto. It
has since moved to 4.9, allowing us to use linux-intel.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
|
| |
RMC is confusing as a default because it is only supported by legacy
(iso, hddimg) image types. Its also not being actively maintained,
causing it to lag behind in updates (currently against systemd-boot
v232 instead of v234).
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
|
|
| |
This driver was added for a platform that is no longer supported.
This recipe is also maintained in meta-oe in case it's required outside
of meta-intel.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
| |
This is the newest LTS kernel, and will be the preferred kernel going
for this release.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
| |
As the Quark machine has been EOL'ed at the end of 2017, remove this
machine type from the 2018 planned release of meta-intel
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
| |
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
| |
Use the new x86-x32 override to set the EFI_PROVIDER to grub-efi
which can build without any external libraries, thus just build
in 64bit mode without x32 libraries.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The COMPATIBLE_MACHINE entry for qat recipes is set to 'null'. This
will prevent arbitrary machines from trying to use the qat functionality.
A compatible MACHINE must define itself as such for the qat recipes.
Embedding BSP specific knowledge into the recipe will cause the recipe to
slowly get out of date.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The COMPATIBLE_MACHINE entry for dpdk recipes is set to 'null'. This
will prevent arbitrary machines from trying to use the dpdk functionality.
A compatible MACHINE must define itself as such for the dpdk recipes. Also
the BSP aware target machine was similarly moved to the BSP. Embedding BSP
specific knowledge into the recipe will cause the recipe to slowly get out
of date.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
| |
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
| |
A machine configuration file wasn't the correct place to put this in the
first place. It should be in a bbappend, which we now have.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
| |
Since we want to support the out of tree modules for wifi and ethernet
we need to also have them as common for all machines in the common arch.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
| |
This will ensure thermald is installed on all target images except core-image-minimal
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
| |
This lets the uefi-comboapp and new kickstart template work well
together out of the box.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
| |
The recent patch from Todor to split the RMC recipe into lib and efi app
allows us to revert this override.
This reverts commit a0ca03a32bbe5cbc8433330c28f2044d0ff30ae8.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
| |
Since the existing rmc library does not build correctly for x32
target disable it with an ARCH based OVERRIDE.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
| |
bb.utils.contains checks if ALL items are in the variable, and since we
check for systemd-boot or rmc-boot, it would always be false, assigning
mkefidisk as the WKS_FILE in all cases. bb.utils.contains_any checks if
one or more items are in the variable, so use that instead.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If someone changes their EFI_PROVIDER to grub-efi, we shouldn't be
building a systemd-boot based wic image. Use bb.utils.contains to
be default to mkefidisk.wks if we aren't using a systemd-boot based
EFI_PROVIDER.
mkefidisk.wks is the same as systemd-bootdisk.wks, except it uses grub
and sets rootwait on the kernel command line, so its nearly equivalent.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was initially added as a stopgap, as OE-core's systemd-bootdisk.wks
was using a static device node name rather than device UUID as the root
target. Since OE-core's systemd-bootdisk has caught up, we don't need
this. OE-core's systemd-bootdisk also includes console=ttyS0, which is
common on many platforms and we were missing.
Also change the default WKS_FILE to be OE-core's systemd-bootdisk on
appropriate MACHINEs.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
| |
Adding to KERNEL_FEATURES causes the kernel tools to try to add the
feature to all kernels, even custom kernels not using the
yocto-kernel-cache. By moving it to KERNEL_FEATURES_INTEL_COMMON, it
will only affect the kernels the layer supplies.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
| |
We added -rt to available kernel, and will likely have -tiny and -dev
in the future, so add them now also.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
|
|
|
|
|
| |
This lets us use ovmf firmware with runqemu without building ovmf
manually beforehand.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
|
|
|
|
|
|
|
|
| |
linux-intel does not provide a 4.1 kernel, which is needed for -lsb
images since they use the current LTSI kernel.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|