This Zephyr freestanding application is used in the fourth article of the "Practical Zephyr" series. The application itself is just a dummy but shows important Devicetree API macros. The most important files are the Devicetree overlay files and Devicetree bindings:
props-basics.overlay
shows all basic types except for phandles. The matching bindings can be found incustom-props-basics.yaml
props-phandles.overlay
shows the phandle, phandles, and phandle-array types. The matching bindings can be found incustom-props-phandles.yaml
, and the bindings for the specifier cells used in the phandle-array are defined incustom-cells-a.yaml
andcustom-cells-b.yaml
.
In addition, this application demonstrates three overlay files that are picked up automatically when building for Nordic's nRF52840 development kit:
The following command can be used to build the application:
west build --board nrf52840dk_nrf52840 --
-DEXTRA_DTC_OVERLAY_FILE="dts/playground/props-phandles.overlay;dts/playground/props-basics.overlay"
The goal of this application is to demonstrate Devicetree bindings and thus the macros produced by Zephyr's Devicetree generator script in build/zephyr/include/generated/devicetree_generated.h
. The main.c
application shows the basic use of the Devicetree API macros.
Note: The
tasks.py
script is used by the GitHub action for building this application using invoke.