嵌入式开发--第三章 FSBL工程移植

2013年12月11日 08:43
转载(0) / 评论(0) / 浏览(983)

1.1.1          FSBL文件创建

Xilinx arm的启动过程分为两个部分FSBL+UBOOT

(1)     这里假设应经创建了一个硬核,并导入到SDK中,此时SDK环境下只有hw_plate工程。

(2)     创建BSP,具体操作过程详见以前章节。

(3)     导入FSBL工程,


Fig 1


Fig 2

从开发板的配套文件中选择要导入fsbl工程。


Fig 3

(4)     配置工程关联


Fig 4修改相关联的工程

        

 

(5)     配置include路径


Fig 5  修改包含文件的路径1


Fig 5修改包含文件的路径2

(6)     配置lib路径

将原有的library path修改为工程目录下library路径,如/standalone_bsp/ps3_cortexa9_0/lib


进行如上配置后再编译时仍然会存在宏定义找不到的错误,这是因为自动生成的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工程后,编译环境如下


Fig 1

现在编译整个工程,右击”zynq_fsbl”工程,选择build project。如果出现问题请解决,否则继续

编译完的文件位于zynq_base_trd_14_3/sw/zynq_fsbl/Debug/zynq_fsbl.elf。

1.1.2          配置和编译u-boot

bash> make zynq_zc70x_config

bash> make

编译uboot.uboot的可执行文件位于 zynq_base_trd_14_3/u-boot-xlnx/u-boot。

重命名u-boot文件为u-boot.elf,elf文件用于生成boot image。

bash> mv u-boot u-boot.elf

1.1.3          编译生成启动文件

(1)将4.3.1生成的zynq_fsbl.elf,4.3.2生成的u-boot.elf拷贝到SDK工程目录下

(2) 在SDK中打开创建的工程。

   菜单xilinx—>Create Zynq BootImage


Fig 1

弹出如下窗口,该窗口中需要添加刚才生成的文件,文件需要按照zynq_fsbl.elf,system_stub.bit(或者system.bit),u-boot.elf的顺序添加,然后指明存储路径,最后按”Create Image”按钮,生成boot image文件


Fig 2

在指定的存储目录下会生成一个u-boot.bin文件,将该文件重命名为BOOT.bin,这样做是为了方便FSBL找到这个文件。

如果在创建镜像时,bif file项不是选的Create a new bif file…,可能会出现如下错误。

评论(0)

发表评论
登录
我可以
  • 评论
关联标签
SDK × 1
FSBL × 1
UBOOT × 1
关联热门电子辑
类似的技文

浏览(975) / 评论(0) / 2013年9月30日 22:27

浏览(531) / 评论(0) / 2013年9月30日 22:49

浏览(499) / 评论(0) / 2013年12月11日 08:19

浏览(3515) / 评论(0) / 2014年1月15日 10:44

浏览(970) / 评论(0) / 2013年9月30日 22:27

浏览(662) / 评论(0) / 2013年9月30日 22:49

浏览(348) / 评论(0) / 2013年12月11日 08:40

浏览(1058) / 评论(0) / 2014年1月3日 11:08

浏览(823) / 评论(0) / 2014年1月15日 10:47