Devicetree 风格指南
使用制表符缩进。
制表符宽度为 8 个字符。
遵循 Devicetree 规范的约定和规则。
如果 Devicetree 源文件(DTS)编码风格 中的 Linux 内核规则给出了推荐做法,那么它在 Zephyr 中也是首选风格。
如果有助于可读性,可以用一个空行(两个换行符)将相关的属性组分隔成“段落”。
节点和属性名称使用短横线(
-)作为单词分隔符。节点标签中使用下划线(
_)作为单词分隔符。属性定义中等号(
=)两侧各留一个空格。不要在减少缩进的
};之前插入空行。在同一层级上插入一个空行来分隔节点。
需要将较长的属性值拆分到多行时,第一个值应与左括号(
<或[)放在同一行。右括号和分号(>;或];)应放在属性最后一个值之后的同一行。
示例:
/dts-v1/;
/ {
/* Node labels use the "_" separator, but node names use "-". */
psa_rng: psa-rng {
compatible = "zephyr,psa-crypto-rng";
status = "okay";
};
ramdisk0 {
compatible = "zephyr,ram-disk";
/* Property names use the "-" separator. */
disk-name = "RAM";
sector-size = <512>;
sector-count = <128>;
};
periph0 {
/* Wrap array values to conform with line lengths. Indent
* continuation so that values align.
*/
pinctrl-0 = <&periph0_siga_px0_default &periph0_sigb_py7_default
&periph0_sigc_pz1_default>;
pinctrl-names = "default";
};
mipi-dbi {
compatible = "zephyr,mipi-dbi-spi";
lcd0: lcd@0 {
compatible = "sitronix,st7735r";
/* Split array values across multiple lines to help readability. */
gamctrp1 = [10 0e 02 03
0e 07 02 07
0a 12 27 37
00 0d 0e 10];
gamctrn1 = [10 0e 03 03
0f 06 02 08
0a 13 26 36
00 0d 0e 10];
};
};
};