zynq-7000系列基于zynq-zed的linux-uboot的编译

zynq-7000系列基于zynq-zed的linux-uboot的编译


      

                              作者:卢浩  

                                     时间:2017.2.13

                                    转载请注明出处

                                                                 嵌入式爱好者开发群:122879839


            前言:大家好,好久不见,上一次更新博客已经是4年前了,这些年一直在跟arm打交道,从ARM9到Cortex-A72,也算有一些心得。我会一边更新文章,一遍和大家交流分享。

     首先去git上下载zynq的uboot,https://github.com/Xilinx/u-boot-xlnx/releases。

     zynq-7000系列基于zynq-zed的linux-uboot的编译_第1张图片


大家可以自己选自己需要的,我目前用的是2015.4.

编译器我目前用的是arm-linux-gcc-5.2版本的.编译器可以在这里下载 https://releases.linaro.org/components/toolchain/binaries/

如图:

zynq-7000系列基于zynq-zed的linux-uboot的编译_第2张图片

下面是编译口令:

# make distclean
# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zynq_zed_config
# make -j4
# mv u-boot u-boot.elf

首先清除 make distclean,接下来选择zynq_zed_config,用4核同时编译 make -j4 , 最后把u-boot手动改名为u-boot.elf。这是合成BOOT.BIN需要用到的文件。


如果涉及到修改环境变量的话,请进入到include/configs/zynq-common.h进行修改。注意一个问题,就是uboot默认的env环境变量保存的位置,

define CONFIG_ENV_OFFSET           0xE0000 这个容易跟融合后的BOOT.BIN存储的位置起冲突,所以我把OFFSET调整到了0x3B00000。

另外一个就是涉及到修改DDR SIZE的大小,include/configs/zynq_zed.h修改#define PHYS_SDRAM_1_SIZE (512 * 1024 * 1024),我记得最大只支持到1GB。

zynq-7000系列基于zynq-zed的linux-uboot的编译_第3张图片


你可能感兴趣的:(ARM-LINUX,ZYNQ)