Commit Graph

12 Commits

Author SHA1 Message Date
Juro Bystricky
38238f8ea7 zephyr-kernel.inc: also support Zephyr 1.7.0
Build kernel tests suite and kernel samples based on
PREFERRED_VERSION_zephyr-kernel

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-17 09:30:25 -07:00
Juro Bystricky
6fb096ca45 zephyr-qemuboot.bbclass: no rootfs
Explicitly state we don't have rootfs, otherwise default
rootfs QEMU settings may be forced by runqemu.

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-08 10:11:25 -08:00
Juro Bystricky
1a611eda3a arduino-101: Support for flashing via USB
Implement a class allowing flashing Arduino-101 using dfu-util.
User needs to have dfu-utils installed on the host machine.
All three cores supported (x86, ARM, ARC).

Sample usage:
    $ MACHINE=arduino-101 bitbake xxx
    $ MACHINE=arduino-101 bitbake xxx -c flash_usb

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-06 09:47:09 -08:00
Juro Bystricky
c42423e291 zephyr-qemuboot.bbclass: disable QEMU network
Setting QB_NET = "none" bypasses network configuration in runqemu.

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-02-05 20:19:02 -08:00
Juro Bystricky
59c5fb9c27 zephyrtest.bbclass: refactor
Only keep code/variables related to individual test/package names.
Moved ZEPHYR_TEST_SRCDIR into zephyr-kernel.inc as it is
zephyr kernel version specific.
Moved ZEPHYR_MAKE_OUTPUT into zephyr-kernel-common.inc as it is
as it is not zephyr test specific but applicable to all
zephyr images.
Generate additional files expected by testimage.bbclass:
testdata.json and a dummy  manifest file

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-02-05 20:01:38 -08:00
Juro Bystricky
3ef84e9439 zephyr-qemuboot.bbclass
A bbclass used to generate qemuboot.conf and various symbolic
links needed to properly run "runqemu".

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-30 17:03:00 -08:00
Juro Bystricky
d1cc929d4f zephyr-qemuboot.bbclass
A bbclass used to generate qemuboot.conf and various symbolic
links needed to properly run "runqemu".

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-30 16:28:53 -08:00
Juro Bystricky
052ed539d1 zephyrtest.bbclass: simplify names of test binaries
Drop the prefix "zephyr-kernel-test-".
Additional minor cleanup.

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-30 16:15:58 -08:00
Juro Bystricky
56fbee01e8 zephyr.bbclass: support for image configuration
New class to support commands such as:

$ MACHINE=xxx bitbake yyy -c menuconfig
$ MACHINE=xxx bitbake yyy -c devshell

Kernel options are typically configured via menuconfig.
The file "prj.conf" must be edited manually, hence the need for devshell.
Once in devshell, user can use their favorite editor to edit the file.

For proper operation, these two variables need to be set in
recipes:

ZEPHYR_SRC_DIR : path to the source, typically place with prj.conf
ZEPHYR_BASE: Zephyr kernel tree location

[YOCTO#10657]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-18 12:24:49 -08:00
Juro Bystricky
3daa59f4da zephyrtest.bbclass: do not prepend 'test_'
Do not prepend 'test' to test programs.
(Don't assume all test programs names begin with 'test_')

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04 11:10:30 -08:00
Juro Bystricky
97643716c2 meta-zephyr: basic upgrade
Numerous changes to allow building and running various
Zephyr tests using Zephyr release 1.6 and Yocto master distro
(commit 3676601335b4673e3572d5a9987a351f0bb44bcb and later)
Work in progress.

Notable changes:
1. Zephyr 1.6 does not support the concept of nano and micro kernel
   anymore.
2. Location of various tests have changed
3. Changes due to subtle python3/python2 differences
4. Zephyr Makefile changes (including renaming)
5. Improved failed test detection
6. Remove patch files no longer needed

With these changes, it is now possible to run Zephyr test suite and
Zephyr sample programs. Currently only x86 CPUs are supported, with
additional CPU support coming in the near future, in particular
support for ARM Cortex-M3 CPUs

Prerequisites:
Modify local conf by adding:
DISTRO="zephyr"
MACHINE?="qemux86"

Modify bblayers.conf by adding "meta-zephyr" to BBLAYERS

To build all Zephyr tests:
    $ bitbake zephyr-kernel-test-all

To test all built test images:
    $ bitbake zephyr-kernel-test-all -ctestimage

You can also build and test an individual test. This is done by appending
the actual test name to the "zephyr-kernel-test", for example:

    $ bitbake zephyr-kernel-test-test_sleep
    $ bitbake zephyr-kernel-test-test_sleep -ctestimage

It is also possible to build Zephyr sample programs. Included is a sample recipe
that builds the Zephyr "philosophers" sample:

    $ bitbake zephyr-philosophers

Once built, you can run the created "philosophers" image in qemu (at this point
the various paths have to be entered manually):

    $  ./tmp/sysroots/x86_64-linux/usr/bin/qemu-system-i386 \
         -kernel ./tmp/deploy/images/qemux86/philosophers.elf \
         -nographic -machine type=pc-0.14 -display none -clock dynticks \
         -no-acpi -balloon none

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04 11:10:25 -08:00
Randy Witt
7a8d7eb97e Create the meta-zephyr layer with empty SRC_URI
Initial commit: original work by Randy Witt and Richard Purdie.

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04 11:09:57 -08:00