我们使用
Digilent公司提供的uboot作为Second Stage Boot Loader(SSBL)。SSBL用于加载压缩的linux内核镜像,设备树文件,根文件系统到内存中,并解压linux镜像,初始化并将CPU控制权交给linux内核。在前面提供的地址
https://github.com/Digilent/u-boot-digilent下载uboot。如果是在windows中下载,请在下载完成之后拷贝到ubuntu中。以下操作都在ubuntu中进行。请提前安装好Ubuntu 12.04 LTS。我将下载的uboot压缩文件u-boot-digilent-master放在/home/dc/Desktop/zedboard/目录中
![](data/attach/1907/d6pfzf04054qmlojma3g6971ls0yrrcp.jpg)
解压
![](data/attach/1907/mldvo0wh6d3pc7qpcpyqw72v7f7sdemw.jpg)
![](data/attach/1907/cawvk4fgb6tb2btj8whya3zjovz1hv74.jpg)
解压完成后,进入目录我们修改默认的uboot配置文件,文件在目录include/configs/zynq_zed.h
![](data/attach/1907/ao6nn7pzbngaqz3tc5hig31y2e100lfi.jpg)
我们可以配置
Zedboard的ip地址,终端提示符,以及启动的zImage,devicetree,ramdisk的文件名等。
![](data/attach/1907/znuf4r94r5yt3bd4rk9iae6p0nm1mods.jpg)
不过默认也可以。接下来我们使用上一章安装好的交叉编译工具编译
uboot。使用如下命令进行默认配置make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi- zynq_zed_config使用如下命令编译make ARCH=arm CROSS_COMPILE=arm-xilinx-linux-gnueabi-一定要指定目标平台和交叉编译器,以免出现不必要的错误。编译完后,使用
mv命令将u-boot重命名为u-boot.elf ![](data/attach/1907/tltwk5yqhh6wy2aimt5a9xpkwuu8iba1.jpg)
至此,
uboot制作完成。