ZYNQ之生成设备树

1.下载用于生成device-tree文件的资源包
2.将压缩包解压后放置在SDK\2015.4\data\embeddedsw\lib\bsp文件下
3.打开SDK后进入 Xilinx Tools->Respositories ,在Local Repositories中点击New,找到并加载刚才复制的设备树文件夹目录,然后点击Rescan Repositories,点击OK完成配置
4.点击 File -> New -> Xilinx Board Support Package ,并在 Board Support Package OS 选择device_tree
5.然后在弹出的窗口中,在bootargs一栏输入:
console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=0
其他可保持不变,点击OK。
6.然后就在该工程目录下生成了一个设备树文件夹
7.生成设备树需要的主要文件为pcw.dtsi、system-top.dts、zynq-7000.dtsi ,其中zynq-7000.dtsi是Zynq系列通用的设备树文件;而pcw.dtsi则包含我们在fsbl工程创建时,在原理框图设计中进行IO配置的外设接口;system-top.dts是最终生成设备树所需要的文件,他通过include方式包含了pcw.dtsi和zynq-7000.dtsi。这三个文件是设备树生成所需的文件。
(SDK自动生成的设备树文件并不能直接使用,因此需要进一步的编写才可以作为最终文件去编译,编写规则需要进一步研究。)
在进行下一步之前也可以将pcw.dtsi复制到system-top.dts内部从而可以删除掉include部分。
8.将三个文件复制到linux中使用下载好的linux内核去编译sys-top.dts具体指令为
./scripts/dtc/dtc -I dts -O dtb -o devicetree.dtb ./devicetree_zc703/system-top.dts
执行完相应指令后即可生成devicetree.dtb设备树文件。
9.将生成的设备树文件替换U盘boot分区中的设备树文件即可。

注:dts也可以从一个DTB文件或/proc/device-tree文件系统反编译。例如从DTB反编译:
$ scripts/dtc/dtc -I dtb -O dts -o /path/to/fromdtb.dts /path/to/booted_with_this.dtb

你可能感兴趣的:(ZYNQ)