实际上,我正试图在我的Zedboard上引导linux (有zync SoC和ARM corders-A9处理器)。但没有成功。在这里,我将分享到现在的故事:-
1-我已对我的SD卡进行了第一次分区,并将其命名为Boot,并在此复制了以下内容:
BOOT.bin uEnv.txt devicetree.dtb uImage uramdisk.image.gz
现在,我试图从SD卡引导它,但它没有发生,我得到了以下信息。在这条消息中,我特别强调了错误消息,以及我在我的tty终端中得到的其他相关消息。
U-Boot 2014.01 (Oct 08 2016 - 12:33:09)
I2C: ready
Memory: ECC disabled
DRAM: 512 MiB
MMC: zynq_sdhci: 0
SF: Detected S25FL256S_64K with page size 256 Bytes, erase size 64 KiB, total 32 MiB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: Gem.e000b000
Hit any key to stop autoboot: 3 2 1 0
Device: zynq_sdhci
Manufacturer ID: 27
OEM: 5048
Name: SD04G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 3.7 GiB
Bus Width: 4-bit
reading uEnv.txt
226 bytes read in 7 ms (31.3 KiB/s)
Loaded environment from uEnv.txt
Importing environment from SD ...
Running uenvcmd ...
Device: zynq_sdhci
Manufacturer ID: 27
OEM: 5048
Name: SD04G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 3.7 GiB
Bus Width: 4-bit
reading uImage
4150864 bytes read in 399 ms (9.9 MiB/s)
reading devicetree.dtb
9275 bytes read in 16 ms (565.4 KiB/s)
reading uramdisk.image.gz
18047061 bytes read in 1698 ms (10.1 MiB/s)
**Wrong Image Format for bootm command**
**ERROR: can't get kernel image!**
Copying Linux from SD to RAM...
reading uImage
4150864 bytes read in 399 ms (9.9 MiB/s)
reading devicetree.dtb
9275 bytes read in 16 ms (565.4 KiB/s)
reading uramdisk.image.gz
18047061 bytes read in 1698 ms (10.1 MiB/s)
**Wrong Image Format for bootm command**
**ERROR: can't get kernel image!**
zynq-uboot> 3.我的uenv.txt文件内容如下:
boot_Zed=mmcinfo;fatload mmc 0 0x3000000 ${kernel_image}; fatload mmc 0 0x2A00000 ${devicetree_image}; fatload mmc 0 0x2000000 ${ramdisk_image}; bootm 0x3000000 0x2000000 0x2A00000
uenvcmd=run boot_Zed 4-我通过以下命令创建了ramdiskimage映像:
mkimage -A ARM -T ramdisk -C gzip -n 'ZED filesystem' -d ramdisk.image.gz uramdisk.image.gz在执行上述命令时,我收到以下消息:
Image Name: ZED filesystemCreated:
Mon Oct 24 10:40:13 2016
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 18046997 Bytes = 17624.02 kB = 17.21 MB
Load Address: 00000000
Entry Point: 00000000这是我在评论中所要求的printenv列表:-
baudrate=115200 bitstream_image=system.bit.bin boot_image=BOOT.bin boot_size=0xF00000 bootcmd=run $modeboot bootdelay=3 bootenv=uEnv.txt devicetree_image=devicetree.dtb devicetree_size=0x20000 ethact=Gem.e000b000 ethaddr=00:0a:35:00:01:22 fdt_high=0x20000000 importbootenv=echo从SD导入环境.;env导入-t ${loadbootenv_addr} $filesize initrd_high=0x20000000 ipaddr=10.10.70.102 jtagboot=echo TFTPing Linux到RAM..。&& tftpboot 0x3000000 ${kernel_image} && tftpboot 0x2A00000 ${devicetree_image} && tftpboot 0x2000000 ${ramdisk_image} && bootm 0x3000000 0x2000000 0x2A00000 kernel_image=uImage kernel_size=0x500000 loadbit_addr=0x100000 loadbootenv=fatload mmc 0 ${loadbootenv_addr} ${bootenv} loadbootenv_addr=0x2000000 mmc_loadbit_fat=echo将位流从SD/MMC/eMMC加载到RAM。& mmcinfo && fatload mmc 0 ${loadbit_addr} ${bitstream_image} && fpga加载0 ${loadbit_addr} ${filesize} modeboot=sdboot nandboot=echo将Linux从NAND复制到内存.- && nand读0x3000000 0x100000 ${kernel_size} && nand读0x2A00000 0x600000 ${devicetree_size} &&回波复制磁盘。&& nand读为0x2000000 0x620000 ${ramdisk_size} && bootm 0x3000000 0x20000000x2A00000 norboot=echo将Linux从或闪存复制到内存中.采购产品名称:公司名称:上海市发布日期:上海市发布日期:上海市发布时间:2009-4-15&& cp.b 0xE2620000 0x2000000 ${ramdisk_size} && bootm 0x3000000 0x2000000 0x2A00000 qspiboot=echo将Linux从QSPI闪存复制到内存..。& sf探针0 0 0 && sf读取0x3000000 0x100000美元{kernel_size} && sf读0x2A00000 0x600000美元{devicetree_size}&回声拷贝磁盘。&& sf读为0x2000000 0x620000 ${ramdisk_size} && bootm 0x3000000 0x20000000x2A00000 ramdisk_image=uramdisk.image.gz ramdisk_size=0x5E0000 rsa_jtagboot=echo TFTPing图像到内存..。&& tftpboot 0x100000 ${boot_image} && zynqrsa 0x100000 & bootm 0x3000000 0x2000000 0x2A00000 rsa_nandboot=echo从NAND复制图像到内存。&& nand读为0x100000 0x0 ${boot_size} && zynqrsa 0x100000 & bootm 0x3000000 0x2000000 0x2A00000 rsa_norboot=echo从或闪存复制图像到内存.&& cp.b 0xE2100000 0x100000 ${boot_size} & zynqrsa 0x100000 & bootm 0x3000000 0x2000000 0x2A00000 rsa_qspiboot=echo将图像从QSPI复制到内存中。&& sf探针0 0 0 && sf读0 x100000 0x0 ${boot_size} && zynqrsa 0x100000 && bootm 0x3000000 0x2000000 0x2A00000 rsa_sdboot=echo从SD复制图像到内存.&& fatload mmc 0 0x100000美元{boot_image} && zynqrsa 0x100000 & bootm 0x3000000 0x2000000 0x2A00000 sdboot=if mmcinfo;然后运行uenvboot;回显将Linux从SD复制到RAM.&& fatload mmc 0 0x3000000美元{kernel_image}&加脂mmc 0 0x2A00000 ${devicetree_image} && fatload mmc 00x2000000 ${ramdisk_image} & bootm 0x3000000 0x2000000 0x2A00000;fi serverip=10.10.70.101 stderr=serial stdin=serial stdout=serial uenvboot=if运行loadbootenv;然后从${bootenv}执行回送加载环境;运行importbootenv;fi;如果测试-n $uenvcmd;然后回送运行uenvcmd .;运行uenvcmd;fi usbboot=if启动;然后运行uenvboot;回显将Linux从usb复制到内存.&& fatload USB00x3000000美元{kernel_image}和fatload USB00x2A00000美元{devicetree_image}和fatload USB00x2000000美元{ramdisk_image}& bootm 0x3000000 0x2000000 0x2A00000;fi 环境大小: 3368/131068字节
因此,根据我的上述信息,请您告诉/建议我解决地雷问题。
发布于 2016-10-25 02:23:54
您还没有将加载地址传递给mkimage。尝试向其添加-a 0x2000000参数。另外,-C gzip参数可能是错误的,因为输入文件已经被压缩。尝试使用-C none代替。
https://stackoverflow.com/questions/40224397
复制相似问题