This project contains code of the AosCore application for zephyr OS.
Zephyr SDK is required to fetch and build this project. Follow Getting Started Guide to install mentioned dependencies and SDK.
Install protobuf compiler from pre-compiled binaries: https://grpc.io/docs/protoc-installation/#install-pre-compiled-binaries-any-os. The verified protobuf compiler version is v22.3: https://github.com/protocolbuffers/protobuf/releases/tag/v22.3.
Use zephyr west tool to fetch required repos:
west init -m https://github.com/aosedge/aos_core_zephyr --mr main aos_zephyr_sdk
cd aos_zephyr_sdk
west update
west zephyr-exportcd aos_core_zephyr
west build -b ${BOARD} -p auto
west build -t runFor test and debug purpose native_posix_64 or native_posix board can be used.
For real hardware with Xen the following command shall be used:
west build -b ${BOARD} -p auto -S xen_dom0 -- \
-D'DCONFIG_AOS_NODE_TYPE="my_node_type"' \
-D'CONFIG_DOMD_UBOOT_PATH="path/to/domd/u-boot"' \
-D'CONFIG_DOMD_DTB_PATH="path/to/domd/dtb"' \
-D'CONFIG_TA_DEPLOY_DIR="path/to/folder/with/ta's"'
-D'CONFIG_AOS_ROOT_CA_PATH="path/to/aos/root/cert"'where:
CONFIG_AOS_NODE_TYPE- Aos node type;CONFIG_DOMD_UBOOT_PATH- path to DomD u-boot binary;CONFIG_DOMD_DTB_PATH- path to DomD DTB file;CONFIG_TA_DEPLOY_DIR- path to directory with OPTEE TA's that shall to be build-in application;CONFIG_AOS_ROOT_CA_PATH- path to Aos root CA certificate.
Supported ${BOARD}: rcar_spider, rcar_salvator_xs_m3 and rcar_h3ulcb_ca57
west build -t runUnit tests are implemented using zephyr Test Framework.
Use the following commands to run the application unit tests:
west twister -c -v -T testsAll test reports will be saved in twister-out folder.
Use the following command to calculate unit tests code coverage:
../zephyr/scripts/twister -c -v --coverage --coverage-basedir src/ --coverage-tool gcovr -p unit_testing -T testsOpen twister-out/coverage/index.html with your browser to see the code coverage result.
To see summary:
gcovr twister-out/unit_testing -f src/