FT2000+ PBF编译手册
飞腾pbf文件是飞腾提供用户可配的固件,将其与bios或uboot打包后才可作为完整的启动固件,从而加载操作系统。举例来说,pbf文件就相当于zynq中的fsbl,是飞腾芯片最早执行的代码,然后才轮到bios或uboot。下面简单介绍下pbf编译以及和bios打包,详细的可以找厂家要手册pbf文件在虚拟机中的路径BIOS存放路径只需要替换其中的bios_new即可进行pbf设置运行get_para
·
飞腾pbf文件是飞腾提供用户可配的固件,将其与bios或uboot打包后才可作为完整的启动固件,从而加载操作系统。举例来说,pbf文件就相当于zynq中的fsbl,是飞腾芯片最早执行的代码,然后才轮到bios或uboot。
下面简单介绍下pbf编译以及和bios打包,详细的可以找厂家要手册
pbf文件在虚拟机中的路径
BIOS存放路径
只需要替换其中的bios_new即可
进行pbf设置运行get_parameter中的para.sh文件
其中可以配置cpu主频,ddr主频,ddr通道,pcie链路情况
具体参考飞腾厂家提供的手册
修改完后保存,再执行make,会在上一级目录中产生配置文件
然后进入bios_package文件夹内,执行./build.sh即可编译产生最终的boot.bin文件,该bin文件为最终固化到flash中的文件
build.sh脚本如下
BV=1.0.0
cp ../parameter.bin ./PhytiumPkg/pbf/
BL1NAME=bl1.bin
FIPNAME=fip.bin
PARAMETER_BIN=parameter.bin
ProjectName=FT2000+_14INS
BiosDate=`date +%y``date +%m``date +%d`
BuildTime=`date +%Y``date +%m``date +%d``date +%H``date +%M``date +%S`
BiosName=${ProjectName}_${BV}_${BuildTime}
TARGET=test
echo \#define BUILD_TIME $BuildTime > AutoTime.h
echo \#define BIOS_VERSION $BV >> AutoTime.h
echo \#define BUILD_DATE $BiosDate >> AutoTime.h
echo \$BIOSID$.$ProjectName > BiosId.bin
export PATH=$PATH:~/aarch64-toolchain/gcc-linaro-aarch64-linux-gnu-4.9-2014.08_linux/bin
export PATH=$PATH:$PWD/BaseTools/Source/C/bin
export OUTPUT_DIRECTORY=Build/PhytiumPkg/Phytium
export OUTPUT_DIR=${OUTPUT_DIRECTORY}/${TARGET}_GCC49/FV
export PBF_DIR=PhytiumPkg/pbf
./${PBF_DIR}/fiptool update --nt-fw bios_new ${PBF_DIR}/${FIPNAME} --align 0x10000 --out fipnew.bin
./${PBF_DIR}/fiptool info fipnew.bin
fw=${BiosName}_${TARGET}.bin
cp ${PBF_DIR}/${BL1NAME} $fw
dd if=${PBF_DIR}/phyinit201707.bin of=$fw bs=1M seek=1
dd if=${PBF_DIR}/${PARAMETER_BIN} of=$fw bs=1M seek=2
dd if=fipnew.bin of=$fw bs=1K seek=2560
# Sign BIOS
export KEY_DIR=ByoModulePkg/Bin
# ./${KEY_DIR}/signtool $fw ${KEY_DIR}/private_key.der ${KEY_DIR}/public_key.der $fw
#rm BiosId.bin bios bios_new SetupData.txt fipnew.bin
echo "build end."
更多推荐
已为社区贡献8条内容
所有评论(0)