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>
This reverts commit ab858eb989.
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>
Major changes:
* Bump version to 2.0.0
* Add support for Coffee Lake (aka. CFL)
- Decoding: H.264/MPEG-2/VC-1/JPEG/VP8/HEVC/HEVC 10-bit/VP9/VP9 10-bit
- Encoding: H.264/MPEG-2/JPEG/VP8/VP9/HEVC/HEVC 10-bit/AVC low power CQP/CBR/VBR mode
- VPP: CSC/scaling/NoiseReduction/Deinterlacing{Bob, MotionAdaptive, MotionCompensated}/ColorBalance/STD
* Add support for H264 FEI
* Add support for HEVC ROI encoding
* Add support for intensity compensation for VC-1 decoding
* Improve the quality of the H264 encoder on BDW/BSW
* Improve the CSC performance between I420/NV12/P010/YUY2/VYUY format
* Improve the performace of va{Get, Put}Image for I420/NV12/P010/YUY2/VYUY format
* Fix image corruption for VP9 decoding
* Fix race condition in wayland support
* Fix ROI support in VDEnc support
* Fix corrupted stream when using VDEnc CBR/VBR
* Fix GCC 7.1.1 warnings/errors
* Update the shader for HEVC encoding
The upstream package name now is intel-vaapi-driver instead of libva-intel-driver.
Updated to point to release tarball instead of git. Also, changed
the URLs to point to new project page.
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>
Anuj gets video related pieces.
Stephano gets RMC and poky-tiny related pieces.
Cal picks up other small pieces.
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>
Remove the concept of the common directory and move all the recipes-* dirs
to the top level as a normal layer would be. layer.conf is updated appropriately
Signed-off-by: Saul Wold <sgw@linux.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>
meta-dpdk / meta-qat:
* Move content from meta-intel/common
* Create new basic README/LICENSE files from meta-intel
* Create new layer.conf files
* Fill out the maintainers files
meta-intel:
* update the maintainers files
* bump the meta-intel layer version
* add layer recommend
No other content changes made in this commit.
Signed-off-by: Mark Hatle <mark.hatle@windriver.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 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 a0ca03a32b.
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>
This means mismatched layers are more clearly identified to the user in
cases where compatibility has not been tested.
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>
Moves common MACHINE_EXTRA_RRECOMMENDS to a common include file and
add thermald to MACHINE_EXTRA_RRECOMMENDS.
Signed-off-by: Jussi Laako <jussi.laako@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
The latest OE's runqemu script by default uses the following
SLIRP options
-netdev user,id=net0,hostfwd=tcp::2222-:22,hostfwd=tcp::2323-:23
which are suitable for meta-intel too. And what is more important
they don't follow the deprecated syntax currently present in the
option values overriden by meta-intel.
The patch drops the meta-intel specific overrides.
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Enable the linux-intel production kernel for meta-intel by default for 4.9,
this will enable using the Intel production kernel.
This is a well tested 4.9 tree that will start to include additional
support for the Apollolake and Joule hardware.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Although the machines definitions in meta-intel are meant to target
real hardware, begin able to start the resulting images under qemu is
nevertheless useful for testing.
Doing that via runqemu depends on a per-image runqemu.conf that
describes how to run qemu for the image. Ineriting qemuboot.bbclass in
image recipes with QB_ variables set for the current architecture via
overrides creates that file.
The new qemuboot-intel.inc was copied from OE-core's qemuboot-x86.inc
and adapted to the three common machines in meta-intel:
$ diff ../openembedded-core/meta/conf/machine/include/qemuboot-x86.inc conf/machine/include/qemuboot-intel.inc
3,5c3,5
< QB_SYSTEM_NAME_x86 = "qemu-system-i386"
< QB_CPU_x86 = "-cpu qemu32"
< QB_CPU_KVM_x86 = "-cpu kvm32"
---
> QB_SYSTEM_NAME_intel-core2-32 = "qemu-system-i386"
> QB_CPU_intel-core2-32 = "-cpu coreduo"
> QB_CPU_KVM_intel-core2-32 = "-cpu kvm32"
7,9c7,13
< QB_SYSTEM_NAME_x86-64 = "qemu-system-x86_64"
< QB_CPU_x86-64 = "-cpu core2duo"
< QB_CPU_KVM_x86-64 = "-cpu kvm64"
---
> QB_SYSTEM_NAME_intel-corei7-64 = "qemu-system-x86_64"
> QB_CPU_intel-corei7-64 = "-cpu Nehalem"
> QB_CPU_KVM_intel-corei7-64 = "-cpu kvm64"
>
> QB_SYSTEM_NAME_intel-quark = "qemu-system-i386"
> QB_CPU_intel-quark = "-cpu coreduo"
> QB_CPU_KVM_intel-quark = "-cpu kvm32"
For performance reasons, runqemu uses virtio for the boot disk. The
kernel therefore must have the necessary drivers enabled. This may
also be useful when running a meta-intel machine image on other
virtual platforms and therefore the default kernel configuration gets
changed to enable virtio.
However, OE-core's qemu.inc also enables various other tweaks for
running under qemu, like deriving the wired Ethernet address from the
kernel boot parameters. This is probably less desirable for a
meta-intel machine and thus not enabled in the new qemu-intel.inc. The
downside is that the resulting images then come up without assigned IP
address when used under qemu. Distros which want that feature can
still add it to their images by copying settings from OE-core's
qemu.inc.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
EFI_PROVIDER is set in meta-intel.inc for all machines
so the one set in intel-quark.conf has no effect and can be
removed.
Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
do_image_wic (in image_types.bbclass) deals with the task dependency
to do_bootimg if live images are built.
It's redundant to set do_bootimg as a recrdeptask in the machine
configurations so remove it.
Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
intel-* machines default to an EFI bootloader which runs from an EFI
system partition (ESP). Also, the ESP needs to be vfat formatted.
Make sure the dosfs/mtools used by wic and its plugins that deal with
vfat are built and available (without depending on do_bootimg) when
wic images are being created.
Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
libva and gstreamer-vaapi are now part of oe-core, so remove them.
The package names were changed to reflect the naming scheme, so update the
machine configurations to follow.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
RMC was previously configured to work only with the systemd-boot EFI
bootloader. With this commit we can specify alternative bootloaders by
setting the RMC_BOOTLOADER variable in local.conf. If RMC_BOOTLOADER is
not set systemd-boot will be used by default.
Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Include support for ASPEED Technology graphics card driver to
intel-corei7-64 and intel-core2-32. So that intel common BSP can
support platforms like MohonPeak (Intel Atom Processor C2000 Product
Family) which using this graphics card.
Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Some of Intel boards are using ttyS1 also. So ttyS1 is added to
SERIAL_CONSOLES inorder to provide login prompts on the console.
Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Overriding systemd-bootdisk.wks unconditionally was against Yocto
Project's compatibility requirements, so our version needed to be
renamed.
Change our conf files to use the renamed version.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This allows to have one override mechansim for meta-intel instead of having
multiple machine overrides.
This replaces using rmc in DISTRO_FEATURES which was a bad idea to set in
layer.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Some Intel boards use ttyS0 and others use ttyS2, include both serial
ports inorder to provide login prompts on the console.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
We cannot override the current EFI bootloader selection with
another "EFI_PROVIDER=..." in a local.conf in a build/conf
directory when it is specified by "=" syntax in the current
conf file for quark.
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This is to get rid of "install" option when booting quark with
an image in hddimg format. EFI installer doesn't work on quark
at this point.
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This enables the Runtime Machine Configuration feature, which
allows use to support multiple machines that have different
kernel commandline option as well as different startup requirements
to work from the base MACHINE configuration.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This adds WIC Image support to the Quark Intel BSPs, these
are all designed to be copied to MicroSD Cards via dd. This will create
an efi boot partition along with a user space partition.
It is not currently setup to have an install target, it only has a live boot
target.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This adds WIC Image support to the core2 and corei7 Intel BSPs, these
are all designed to be copied to USB sticks via dd. This will create
an efi boot partition along with a user space partition.
It is not currently setup to have an install target, it only has a live boot
target.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This makes it easier for others inheriting meta-intel to use their own
kernel.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
RMC Feature is based on RMC project, systemd-boot, EFI installer
to enable a single generic image, built for multiple platforms,
automatically applies customization and quirks specific to a type
of boards at runtime.
In another word, you will see a single image behaves differently
and intelligently according to the type of board it is running on.
To Enable this feature: add the two lines in conf file:
DISTRO_FEATURES_append = " rmc"
EFI_PROVIDER = "rmc-systemd-boot"
Based on Saul Wold's initial work on a feature switch, RMC patches
in systemd-boot, installer and gnu-efi aren't built unless the
feature is enabled.
For a supported board, this feature can :
() show and boot with board-specific boot entries in boot menu
in live-boot and post-installation.
() apply a kernel cmdline fragment to the end of cmdline to boot
Linux kernel. This is effective for any boot entry user chooses in
boot menu.
() create directory and deploy files only for the type of the
running board to target's file systems. What left on target after
installation is just same as the result from installing a conventional
image customized for a single type of hardware.
To add support of new boards, a new variable RMC_BOARD_DATA_DIRS
is the interface to developers. How-to information will be provided
with examples in following patches.
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
Reviewed-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
The systemd-boot is the old gummiboot merged into systemd project.
We have enabled systemd-boot as a standalone EFI bootloader in OE,
also with updated wic plugin to support specifying "systemd-boot"
as bootloader in wks files.
Assuming these are good enough to replace gummiboot for quark,
this change does it.
Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
The linux-yocto-tiny metadata assumes the common PACKAGE_ARCH but
without this is actually machine-specific and broken.
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
All content has been moved to the top-level README.
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
When using the init-install-efi.sh scripts from oe-core to install to a
USB stick, we do not get the "rootwait" kernel command line option.
Without the rootwait option we get a kernel panic when
attempting to boot from the installed USB stick.
This patch adds rootwait to the kernel command line of all intel-*
MACHINEs as a temporary workaround. This could potentially impact boot
times with devices that do not require it, but in testing with a
Silverjaw lure and SSD on a MinnowBoard Max, it did not have a noticable
impact.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Skylake and Broxton graphics require firmware blobs to run properly.
The firmware must be built into the initramfs since the i915 driver is
built into the kernel and won't have rootfs access on initialization.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This address a boot issue based on using the new bootimg code that
makes a distiction between Live and VM type of image so they can
co-exisit.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
This information is the same across all meta-intel supported MACHINEs,
so we can move it to a shared location.
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
The gma500_gfx driver will match certain devices on which it causes incorrect functionality,
we want to avoid inserting this module, basicallly blacklist it for specific hardware,
but still allow it to work on other hardware by default; usually when we have an already working system,
using udev rules would do the job, but since we are building it, it is impossible to blacklist
a driver when a certain udev rule matches, since rootfs isn't writeable at this point during boot time,
the solution is to use modprobe install, which runs a certain command instead of inserting a matching module
this command needs to insert the module manually afterwards and have a flag --ignore-install
so it doesn't create an infinite loop executing itself everytime it wants to insert the module,
busybox's modprobe doesnt provide this functionality, so a small hack had to be used to avoid
the infite loop instead.
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
By adding the direct path to recipes in common directories we allow
upper layers to further extend the recipes.
Without the patch the extending recipes look like this:
require common/recipes-foo/bar/baz.inc
With this patch the include can be written like in other layers:
require recipes-foo/bar/baz.inc
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Remove meta-romley BSP layer from meta-intel master branch
which is targeting for YP 2.0.
A heads-up email was sent to the meta-intel mailing list for
requesting any feedback regarding retirement of these BSP.
Since there is no concern, we assume that it is agreed upon
and thus this patch to retire the BSP.
The "MAINTAINERS file" and "conf/machine/README file" are updated to
reflect removal of the BSP.
We expect intel-corei7-64 machine is continued to be used to support
the platform and dpdk recipe under meta-romley is now supported under
meta-isg/common/recipes-extended/dpdk.
Signed-off-by: WU CHIA CHUAN <chia.chuan.wu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
The padlock code is a subset of x86 hardware acceleration code. It uses
the cmov instruction which is invalid on Quark based hardware, so we
disable this code.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Adding the ttyPCH0 will allow of the platforms that have the EG20T Hardware
to get both kernel console output and login prompt.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
The intel-core* BSPs supercede these older BSPs therefore it's time
to remove these older platform specific bsps.
Bump LAYERVERSION to 3 to allow the Autobuilder to know that these
BSPs have been removed.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
The kernel needs to have the EXTRA_CFLAGS based via a variable as
it does not pick up the CLFAGS from the tune file. Quark based
kernel should not use the lock prefix.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
add support for the generic NFC stack
Partial fix for [YOCTO #7451].
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
add support for the generic NFC stack
Partial fix for [YOCTO #7451].
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
No need for a layer of indirection when that layer only has one option.
Previously with EMGD there was a choice, but not anymore.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
This is handled in oe-core now, remove the redundant code.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Now that 3.17 has been removed and linux-yocto-3.19 is available, set
the preferred version to 3.19.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
The microcode data file released by Intel has microcode for many Intel
processors, which by default all get installed onto the target image.
In some situations it may desirable to choose microcode for only a
selected processor or processors. This change provides an easier way
to filter and select only the microcode of interest for BSPs from
recipe space.
A new variable, UCODE_FILTER_PARAMETERS, is introduced, which can be
defined to contain parameters to the iucode_tool which will filter the
microcode of interest for the BSP under consideration. More
information on the iucode-tool parameters is available here:
http://manned.org/iucode-tool.
This filtering makes the generated microcode files very
machine-specific, hence making the recipe machine-specific. BSPs using
the common Intel kernel will not be using the filtered microcode, and
will be able to share the intel-microcode packages with the common
Intel package arch for the recipe.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Enable the Intel microcode feature for this BSP.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Enable the Intel microcode feature for this BSP.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
With this change, Intel microcode support can be enabled or disabled
for any BSP by controlling the MACHINE_FEATURES variable.
Any BSP from the meta-intel layer can enable Intel microcode loading
support by adding the following line in the machine configuration.
MACHINE_FEATURES += "intel-ucode"
This change keeps the intel-microcode feature disabled by default; it
can however be enabled as an "opt-in" feature via the MACHINE_FEATURES
variable.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
v3.10 is now the latest LTSI kernel. Use it for all the poky-lsb
images, so that it gets validation in the QA cycles.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
The layer priority is getting ignored because the same set of files
are visible in the meta-intel layer as well as any of its sub layers.
The layer pattern for recipe files is changed from "^${LAYERDIR}/" to
"^${LAYERDIR}/common" to stop unintentionally including the sub-layer
recipe files in the meta-intel layer.
Fixes Bug:
[YOCTO #6552]
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
The linux-yocto_3.17 recipe is available for this BSP. Make it the
default kernel for this BSP.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
The linux-yocto_3.17 recipe is available for this BSP. Make it the
default kernel for this BSP.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
As we've retired some BSPs we'll need to bump LAYERVERSION so
that the autobuilder does not fail out on them.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>