zynq 7020如何清除flash的内容,因为sdk tool无此功能
zynq 7020如何清除flash的内容?清除完,还有很多小白都不会配置bootenv,这些都是要大量的实际经验的,这些因为是通用知识,所以没有侵权公司产品,可以和大家讲解一下。
第一步:当我们做好FPGA工程后,生成的hdf和BIT后,我们要新建一个BSP包。
第二步:打开BSP里的system.mss
第三步:新建一个QSPI工程:
可以用最快的方式来做一个例程。
第四步:
代码里有ERASE函数
/*
* Erase the flash.
*/
FlashErase(QspiInstancePtr, TEST_ADDRESS, MAX_DATA);
可以清除了,后面你懂了吧?
如果还是觉得麻烦,还有一招用U-BOOT的sf erase指令。
uboot> sf erase 0 0x200000
// Erase 2MB from QSPI offset 0x0
// Note: If erase size is less than QSPI Flash page size, u-boot reports erase error
好了,上面是容易的,下面就是难的了,这个就更考验U-BOOT的能力了,就是setenv的部分。
先要理解一下BOOT这个函数有三种方式,看你的工程用的是哪个KERNEL来定了。
Boot application images
• booti: 引导ARM64 kernel image—-Image;
• bootz: 引导ARM kernel image—-zImage;
• bootm: 引导u-boot自定义的kernel image—-uImage。
相信小白一般都是用PETALINUX自己做的image.ub了,做个例子如下:
setenv default_bootcmd ‘fatload mmc 0 0x1000000 image.ub && bootm 0x1000000’
再讲下去就更难了,你们先消化一下吧。