本文介绍如何使用dtb启动内核。内容非常详细。感兴趣的朋友可以参考一下,希望对你有所帮助。
主要是用dtb启动LINUX内核。用dtb启动linux内核的主要原因是使用DTB可以减少LINUX内核版本的数量。相同的linux内核代码可以在多个板上运行,每个板都可以使用自己的dtb文件。
旧的u-boot以ATAGS的方式启动了linux内核。本文采用新的dtb来启动内核。
我使用的内核是linux-3.17.2,下面我将开始编译内核。
(1)解压内核。
tarjxfrinux-3 . 17 . 2 . tar . bz2
(2)配置linux内核。由于am335x在内核中属于omap2系列,因此可以使用以下命令:
make arch=armomap2plus _ def config
(3)编译内核:
make arch=ArmCross _ COMPILE=arm-Linux-gnueabi-j8
我的linux工具链前缀是arm-linux-gnueabi-,需要根据我的实际工具链情况进行更换。
(4)编译dtb:
make arch=ArmCross _ COMPILE=arm-Linux-gnueabi-am 335 x-EVM . dtb
(5)制作启动盘:
将SD格式化为FAT系统,并将MLO和u-boot.img复制到根目录。
在根目录下创建一个引导目录,并将编译后的zImage和am335x-evm.dtb复制到这个目录。
(6)通过u-boot命令行启动Linux内核。
load MMC 00x 88000000/boot/am 335 x-EVM . dtb
loadmmc00x82000000/boot/zImage
bootz0x82000000-0x88000000
此时,就可以启动Linux内核了。
如何使用dtb启动内核,希望在这里分享。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/65917.html