S04_CH03_QSPI烧写LINUX系统

S04_CH03_QSPI烧写LINUX系统

3.1概述

3.2搭建硬件系统

本章硬件工程还是使用《S04_CH01_搭建工程移植LINUX/测试EMMC/VGA》所搭建的VIVADO工程。

3.3修改内核文件

Step1:切换到管理员模式

wps5AD1.tmp

Step2:切换到scripts目录下,执行source setup_env.sh(注意source和“.”是一致的),并将scripts.tar.gz中的两个脚本放到scripts目录下,通过这两个脚本可以打包QSPI镜像和将QSPI镜像烧录至QSPI中。本项目是基于上一个项目工程。

wps5AD2.tmp

Step4:切换到bootloader源码目录,打开include/configs/zynq-common.h文件

wps5AD3.tmp

Step5:修改以下内核、设备树及内存文件系统在QSPI的起始位置如Step6所示:

wps5AE4.tmp

Step6:QSPI的起始位置放置FSBL、FPGA比特流和uboot,文件大小大概是5MB,所以内核的存放位置从0x500000开始,而这里同样给内核留5MB,当然,如果你的内核增加更多配置或减少配置,可以适当修改,这样的话,设备树就需要从0xA00000位置开始存放,然后留给设备树的空间大概是2K,即从0xA20000开始存储文件系统,这样ramdisk的大小就应该是0x15E0000,当然,内核默认支持8MB

wps5AE5.tmp

Step7:打开zynq-zed.dts,找到qspi节点,这里把原有的分区删掉,当然,你也可以根据刚才对QSPI的分区,做对应的修改。可以出从SD启动或从QSPI启动Linux,然后在系统里更新QSPI镜像。

wps5AE6.tmp

wps5AE7.tmpwps5AF8.tmp

3.3编译内核及uboot

Step1:执行mk_bootloader.sh编译bootloader源码

wps5AF9.tmp

Step2:执行mk_kernel.sh编译kernel源码

wps5AFA.tmp

3.4制作qspi镜像

Step3:制作qspi镜像,制作完毕后,可以在images/qspi_image目录下看到qspi_image.bin镜像

wps5B0A.tmp

wps5B0B.tmp

3.5安装screen

Step1:安装screen,可以直接在Ubuntu系统下查看串口调试信息,当然,你也可以在Windows下使用putty之类的

wps5B0C.tmp

Step2:输入 /dev/ttyUSB0正是串口

wps5B1D.tmp

3.6一件烧写YIJIANQSPI FLASH

接下JTAG并打开开发板电源,执行program_qspi_flash.sh将QSPI镜像烧录到QSPI芯片上,或许会出现以下错误,没关系,此时因为驱动还没有加载,重新执行一次。wps5B1E.tmpwps5B1F.tmp

3.7烧写QSPI FLASH 2

如果确实不行,那么打开SDK来烧录吧

wps5B20.tmp

如果是切换到su的话,可能会提示没有找到license,那么把/home/osrc/.Xilinx目录复制到/root/目录下

wps5B30.tmp

wps5B31.tmp

烧录完毕后,重启开发板,当然,请先确保调整启动模式为从QSPI启动,在Ubuntu下打开串口终端

wps5B32.tmp

即可以看到以下信息

wps5B43.tmp

在HDMI显示器上也可以看到相关信息。

wps5B44.tmp

posted on 2017-03-01 15:37  米联客小号  阅读(2142)  评论(1编辑  收藏  举报