飞腾基于 VPX、COMe、Mini-ITX 等主流标准板卡接口协议设计了多款 E2000 行业开发板,用于提升研发效率。E2000实际使用中会有采用uboot来引导系统启动的情况。
本文以飞腾E2000D电力开发板为例,简单介绍下E2000使用uboot引导启动系统的整个过程。这个启动过程不严谨的分解,由uboot、环境变量、设备树、内核、文件系统组成。下面我们逐项说明。
一、uboot
首先,uboot是广义上的称呼,飞腾的uboot固件由多个部分组成的。
固件生成过程大体分成三个步骤,
1.编译系统固件。根据选用的系统固件(SFW)编译UEFI或U-Boot的源码,生成PHYTIUM.fd或u-boot.bin,将其重命名为bl33_new.bin,做为备用。
2.低速引脚复用配置。通过 E2000 LSD复用工具进行低速引脚复用配置,生成文件pad_set.bin,做为备用。
3.打包。通过 PBF 打包工具,配置板级参数和高速引脚复用,最后生成文件 fip-all.bin,该文件可直接烧录到FLASH中,用于启动。
Uboot固件的制作,基本可以参考原桌面CPU的操作过程和环境。
与桌面CPU操作的区别是E2000有低速引脚,需要使用专用的配置工具生成pad_set.bin文件,并且最后一并打包到固件中。
二、环境变量
uboot的环境变量设置完全可以参考网上的资料,这里飞腾没有任何特殊的地方。主要需要确定的就是设备树、内核和文件系统在板卡存储设备(sata、nvme、sd等)中的位置和加载地址。既然要设置这些文件的位置,那么我们就不得不介绍存储设备里文件的制作。所以环境变量我们先放一放,我们先看后面,设备树、内核和文件系统。
三、设备树、内核和文件系统
设备树、内核和文件系统最终是要存到存储设备中的,那么我们首先就要准备好文件,其次处理好存储设备,最后就是把准备好的文件存放到存储设备中。
3.1 文件准备
我们以汉为的E2000D电力开发板为例来讲解。
我们要准备三个文件,设备树、内核、文件系统。分别为:e2000d-power-board.dtb、Image、rootfs.tar.xz。