Hi3520D 制作U-boot uImage 根文件系统

时间:2023-01-25 16:30:32

1      生成U-boot

基于Hi3520D_SDK_V1.0.5.0

1.1             编译U-boot

在Hi3520D_SDK_V1.0.5.0/osdrv/uboot目录下运行

make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- hi3520d_config

make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux-

编译成功后,在 U-boot 目录下生成 u-boot.bin; 这一步生成的 u-boot.bin 只是一个中间件,并不是最终在单板上执行的 U-boot 镜像

1.2             生成最终使用的U-boot镜像

拷贝上面生成的u-boot.bin 到Hi3520D_SDK_V1.0.5.0/osdrv/tools/pc_tools/uboot_tools目录下;并在此目录下运行

mv reg_info_Hi3515A-bvt_No1_600_300_600_ddr_innerFEPHY.binreg_info_hi3515a.bin

mv reg_info_Hi3520D-bvt_No1_660_330_660_ddr_innerFEPHY.binreg_info_hi3520d.bin

./mkboot-hi3520d.sh reg_info_hi3515a.bin reg_info_hi3520d.binu-boot-hi3520d-wzt2016.bin

文件u-boot-hi3520d-wzt2016.bin 及为最终镜像文件

说明:     文件 reg_info_Hi3515A-bvt_No1_600_300_600_ddr_innerFEPHY.bin

文件reg_info_Hi3520D-bvt_No1_660_330_660_ddr_innerFEPHY.bin

         都是SDK自带的文件,如果没有的话,需要手动生成;单击表格第一个标签页上的按钮“Generage reg bin file”,生成临时文件 reg_info.bin

2      生成Linux内核

基于Hi3520D_SDK_V1.0.5.0

配置内核之前需要将Hi3520D UART2UART3加载到内核以及在内核中复用UART2UART3管脚;配置为串口功能;

2.1             配置内核

在Hi3520D_SDK_V1.0.5.0/osdrv/kernel目录下运行

cp arch/arm/configs/hi3520d_full_defconfig.config

make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- menuconfig

2.2             编译内核

在Hi3520D_SDK_V1.0.5.0/osdrv/kernel目录下运行

make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- uImage

uImage 为最终使用的内核

2.3             在内核中编译驱动模块

在Hi3520D_SDK_V1.0.5.0/osdrv/kernel目录下运行

make ARCH=armCROSS_COMPILE=arm-hisiv100nptl-linux- modules