九、编译设备树dts为dtb
前面的linux内核源码目录中已经包含了设备树编译器Device Tree Compiler(dtc),在目录arch/arm/boot/dts/目录下。
将前面生成的xilinx.dts文件拷贝到ubuntu下,使用如下命令进行编译
dtc -I dts -O dtb -o devicetree.dtb xilinx.dts
上面Dtc编译器有几个选项和参数:
-I是输入文件格式,在本文中是dts
-O是目标文件格式,在本文中是dtb
-o是目标文件路径
最后一个参数是输入文件路径
编译之后会在目标文件路径生成一个dtb文件,这个文件名必须按照前面uboot默认配置中的文件进行命名,本文中是devicetree.dtb。
至此,dtb文件生成完成。
十、制作根文件系统
为了发挥linux的强大功能,必须要挂载一个文件系统到linux上,嵌入式linux只挂载一个根文件系统,并不再挂载其他的文件系统。
根文件系统可以基于busybox进行制作,过程比较繁琐,本文不再赘述,读者可以在网络上查找资料。
为了正常进行实验,本文使用ZedBoard配套SD卡中自带的ramdisk8M.image.gz。
读者可以使用gzip -d ramdisk8M.image.gz解压ramdisk镜像并挂载在某个目录下,在其中添加需要的功能后,再使用gizp -9 ramdisk8M.image 压缩回来。
文章来源:DC的陋室
声明:本文为授权转载文章,如需转载请联系作者,谢谢!