操作方法在《Hi3519V101/Hi3516AV200 U-boot 移植应用开发指南.pdf》中有说明,可能是自己理解的问题吧,没有一次成功。so,还是趁热记录下来。主要是在文档说明的基础上增加一点自己操作时碰到的问题的说明。
配置编译环境
- 进入U-boot源码路径
cd /Downloads/Hi3519V101_SDK_V2.0.5.0/osdrv/opensource/uboot // 进入源码存放路径uboot tar -zxf u-boot-2010.06.tgz // 源码没有解压,先解压出来 cd u-boot-2010.06/ // 进入到源码路径,后续操作在此处进行
- 当启动介质是 eMMC 、 SPI-Nor Flash 或 SPI-NAND Flash 时,使用配置命令:
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3519v101_config // uclibc工具链 或者 make ARCH=arm CROSS_COMPILE=arm-hisiv600-linux- hi3519v101_config // glibc工具链
- 当启动介质是 NAND Flash 时,使用配置命令:
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3519v101_nand_config // uclibc工具链 或者 make ARCH=arm CROSS_COMPILE=arm-hisiv600-linux- hi3519v101_nand_config // glibc工具链
文档在这个步骤的最后有这么一句话,这是错误的!!!配置编译环境不会生成任何文件!!!不要去找啥文件了,进行下一步。
编译U-boot
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- // uclibc工具链
或者
make ARCH=arm CROSS_COMPILE=arm-hisiv600-linux- // glibc工具链
命令执行完成后,可在目下找到u-boot.bin
文件。文档里有明确说明,u-boot.bin
只是一个中间文件,不是在最终运行在板子上运行的镜像。
配置DDR 存储器(可选)
在 Windows 下打开 SDK 中的“ osdrv/ tools/pc/uboot_tools/ ”目录下的配置表格。当选用不同的 DDR SDRAM 时,需要针对不同器件的特性,对配置工作表中的标签页mddrc_dmc0
和mddrc_phy0
进行修改。
配置管脚复用(可选)
如果管脚复用有变化,还需要对配置表格中的标签页multiplex
进行修改。
完成配置表格的修改后,保存表格。单击表格第一个标签页上的按钮
Generage reg bin file
,注意:只能点此按钮,生成临时文件 reg_info.bin 。生成最终使用的U-boot镜像
将编 译得到的u-boot.bin拷贝到SDK中“osdrv/tools/pc/uboot_tools/”目录下:
cp -i u-boot.bin /home/ubuntu/Downloads/Hi3519V101_SDK_V2.0.5.0/osdrv/tools/pc/uboot_tools/
切换到SDK中“osdrv/tools/pc/uboot_tools/”目录下:
cd /home/ubuntu/Downloads/Hi3519V101_SDK_V2.0.5.0/osdrv/tools/pc/uboot_tools/
执行下面命令生成u-boot的最终镜像:
./mkboot.sh reg_info.bin u-boot-hi3519v101.bin
得到的u-boot-hi3519v101.bin
即为最终的镜像文件。
网友评论