From: Frank Rowand <frank.rowand@xxxxxxxxxxx> Add items to Devicetree Source Format chapter - Add naming convention for DTS files and DTS include files - Add /include/ compiler directive - Add ";" to end of node definition - Add /delete-node/ and /delete-property/ - Add arithmetic, bitwise, and logical expressions Note that cpp directives are not included in this patch, and are not yet specified in this appendix. Signed-off-by: Frank Rowand <frank.rowand@xxxxxxxxxxx> --- source/source-language.rst | 60 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 1 deletion(-) Index: b/source/source-language.rst =================================================================== --- a/source/source-language.rst +++ b/source/source-language.rst @@ -9,6 +9,19 @@ devicetree in the form expected by the k not a formal syntax definition of DTS, but describes the basic constructs used to represent devicetrees. +The name of DTS files should end with ".dts". + +Compiler directives +------------------- + +Other source files can be included from a DTS file. The name of include +files should end with ".dtsi". Included files can in turn include +additional files. + +:: + + /include/ "FILE" + Node and property definitions ----------------------------- @@ -21,11 +34,18 @@ preceded by a label. [label:] node-name[@unit-address] { [properties definitions] [child nodes] - } + }; Nodes may contain property definitions and/or child node definitions. If both are present, properties shall come before child nodes. +Previously defined nodes may be deleted. + +:: + + /delete-node/ node-name; + /delete-node/ &label; + Property definitions are name value pairs in the form: :: @@ -39,6 +59,12 @@ form: [label:] property-name; +Previously defined properties may be deleted. + +:: + + /delete-property/ property-name; + Property values may be defined as an array of 32-bit integer cells, as null-terminated strings, as bytestrings or a combination of these. @@ -48,6 +74,38 @@ null-terminated strings, as bytestrings :: interrupts = <17 0xc>; +- values may be represented as arithmetic, bitwise, or logical expressions + within parenthesis. + +:: + + Arithmetic operators + + + add + - subtract + * multiply + / divide + << left shift + >> right shift + +:: + + Bitwise operators + + && and + || or + +:: + + Logical operators + + < less than + > greater than + <= less than or equal + >= greater than or equal + == equal + != not equal + - A 64-bit value is represented with two 32-bit cells. Example: -- To unsubscribe from this list: send the line "unsubscribe devicetree-spec" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html