Device tree is a tree structured data describes devices on a board. This is used by operating system's kernel in order to manage a computer hardware components including cpus, buses and external peripherals.
A device tree bindings file offers information about the properties supported by Linux kernel device tree blob.
Location for this documents is under Documentation/devicetree/bindings/
d
`
Historically device tree bindings were written in plain .txt
files. These files serve only as documentation but they cannot really be used to validate the syntax used in device tree files.
In order to improve validation of dts files, Linux kernel switched to writing device tree bindings using json-schema.
The goal of the project is to convert as much .txt
files into .yaml
json-schema files.
$ linux/Documentation/devicetree/bindings$ find . -name '*.txt' | wc -l
1795
You can have a look at this example .
Tips for writing a good proposal:
.txt
file to yaml.Documentation/devicetree/bindings
.txt
file and convert it to yaml.txt
files to work onHow to find ideas of patches to create:
1) Look for small txt
files that might be easier to convert.
Documentation/devicetree/bindings/{sound|iio|hwmon,regulator, rtc, watchdog}
.git log
and look into history to see how similar patches where done. git log 715f45854f559f361d2c222a0353a3a1818875ed
2) Cleanup all easy dtbs_check warnings for the platforms, like node
names, unused/not allowed properties. Run make dtbs_check
.
Code license: GPL-2.0 OR BSD-3-Clause
The project is considered successful if the code is accepted into mainline Linux kernel tree.
Mentor: Daniel Baluta daniel.baluta@nxp.com