Bringup // Booting linux from QSPI 1024Mb // JTAG+tftp+sf篇
㈠ 过程预览
⑴ 生成QSPI Flash启动方式所需要的文件
① 生成preloader;
② 生成uboot;
③ 生成dtb;
④ 生成kernel;
⑤ 生成rootfs;
⑵ 上电烧写文件到QSPI Flash
① 设置BSEL/CSEL pin使用QSPI Flash启动;
② JTAG烧写preloader到QSPI Flash;
③ JTAG烧写uboot到QSPI Flash;
④ 配置HPS RGMII网口;
⑤ tftp下载并烧写dtb到QSPI Flash;
⑥ tftp下载并烧写kernel到QSPI Flash;
⑦ tftp下载并烧写rootfs文件QSPI Flash;
⑧ tftp下载并烧写fpga文件QSPI Flash;
⑶ 配置uboot环境变量
⑷ QSPI Flash booting log
㈡ 注意事项
⑴ TAG烧写Flash工具quartus_hps.exe要求文件名扩展名必须为*.bin,否则将会出错。
quartus_hps -c 1 -o PV -a 0x60000 u-boot.img.bin
quartus_hps -c 1 -o PV -a 0x60000 u-boot.img
其它文件同理,故都需要增加扩展名为bin。
⑵ 由于JTAG理论速度是8Mbps,实际中往往达不到,对于14M字节左右的rootfs,烧写比较费时间。为节省时间也可以使用tftp通过RGMII口来sf命令烧写QSPI FLash。
㈢ 步骤细述
⑴ 生成QSPI Flash启动方式所需要的文件
① 生成preloader;
命令:bsp-editor.exe
C:\altera\13.1\embedded\examples\hardware\cv_soc_devkit_ghrd\hps_isw_handoff\soc_system_hps_0
修改BOOT_FROM_QSPI
命令:make
② 生成uboot;
命令:make
③ 生成dtb;
对于QSPI Flash大小:32MByte,每个分区的起始地址、大小及其功能,如下:
故修改soc_system_qspi_flash_booting.dts如下:
修改之后的dts文件:
soc_system_qspi_flash_booting.dts
命令:
dtc -I dts -O dtb -o soc_system_qspi_flash_booting.dtb soc_system_qspi_flash_booting.dts
生成的dtb:
soc_system_qspi_flash_booting.dtb
④ 生成kernel;
步骤⑤同时会生成kernel:
⑤ 生成rootfs;
A)下载链接:
http://releases.rocketboards.org/release/2013.11/gsrd/src/linux-socfpga-gsrd-13.1-src.bsx
B)生成过程:
C)生成后位置:
⑵ 上电烧写文件到QSPI Flash
① 设置BSEL/CSEL pin使用QSPI Flash启动;
② JTAG烧写preloader到QSPI Flash;
命令:
quartus_hps -c 1 -o PV -a 0x0000 preloader-mkpimage.bin
③ JTAG烧写uboot到QSPI Flash;
命令:
quartus_hps -c 1 -o PV -a 0x60000 u-boot.img.bin
④ 配置HPS RGMII网口;
命令:
set ethaddr 01:11:22:33:44:55
setenv serverip 192.168.1.66
setenv ipaddr 192.168.1.55
saveenv
ping $serverip
⑤ tftp下载并烧写dtb到QSPI Flash;
A)tftp Server配置
B)命令:
tftp 0x1000000 soc_system_qspi_flash_booting.dtb
C)命令:
sf erase 0x50000 0x10000
sf write 0x1000000 0x50000 0x10000
⑥ tftp下载并烧写kernel到QSPI Flash;
命令:
tftp 0x1000000 zImage
擦除+烧写QSPI Flash命令:
sf update 0x1000000 0xa0000 0x310000
⑦ tftp下载并烧写rootfs文件QSPI Flash;
命令:
tftp 0x1000000 altera-image-minimal-socfpga_cyclone5.jffs2
擦除+烧写QSPI Flash命令:
sf update 0x1000000 0x800000 0xb40000
⑧ tftp下载并烧写fpga文件QSPI Flash;
命令:
tftp 0x1000000 output_file.rbf
擦除+烧写QSPI Flash命令:
sf update 0x1000000 0x1800000 0x6b0000
⑶ 配置uboot环境变量
命令:
setenv qspifpgaaddr 0x1800000
setenv qspifpga sf probe
$\{qspiloadcs\}\; sf read $\{fpgadata\} $\{qspifpgaaddr\} $\{fpgadatasize\}\;
fpga load $\{qspiloadcs\} $\{fpgadata\} $\{filesize\};
setenv bootcmd
run qspifpga\; run bridge_enable_handoff\; run qspiload\; run qspiboot
saveenv
⑷ QSPI Flash booting log
QSPI_Flash_booting_linux_RGMII.rar
Bringup // Booting linux from QSPI 1024Mb // JTAG+tftp+sf篇,布布扣,bubuko.com
原文:http://www.cnblogs.com/StevenZhan/p/Booting_Linux_from_QSPI_Flash_1024Mbit.html
![Image(5)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213301059123.png)
![Image(6)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213301398945.png)
![Image(7)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213301787592.png)
![Image(8)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213302129367.png)
![Image(9)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213302453565.png)
![Image(10)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213302861742.png)
![Image(11)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213303226953.png)
![Image(12)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213303552127.png)
![Image(13)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213303849960.png)
![Image(14)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213304259113.png)
![Image(22)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213304719045.png)
![Image(23)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213305143822.png)
![Image(15)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213305481691.png)
![Image(16)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213305720934.png)
![Image(17)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213305958223.png)
![Image(18)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213306278515.png)
![Image(32)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213306624196.png)
![Image(33)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213307275522.png)
![Image(34)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213307553824.png)
![Image(35)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213307937589.png)
![Image(36)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213308267646.png)
![Image(37)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213308484429.png)
![Image(38)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213308715859.png)
![Image(39)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213308929713.png)
![Image(40)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213309365232.png)
![Image(41)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213309573226.png)
![Image(42)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213309824187.png)
![Image(43)[4] bubuko.com,布布扣](http://image.bubuko.com/info/201403/20180920213310533126.png)