Device tree mechanisms
A DT is enabled in the kernel by setting the CONFIG_OF
option toY
. In order to pull the DT API from within your driver, you must add the following headers:
#include <linux/of.h> #include <linux/of_device.h>
A DT supports a few data types. Let's have a look at them with a sample node description:
/* This is a comment */ // This is another comment node_label: nodename@reg{ string-property = "a string"; string-list = "red fish", "blue fish"; one-int-property = <197>; /* One cell in this property */ int-list-property = <0xbeef 123 0xabcd4>; /*each number(cell)is a *32 bit integer(uint32). *There are 3 cells in *this property */ mixed-list-property = "a string", <0xadbcd45>, <35>, [0x01 0x23 0x45] byte-array-property = [0x01 0x23 0x45 0x67]; boolean-property; };
The following are some definitions of data types used in DTs:
- Text strings...