参考资料:
ZYNQ U-BOOT 鉴权和解密方法(authentication和decryption) 来自 <https://blog.csdn.net/cph77777/article/details/79708982>
主要内容:
uboot中下载加密的PL文件;
开发环境:
windows 7 x64 + vivado2017.4 + SDX2017.4
vmware12中(ubuntu16.04.3 + vivado2017.4 + SDX2017.4)
uboot中下载加密的PL文件
1. U-Boot 命令配置:
最新的 2018.01版本的UBOOT中添加解密命令: zynqrsa 和 zynqaes; 并用生成的uboot.elf制作启动boot.bin文件。
2. 制作加密PL文件:
步骤1: 鼠标右键单击生成的 fsbl --> "create boot image"
步骤2: 设置好加密选项后, 并勾选上“split”拆分成独立的加密文件。
点击按键“create image”后生成多个加密文件,其中jm600_v30.bit.bin是PL的加密文件。
3. 下载加密PL文件:
将PL的加密文件jm600_v30.bit.bin复制到SD卡,上电启动到uboot中,通过zynqaes命令解密并下载到PL
读取加密PL文件到DDR内存0x10000000位置;
Uboot> fatload mmc 0 0x10000000 jm600_v30.bit.bin
reading fpga.bit.bin
4044672 bytes read in 237 ms (16.3 MiB/s)
Uboot>
将加密下载加密文件;
Uboot> zynqaes load 0x10000000 ${filesize}
zynq_decrypt_load: FPGA config done
Uboot>
4. 编辑uboot的启动脚本,上电时自动下载加密PL文件:
请参考文章: 《zynq7000采用Nandflash 启动系统》