OpenEmbedded "poky" with some sysmocom specific modifications. Mostly used only up to sysmocom release 201310, but the "pyro" branch is still used for 201705
Go to file
Patrick Ohly 715f4e3ec1 runqemu: support UEFI with OVMF firmware
In the simplest case, "runqemu qemux86 <some-image> qcow2 ovmf" for an
EFI-enabled image in the qcow2 format will locate the ovmf.qcow2
firmware file deployed by the ovmf recipe in the image deploy
directory, override the graphics hardware with "-vga std" because that
is all that OVMF supports, and boot with UEFI enabled.

ovmf is not built by default. Either do it explicitly ("bitbake ovmf")
or make it a part of the normal build
("MACHINE_ESSENTIAL_EXTRA_RDEPENDS_append = ' ovmf'").

The firmware file is activated as a flash drive instead of using the
qemu BIOS parameters, because that is the recommended method
(https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764918#47) as it
allows storing UEFI variables in the file.

Instead of just "ovmf", a full path to an existing file can also be
used, just as with the rootfs. That may be useful when making a
permanent copy of the virtual machine data files.

It is possible to specify "ovmf*" parameters more than once, then
each parameter creates a separate flash drive. This way it is possible
to use separate flash drives for firmware code and variables:
$ runqemu qemux86 <some-image> qcow2 ovmf.code ovmf.vars"

Note that rebuilding ovmf will overwrite the ovmf.vars.qcow2 file in
the image deploy directory. So when the goal is to update the firmware
while keeping variables, make a copy of the variable file and use
that:
$ mkdir my-machine
$ cp tmp/deploy/images/qemux86/ovmf.vars.qcow2 my-machine/
$ runqemu qemux86 <some-image> qcow2 ovmf.code my-machine/ovmf.vars.qcow2

When Secure Boot was enabled in ovmf, one can pick that instead of
the non-Secure-Boot enabled ovmf.code:
$ runqemu qemux86 <some-image> qcow2 ovmf.secboot.code my-machine/ovmf.vars.qcow2

(From OE-Core rev: b91fc0893651b9e3069893e36439de0b4e70ad13)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-01 11:17:44 +00:00
bitbake bitbake: fetch2: don't use deprecated bb.data APIs 2017-03-01 11:16:07 +00:00
documentation ref-manual: Expanded kernel task descriptions. 2017-02-19 06:59:51 -08:00
meta ovmf_git.bb: enable Secure Boot 2017-03-01 11:17:44 +00:00
meta-poky poky.conf: prune SANITY_TESTED_DISTROS 2017-02-15 19:27:14 -08:00
meta-selftest oeqa: fix typo 2017-02-23 12:49:48 -08:00
meta-skeleton useradd-example: exclude from world 2017-01-09 13:39:11 +00:00
meta-yocto/conf meta-yocto: Rename to meta-poky to better match its purpose 2016-02-28 11:31:17 +00:00
meta-yocto-bsp linux-yocto: Update genericx86* SRCREVs for linux-yocto 4.9 2017-02-15 19:27:14 -08:00
scripts runqemu: support UEFI with OVMF firmware 2017-03-01 11:17:44 +00:00
.gitignore add !meta-poky to .gitignore file 2016-03-26 08:06:58 +00:00
.templateconf meta-yocto: Rename to meta-poky to better match its purpose 2016-02-28 11:31:17 +00:00
LICENSE Fix license notices for OE-Core 2014-01-02 12:58:54 +00:00
README meta-yocto: Rename to meta-poky to better match its purpose 2016-02-28 11:31:17 +00:00
README.hardware README.hardware: update MPC8315E-RDB section 2017-01-16 18:08:20 +00:00
oe-init-build-env oe-init-build-env*: Make them actually return failures 2016-03-20 23:12:30 +00:00
oe-init-build-env-memres oe-init-build-env*: Make them actually return failures 2016-03-20 23:12:30 +00:00

README

Poky
====

Poky is an integration of various components to form a complete prepackaged
build system and development environment. It features support for building
customised embedded device style images. There are reference demo images
featuring a X11/Matchbox/GTK themed UI called Sato. The system supports
cross-architecture application development using QEMU emulation and a
standalone toolchain and SDK with IDE integration.

Additional information on the specifics of hardware that Poky supports
is available in README.hardware. Further hardware support can easily be added
in the form of layers which extend the systems capabilities in a modular way.

As an integration layer Poky consists of several upstream projects such as 
BitBake, OpenEmbedded-Core, Yocto documentation and various sources of information 
e.g. for the hardware support. Poky is in turn a component of the Yocto Project.

The Yocto Project has extensive documentation about the system including a 
reference manual which can be found at:
    http://yoctoproject.org/documentation

OpenEmbedded-Core is a layer containing the core metadata for current versions
of OpenEmbedded. It is distro-less (can build a functional image with
DISTRO = "nodistro") and contains only emulated machine support.

For information about OpenEmbedded, see the OpenEmbedded website:
    http://www.openembedded.org/

Where to Send Patches
=====================

As Poky is an integration repository (built using a tool called combo-layer),
patches against the various components should be sent to their respective
upstreams:

bitbake:
    Git repository: http://git.openembedded.org/bitbake/
    Mailing list: bitbake-devel@lists.openembedded.org

documentation:
    Git repository: http://git.yoctoproject.org/cgit/cgit.cgi/yocto-docs/
    Mailing list: yocto@yoctoproject.org

meta-poky, meta-yocto-bsp:
    Git repository: http://git.yoctoproject.org/cgit/cgit.cgi/meta-yocto(-bsp)
    Mailing list: poky@yoctoproject.org

Everything else should be sent to the OpenEmbedded Core mailing list.  If in
doubt, check the oe-core git repository for the content you intend to modify.
Before sending, be sure the patches apply cleanly to the current oe-core git
repository.

    Git repository: http://git.openembedded.org/openembedded-core/
    Mailing list: openembedded-core@lists.openembedded.org

Note: The scripts directory should be treated with extra care as it is a mix of
oe-core and poky-specific files.