Commit Graph

109 Commits

Author SHA1 Message Date
Saul Wold
e11a399d52 meta-intel.inc: Use grub-efi for x32
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>
2017-09-27 10:03:08 -07:00
Mark Hatle
dc921fcd8d qat: Move BSP specific configurations from recipes to machine.conf
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>
2017-09-25 15:53:57 -07:00
Mark Hatle
a513894de8 dpdk: Move BSP specific configurations from recipes to machine.conf
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>
2017-09-25 15:53:57 -07:00
Saul Wold
0346318e81 intel-common-pkgarch: fix iwlwifi rename and add ixgbe
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2017-09-05 15:55:04 -07:00
California Sullivan
9658bb3489 conf/machine/intel-*: move core-image-minimal-initramfs PACKAGE_INSTALL
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>
2017-08-23 15:16:35 -07:00
Saul Wold
3dfbb5cd08 intel-common-pkgarch: Add out of tree modules
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>
2017-07-31 09:00:58 -07:00
Saul Wold
3b8d46f617 meta-intel.inc: Ensure thermald is installed for most targets
This will ensure thermald is installed on all target images except core-image-minimal

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2017-07-27 10:01:47 -07:00
California Sullivan
27e8148446 meta-intel.inc: Set default DISK_SIGNATURE_UUID
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>
2017-07-10 12:08:20 -07:00
Saul Wold
fe4eff06ac Revert "meta-intel: Add override for EFI_PROVIDER and x32"
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>
2017-07-08 18:36:06 -07:00
Saul Wold
a0ca03a32b meta-intel: Add override for EFI_PROVIDER and x32
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>
2017-06-26 09:40:01 -07:00
California Sullivan
7e8f98aa32 conf/machine/intel-core*: Fix WKS_FILE setting
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>
2017-05-19 11:21:47 -07:00
California Sullivan
7169c2a500 conf/machine/intel-core*: change WKS_FILE based on EFI_PROVIDER
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>
2017-05-16 08:05:07 -07:00
California Sullivan
c339fa115a canned-wks/systemd-bootdisk-uuid.wks: remove file
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>
2017-05-16 08:05:07 -07:00
California Sullivan
8b1bc4781a qemu-intel.inc: Add to KERNEL_FEATURES via KERNEL_FEATURES_INTEL_COMMON
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>
2017-05-11 09:17:11 +08:00
Saul Wold
ce71121534 intel-common-pkgarch: Add additional kernel types
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>
2017-04-17 10:11:00 -07:00
California Sullivan
2a955487d8 qemu-intel.inc: Add ovmf to EXTRA_IMAGEDEPENDS
This lets us use ovmf firmware with runqemu without building ovmf
manually beforehand.

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
2017-03-28 10:44:13 -07:00
California Sullivan
0be3c6bdf0 meta-intel.inc: Set PREFERRED_PROVIDER to linux-yocto for linuxstdbase
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>
2017-03-23 10:29:38 -07:00
Jussi Laako
66637d28a7 Include recommended packges for all Intel machines
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>
2017-03-21 19:03:03 -07:00
Alejandro Hernandez
ba824ee3df meta-intel.inc: Set intel-linux as default kernel for poky-tiny
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
2017-03-07 12:22:22 -08:00
Saul Wold
f5aa708493 intel-common-pkgarch: Add linux-intel
This adds the linux-intel kernel to the list of packages that are
in the intel-common arch.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2017-03-06 13:06:27 -08:00
Dmitry Rozhkov
80ce6eb1d3 meta-intel: Don't override default qemu slirp options
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>
2017-02-28 16:05:01 -08:00
Saul Wold
e8fd58ccf2 meta-intel.inc: Enable linux-intel and 4.9 by default for meta-intel hardware
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>
2017-02-08 16:28:14 -08:00
Patrick Ohly
5130e819ca meta-intel: enable qemu and select more suitable virtual machine options
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>
2017-01-24 14:31:06 -08:00
Mikko Ylinen
c5986ea44d intel-quark: remove redundant EFI_PROVIDER setting
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>
2017-01-17 10:03:33 -08:00
Mikko Ylinen
85c16a907f intel-*: wic: drop recursive task depedency to do_bootimg
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>
2017-01-17 10:03:26 -08:00
Mikko Ylinen
a7941f79f6 intel-*: build dosfs/mtools for wic image creation
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>
2017-01-17 10:03:15 -08:00
Ross Burton
466196fa2f vaapi: remove as recipes moved to oe-core
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>
2016-12-15 10:27:18 -08:00
Todor Minchev
48c335a46e rmc: add support for alternative EFI bootloaders
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>
2016-12-15 10:27:18 -08:00
Rahul Kumar Gupta
35d60f13bb intel-core*: Add ASPEED Xserver driver
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>
2016-11-28 12:45:06 -08:00
Rahul Kumar Gupta
61634f89a8 intel-core*: add ttyS1 to SERIAL_CONSOLES
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>
2016-11-28 12:45:06 -08:00
California Sullivan
c1f260ba7f conf/machine/intel-core*: Change WKS_FILE to systemd-bootdisk-uuid
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>
2016-11-10 07:48:05 -08:00
Saul Wold
6e05e7f82a meta-intel.inc: Add MACHINEOVERRIDE for meta-intel
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>
2016-11-02 16:19:51 -07:00
Saul Wold
233b271e17 meta-intel.inc: remove setting rmc in DISTRO_FEATURES
We should not be changing DISTRO_FEATUES within a layer.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2016-11-02 13:50:46 -07:00
Saul Wold
8649d6b5b1 intel-corei7-64: Use SERIAL_CONSOLES to add ttyS2
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>
2016-11-02 13:50:46 -07:00
Jianxun Zhang
53597ed63d quark: amend EFI Bootloader option
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>
2016-11-01 08:23:15 -07:00
Jianxun Zhang
15ac2f84ed quark: explicitly set boot entry in bootloader
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>
2016-11-01 08:23:15 -07:00
Saul Wold
3da6553f63 meta-intel: Enable RMC by default
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>
2016-10-20 11:12:30 -07:00
Saul Wold
755c4a95e9 intel-quark: Add WIC image creation
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>
2016-10-17 08:07:53 -07:00
Saul Wold
a7cc7abcc9 intel-core*: Add support for wic images
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>
2016-10-17 08:07:53 -07:00
California Sullivan
31abb97302 meta-intel.inc: Bump PREFERRED_VERSION_linux-yocto to 4.8
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2016-09-15 08:43:56 -07:00
California Sullivan
d2b70b5c98 meta-intel.inc: Soft set PREFERRED_PROVIDER_virtual/kernel
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>
2016-09-15 08:43:51 -07:00
Jianxun Zhang
7d00922e1c quark: Switch gummiboot to systemd-boot
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>
2016-07-28 12:09:21 -05:00
Tom Zanussi
e352344a36 intel-common-pkgarch: Set common PACKAGE_ARCH for linux-yocto-tiny
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>
2016-05-26 20:59:33 -05:00
Tom Zanussi
0e86d961bc conf/machine/README: Remove
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>
2016-04-29 07:15:31 -07:00
California Sullivan
d9727db3e7 conf/machine/intel-*: Add rootwait to APPEND variables
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>
2016-04-26 09:42:21 -07:00
California Sullivan
c6efc3ea16 machine: add i915 firmware to initramfs for intel-core* MACHINEs
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>
2016-03-29 11:45:33 -07:00
Saul Wold
cdbf029110 meta-intel.inc: Update INTRD to INITRD_LIVE
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>
2016-03-03 15:48:25 -08:00
California Sullivan
aaab29ad03 machine: move PREFERRED_VERSION/PREFERRED_PROVIDER to meta-intel.inc
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>
2016-02-22 14:53:15 -08:00
California Sullivan
95e3bea7f6 machine: update PREFERRED_VERSION to 4.4 for intel-core* and intel-quark
This makes us use the new 4.4 kernel by default.

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
2016-02-22 14:53:15 -08:00
Alejandro Hernandez
324918de46 gma500_gfx: Avoid inserting gma500_gfx module for certain devices
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>
2016-02-19 07:52:09 -08:00