t113-c-dts学习篇2
dts的makefile
我们来到dts的makefile查看一下我们的板子所编译的代码,此代码表示如果sun8iw20就添加生成board.dtb,可能是因为这个变量还有其他参数吧所以用+=
对于cell的更新补充
其实这款i的cells都是指用多少位来表示地址和大小,并且单位是bytes
dts和dtsi的共同跟文件
dts和dtsi都有/{,即跟文件,但是因为是dts引用的dtsi,所以在model这些应该是以后面的为准,所以可以得到以下情况
dtsi
dts
实际板子:
可见dts定义的以dts为准,否则就以dtsi为准
更正compatible
此关键字是每个节点必须要的,是用来做设备匹配的,尤其是根节点的匹配,如果有设备树则在uboot启动内核时候匹配,如果没有则用设备id匹配
function
此关键字一般都是废弃的,如果不想要也可以不写
特殊节点aliases
此节点是uboot的时候会在dev里面产生设备外设用的,同时方便访问,我们设置用设备树的时候一般用不到。因为都是直接用的label
特殊节点chosen
chosen 并不是一个真实的设备, chosen 节点主要是为了 uboot 向 Linux 内核传递数据,重点是 bootargs 参数。一般.dts 文件中 chosen 节点通常为空或者内容很少
我也不知道为什么t113的boottargs自己设置的,一般都是uboot生成的
晶振节点
此节点是用来供给uboot和内核用的,用到的时候会在此搜寻添加