aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-kernel/zephyr-kernel
AgeCommit message (Collapse)Author
2021-02-09zephyr-ipm: drop recipeNaveen Saini
ipm moved to driver folder. Sample is no longer available. Ref: https://github.com/zephyrproject-rtos/zephyr/commit/131cfa2043b255246ae5c30c2c1383dff49a0442 Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2021-02-09zephyr-hci-uart: set COMPATIBLE_MACHINE to 96b-nitrogen machineNaveen Saini
Fix recipe to build. Support for Board arduino-101-ble already dropped from v1.12 Ref: https://github.com/zephyrproject-rtos/zephyr/blob/v2.4-branch/samples/bluetooth/hci_uart/README.rst https://github.com/zephyrproject-rtos/zephyr/blob/v2.4-branch/samples/bluetooth/hci_uart/boards/96b_nitrogen.conf Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2021-02-09zephyr-kernel-common.inc: use ZEPHYR_MODULES varNaveen Saini
Use ZEPHYR_MODULES variable to pass list of absolute source paths of additional external modules. Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2021-02-05zephyr-peripheral-esp: fix compilationWojciech Zmuda
Bluetooth peripheral ESP sample application does not compile because of: - broken source directory path passing to cmake, - broken paths in do_deploy, - unnecessary call for do_install, - missing tinycrypt. The first issue caused the following error: <...>/gcc/arm-yocto-eabi/9.3.0/ld: <...>/recipe-sysroot/usr/lib/libc.a(lib_a-exit.o): in function `exit': /usr/src/debug/newlib/3.2.0-r0/newlib-3.2.0/newlib/libc/stdlib/exit.c:64: undefined reference to `_exit' collect2: error: ld returned 1 exit status Fix the issue by providing Zephyr source directory to cmake via OECMAKE_SOURCEPATH variable. On the do_configure step cmake now gets the full path to the sample source code instead of Zephyr root directory. The second and third issue caused errors because of missing files. Don't execute do_install and use the same paths in deploy as the other sample apps do. Inspecting meta-zephyr commits history shows that similar approach was used in bb files of other sample application when updating them to work with Zephyr 2.0. For the missing Tinycrypt, append its location to cmake. Signed-off-by: Wojciech Zmuda <wojciech.zmuda@huawei.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-12-16zephyr-kernel: clone OpenAMPWojciech Zmuda
OpenAMP is a framework providing software components enabling development of software applications for AMP systems. It is downloaded by default by west from two Zephyr Project repositories based on original OpenAMP repositories: - open-amp - IPC layer that implements rpmsg communication between cores, - libmetal - HAL abstraction layer used by open-amp. Clone the repositories so they can be used for building images for boards with multicore chips. Signed-off-by: Wojciech Zmuda <wojciech.zmuda@huawei.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-12-16zephyr-kernel: clone STM32 HALWojciech Zmuda
HAL for STM32 chipsets is one of Zephyr subprojects. It is downloaded by default by west. Clone the HAL repository so it can be used for building images for boards with STM32 chips. Signed-off-by: Wojciech Zmuda <wojciech.zmuda@huawei.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-12-14zephyr-kernel: clone Nordic HALWojciech Zmuda
HAL for Nordic chipsets is one of Zephyr subprojects. It is downloaded by default by west. Clone the HAL repository so it can be used for building images for boards with Nordic chips. Signed-off-by: Wojciech Zmuda <wojciech.zmuda@huawei.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-11-03zephyr-kernel-test: drop fatal kernel testcaseNaveen Saini
kernel 'fatal' testcase has directory structure changes in v2.4.0 version, which does not fit in current meta-zephyr test build structure. So excluding it for now. Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-10-30zephyr-kernel: add Zephyr RTOS version 2.4.0 supportJon Mason
Update Zephyr to the latest version. Tested via zephyr-philosophers on qemu-cortex-m3. Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-10-21zephyr: use TCLIBC=newlib directlyRoss Burton
Instead of setting TCLIBC=baremetal and then adding newlib in various places, just set TCLIBC=newlib directly. This also means we can use the standard DEPENDS instead of reinventing them. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-09-23zephyr-kernel: add Zephyr RTOS version 2.3.0 supportMah, Yock Gen
Signed-off-by: Mah, Yock Gen <yock.gen.mah@intel.com> Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-09-22zephyr-kernel: Add python dependenciesJon Mason
Zephyr refuses to compile due to missing python dependencies. Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-04-02zephyr-kernel-test.inc: remove 'boot_page_table' kernel testNaveen Saini
'boot_page_table' moved from kernel tests. Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2020-04-02zephyr-kernel: add Zephyr RTOS version 2.2.0 supportNaveen Saini
Release notes: https://github.com/zephyrproject-rtos/zephyr/releases/tag/zephyr-v2.2.0 Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-17zephy-kernel-test: update the testcase list for x86Naveen Saini
Updated the test recipes to build against Zephyr v2.0 Code clean up Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-philosophers: update recipe to build against v2.0Naveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-helloworld: code clean upNaveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-kernel: drop obsolete v1.6Naveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-helloworld: update recipe to build against zephyr v2.0Naveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-kernel: add Zephyr RTOS version 2.0.0 supportNaveen Saini
Release notes: https://github.com/zephyrproject-rtos/zephyr/releases/tag/zephyr-v2.0.0 Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-kernel: drop v1.7Naveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-helloworld: addNaveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2019-12-09zephyr-kernel-src: updated SRC_URI to point to githubNaveen Saini
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2017-03-17zephyr-kernel-common.inc: modify ZEPHYR_MAKE_ARGSJuro Bystricky
Pass ARCH as well. Remove V=1, if needed can be added in a specific recipe. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-17zephyr-kernel-test.inc: remove some testsJuro Bystricky
Removed tests not present in Zephyr 1.7. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-17zephyr-peripheral-esp.bb: GATT/ESP BLE sample codeJuro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-17zephyr-kernel-ser_1.7.bb: pack Zephyr 1.7 sourcesJuro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-17zephyr-kernel.inc: also support Zephyr 1.7.0Juro Bystricky
Build kernel tests suite and kernel samples based on PREFERRED_VERSION_zephyr-kernel Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-06zephyr-hci-uart.bb: Zephyr BLE stackJuro Bystricky
Builds an image for Arduino 101 board needed to be flashed for its nRF51 Bluetooth LE controller. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-03-06zephyr-ipm.bb: Zephyr sample for IPMJuro Bystricky
The recipe to build IPM sample demonstrating messaging between ARC core and IAMCU core on Arduino 101. The recipe can build two different images, based on BOARD. Useful to demonstrate multiconfig. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-02-05zephyrtest.bbclass: refactorJuro Bystricky
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-01-30zephyr-kernel-test-all: implement cleanJuro Bystricky
support for: $ bitbake zephyr-kernel-test-all -c clean Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-30zephyr-philosophers: use common naming conventionsJuro Bystricky
Derive the name of the resulting image based on PN. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-30zephyr-kernel-common.inc: also build qemus if neededJuro Bystricky
Also build qemus if a recipe is built for a MACHINE=qemuXXX. Allow inheriting classes based on recipe context. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-23zephyr-kernel-test.inc: exclude tests not suitable for Nios2Juro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-19meta-zephyr: newlib supportJuro Bystricky
This patch adds newlib libraries for cortex-m3, x86, IAMCU and ARC toolchains. [YOCTO#10662] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-18zephyr.bbclass: support for image configurationJuro Bystricky
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-10zephyr-philosophers: also deploy binary imageJuro Bystricky
Deploy both binary and ELF images in order to make it easier to flash the image on an actual board, such as Arduino-101. (Some flashing tools require binary image) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-10meta-zephyr: Select BOARD via MACHINEJuro Bystricky
The meaning of BOARD in Zephyr environment is equivalent to MACHINE in Yocto environment. Specifying MACHINE will implicitly determine cross-compiler toolchain as well. There is 1:1 correspondence between Zephyr BOARD and Yocto MACHINE so a lookup table BOARD:MACHINE may be needed in the future, presently all that is required is to convert "-" to "_". (Dash to undersocre) This means that in order to support a new Zephyr board, we simply need to create a corresponding MACHINE.conf file. [YOCTO#10894] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-10zephyr-kernel: refactor common codeJuro Bystricky
Several changes to simplify recipes by refactoring common code. The code common to all Zephyr builds is now in the file "zephyr-kernel-common.inc". Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-kernel-src: pack Zephyr sourceJuro Bystricky
This recipe obtains the Zephyr source code tree. The idea is to use this tree for out-of-tree Zepyhyr images via DEPENDS += "zephyr-kernel-src" Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-philosophers: use ZEPHYR_GCC_VARIANT="yocto"Juro Bystricky
Setting ZEPHYR_GCC_VARIANT="yocto" will result in images being built by our own Makefile: Makefile.toolchain.yocto The Makefile already contains LIB_INCLUDE_DIR definition, so it can be removed from this recipe. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-image.inc: use ZEPHYR_GCC_VARIANT="yocto"Juro Bystricky
Setting ZEPHYR_GCC_VARIANT="yocto" will result in images being built by our own Makefile: Makefile.toolchain.yocto The Makefile already contains LIB_INCLUDE_DIR definition, so it can be removed from this file. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-kernel.inc: use own MakefileJuro Bystricky
Zephyr RTOS uses the environmental variable ZEPHYR_GCC_VARIANT to determine which Makefile to use to build images. This allows different Makefiles for different toolchains, so the toolchains can co-exist. Rather than patching the included Makefile.toolchain.zephyr, we use our own file Makefile.toolchain.yocto. This Makefile will be used as long as Zephyr recipes set: export ZEPHYR_GCC_VARIANT="yocto" (Also removed some BOARD definitions) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-philosophers: cleanupJuro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-image.inc: cleanupJuro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-kernel-inc: add default BOARD definitionsJuro Bystricky
Specify default BOARDs for x86 and ARM. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-kernel-test.inc: remove some ARM testsJuro Bystricky
Remove tests that fail because QEMU for ARM does not emulate CortexM3 BASEPRI register functionality. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04zephyr-kernel-test-all.bb: modify LICENSEJuro Bystricky
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
2017-01-04meta-zephyr: basic upgradeJuro Bystricky
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>