In Zephyr, a device tree (or devicetree) is a hierarchical data structure that describes the hardware available on a supported board as well as its initial configuration. Rather than reading rawDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/analogdevicesinc/codefusion-studio/llms.txt
Use this file to discover all available pages before exploring further.
.dts or .dtsi files as plain text, the Device Tree View in CodeFusion Studio parses the source and presents the node hierarchy and property values in a structured, navigable interface — directly inside VS Code.
What the Device Tree View provides
The Device Tree View gives you a live, parsed representation of your Zephyr hardware description. Use it to:Review hardware components
Browse the hierarchical node structure of your board’s device tree to see exactly which peripherals, buses, and memory regions are defined.
Inspect node properties
Examine every property for a selected node — addresses, interrupt assignments, clock sources, compatible strings, and more — without manually parsing DTS syntax.
Verify overlay files
Open application-level
.overlay files to confirm that your peripheral configuration overrides are applied correctly on top of the base board definition.Validate platform configuration
Confirm that your system’s hardware description matches the expected layout before building, catching misconfiguration early in the development cycle.
Opening the Device Tree View
- From a built Zephyr project
- From any DTS or DTSI file
Build your Zephyr project
Complete a successful Zephyr project build so that the final
zephyr.dts file is generated in the build output directory.Select the project in the Context menu
In the CodeFusion Studio side panel, select your project in the Context menu.
Supported file types
| Extension | Description |
|---|---|
.dts | Top-level device tree source file, typically the board definition or the built zephyr.dts |
.dtsi | Shared device tree include file, usually containing SoC-level peripheral definitions |
.overlay | Application overlay that extends or overrides the base board device tree |
Use cases
Verify peripheral configuration
Verify peripheral configuration
After modifying a board’s
.dts or adding a custom peripheral, open the file in the Device Tree View to confirm that node addresses, interrupt lines, and compatible strings reflect your intended configuration — before investing time in a full build cycle.Inspect overlay files
Inspect overlay files
Application
.overlay files are layered on top of the base board definition. Opening an overlay in the Device Tree View lets you inspect the resolved property values and confirm that overrides are structured correctly, helping catch issues such as missing status = "okay" properties or incorrect phandle references.Understand board hardware layout
Understand board hardware layout
When starting work on an unfamiliar ADI board, the Device Tree View is a fast way to understand the hardware topology — which buses are available, how peripherals are connected, and what addresses are assigned — without reading raw text.
CI and automated validation with cfsutil
CI and automated validation with cfsutil
In continuous integration pipelines where VS Code is not present, use the
cfsutil dt parse command to parse device tree files from the command line and emit structured JSON output. The JSON output can be consumed by scripts to validate that specific nodes or properties are present in the built device tree.CLI reference: cfsutil dt parse
The cfsutil command-line utility provides a dt parse command for parsing Zephyr device tree files outside of VS Code. Output is in JSON format, making it straightforward to integrate with scripts or CI validation steps.
Options
| Switch | Effect |
|---|---|
-I, --includeDirs=<value>... | Specifies directories to search for included device tree files. Can be specified multiple times — for example, -Idir1 -Idir2 -Idir3 |
-o, --output=<value> | Writes the parsed output to the specified JSON file instead of stdout |
-v, --verbose | Enables verbose mode for additional details during parsing |
Examples
Parse a device tree file and print the JSON output to the terminal:Additional information
The Device Tree View in CodeFusion Studio is based on the Zephyr devicetree specification. For a full reference on device tree syntax, bindings, and the Zephyr build integration, refer to the Zephyr Devicetree documentation.