了解基本的dts知识之后,就可以为编写自己的dts文件了。Forlinx的OK335xD核心板和底板包含的资源有NANDFLASH、SDRAM、MMC、LCD、UART、USB、ETHERNET等等,因此dts文件必须要提供对它们正确的描述。
第一步,复制相近硬件的dts文件:
am335x-bone.dts -> maria_am335x.dts
am335x-bone-common.dtsi -> maria_am335x-common.dtsi
相比较于从头重新编写所有内容,在相近硬件的基础上修改会简单得多。am335x-bone开发板使用了TPS65217作为PMIC芯片,因此在它的基础上进行修改。
第二步,修改第一个文件maria_am335x.dts的内容:
#include "am335x-bone-common.dtsi" 改为
#include "maria_am335x-common.dtsi"
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
无需修改的代码:
&ldo3_reg {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
&sham {
status = "okay";
};
&aes {
status = "okay";
};
&ldo3_reg是tps65217其中的一个输出。此描述表示tps65217的LDO3输出电平范围为1.8V~3.3V,并一直打开。
&sham 表示 SHA crypto Module!
&aes 表示 AES crypto Module!
(****找了半天也不知道这俩个东东到底是神马~?内存映射里面它们的地址也是reserved!)
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
总结:
maria_am335x.dts的内容非常少,因为大部分的描述并没有放置在这里,而是在更底层;
如果在这个文件里加入从未有过的描述,则描述会被添加;
如果在这个文建立加入底层已有的描述,则描述会覆盖底层;
这样的策略保证了底层的通用代码基本不需要修改,all you have to do,就是更改和你的板子相关的两个文件xx.dts和xx-common.dts!
DiracFatCat 2014-10-27 09:21
用户377235 2014-10-25 07:23