Znyq-7000综合开发文档
Fig 2
从开发板的配套文件中选择要导入fsbl工程。
Fig 3
(4) 配置工程关联
Znyq-7000综合开发文档
Fig 4修改相关联的工程
(5) 配置include路径
Znyq-7000综合开发文档
Fig 5 修改包含文件的路径1
Fig 5修改包含文件的路径2 (6) 配置lib路径
将原有的library path修改为工程目录下library路径,如/standalone_bsp/ps3_cortexa9_0/lib
Znyq-7000综合开发文档
进行如上配置后再编译时仍然会存在宏定义找不到的错误,这是因为自动生成的bsp驱动中的宏定义跟程序中的不一致导致。
(6)修改FSBL文件
1. fsbl_hooks.c
该文件完成外设的初始化工作,用户可在该文件中添加需要的外设初始化代码。 >>>> u32 FsblHookAfterBitstreamDload(void) 修改这个函数,函数在fpga配置完后运行以初始化fpga的外设,这里将不需要初始化的外设初始化代码删掉或添加自己的外设初始化代码。
2. i2c_utils.c
I2C操作函数和i2c外设的初始化函数实现。 3. ps7_init.c 初始化硬件平台,设置相关寄存器 其他文件: Ps7_init.html,ps7_init.tcl这两个是自动产生的文件,先不关注。 (7)编译First Stage Boot Loader (FSBL) 添加完fsbl工程后,编译环境如下
Znyq-7000综合开发文档
Fig 1
现在编译整个工程,右击”zynq_fsbl”工程,选择build project。如果出现问题请解决,否则继续 编译完的文件位于zynq_base_trd_14_3/sw/zynq_fsbl/Debug/zynq_fsbl.elf。 1.2.2 编译u-boot
(1) 创建uboot副本
bash> cd zynq_base_trd_14_3/u-boot-xlnx
bash> git checkout -b zynq_base_trd_14_3 xilinx-14.3-build2-trd (2)配置和编译uboot.
bash> make zynq_zc70x_config
编译uboot.uboot的可执行文件位于 zynq_base_trd_14_3/u-boot-xlnx/u-boot. bash> make
重命名uboot文件为u-boot.elf,elf文件用于生成boot image。 bash> mv u-boot u-boot.elf 编译生成启动文件
(1)将4.3.1生成的zynq_fsbl.elf,4.3.2生成的u-boot.elf拷贝到SDK工程目录下 (2) 在SDK中打开创建的工程。
菜单xilinx—>Create Zynq BootImage
1.2.3
Fig 1
弹出如下窗口,该窗口中需要添加刚才生成的文件,文件需要按照zynq_fsbl.elf,system_stub.bit(或者system.bit),u-boot.elf的顺序添加,然后指明存储路径,最后按”Create Image”按钮,生成boot image文件