Hi all,
I'm trying to work with the TE0723 module but I'm completely block with this problem. I did tried to launch a simple petalinux build, following the PetaLinux kickstart, but U-boot is unable to decompress the kernel. I'm using Vivado/Petalinux 2018 because of two main things:
1) 2017.4 is rather old for my RHEL 7.5 servers.
2) Neither Petalinux BOOT.bin and image.ub, or petalinux prebuilt package works. I used both reference designs without success, it always thrown this error:
ERROR: image is not a fdt - must RESET the board to recover.
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
This is my log right now, if somenoe could post the configuration we must follow for this board it will be very helpful as I have been failing with it the whole week. Also, I own a ZCU104 board and it is not giving any problem like this one.
Data Start: 0x10000104
Data Size: 3938530 Bytes = 3.8 MiB
Architecture: ARM
OS: Linux
Load Address: 0x00008000
Entry Point: 0x00008000
Hash algo: sha1
Hash value: 26241ab06e6c784955fe1ecdd3af606cf463408b
Verifying Hash Integrity ... sha1+ OK
## Loading ramdisk from FIT Image at 10000000 ...
Using 'conf@system-top.dtb' configuration
Trying 'ramdisk@1' ramdisk subimage
Description: petalinux-user-image
Type: RAMDisk Image
Compression: gzip compressed
Data Start: 0x103c521c
Data Size: 5997910 Bytes = 5.7 MiB
Architecture: ARM
OS: Linux
Load Address: unavailable
Entry Point: unavailable
Hash algo: sha1
Hash value: cb02128198cd089cc3433e3310960b64d34dcc90
Verifying Hash Integrity ... sha1+ OK
## Loading fdt from FIT Image at 10000000 ...
Using 'conf@system-top.dtb' configuration
Trying 'fdt@system-top.dtb' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x103c1ae8
Data Size: 13938 Bytes = 13.6 KiB
Architecture: ARM
Hash algo: sha1
Hash value: fe6b6a1a851a978c3bd2c666dbb7b71cf8cdfdd7
Verifying Hash Integrity ... sha1+ OK
Booting using the fdt blob at 0x103c1ae8
Uncompressing Kernel Image ... Error: inflate() returned -3
gzip compressed: uncompress error -1
Must RESET board to recover
resetting ...
Hi,
which assembly version do you bough?
- https://wiki.trenz-electronic.de/display/PD/TE0723+Test+Board#TE0723TestBoard-Hardware
Did you select the correct prebuilt files from the 2017.4 reference design for your assembly variant? --> because you wrote: "or petalinux prebuilt package works."
I've tried out with TE0723-0xM version, without problems.
But my linux images has other hash values, so either you has used other assembly version with less DDR or it's another prebuilt image.ub.
My log:
U-Boot 2017.01 (Feb 19 2018 - 14:27:32 +0100)
Board: Xilinx Zynq
I2C: ready
DRAM: ECC disabled 512 MiB
MMC: sdhci@e0101000: 0 (SD)
SF: Detected s25fl128s_64k with page size 256 Bytes, erase size 64 KiB, total 16 MiB
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
U-BOOT for petalinux
Hit any key to stop autoboot: 0
Device: sdhci@e0101000
Manufacturer ID: 3
OEM: 5344
Name: SS08G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 7.4 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
reading image.ub
9517852 bytes read in 532 ms (17.1 MiB/s)
## Loading kernel from FIT Image at 10000000 ...
Using 'conf@1' configuration
Verifying Hash Integrity ... OK
Trying 'kernel@0' kernel subimage
Description: Linux Kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x100000d4
Data Size: 3747200 Bytes = 3.6 MiB
Architecture: ARM
OS: Linux
Load Address: 0x00008000
Entry Point: 0x00008000
Hash algo: sha1
Hash value: 04ab32403b9ff4e6cff934262506d77316fb4c01
Verifying Hash Integrity ... sha1+ OK
## Loading ramdisk from FIT Image at 10000000 ...
Using 'conf@1' configuration
Trying 'ramdisk@0' ramdisk subimage
Description: ramdisk
Type: RAMDisk Image
Compression: uncompressed
Data Start: 0x1039670c
Data Size: 5754910 Bytes = 5.5 MiB
Architecture: ARM
OS: Linux
Load Address: unavailable
Entry Point: unavailable
Hash algo: sha1
Hash value: c9ce1b77ab65f699f0de1e1e42adcefc22c835af
Verifying Hash Integrity ... sha1+ OK
## Loading fdt from FIT Image at 10000000 ...
Using 'conf@1' configuration
Trying 'fdt@0' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x10392f48
Data Size: 14099 Bytes = 13.8 KiB
Architecture: ARM
Hash algo: sha1
Hash value: 06a7da0950f34e0b696085f17c0bbb0b7c1f3c35
Verifying Hash Integrity ... sha1+ OK
Booting using the fdt blob at 0x10392f48
Loading Kernel Image ... OK
Loading Ramdisk to 1edc6000, end 1f34301e ... OK
Loading Device Tree to 1edbf000, end 1edc5712 ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 4.9.0-xilinx-v2017.4 (petalinux@petalinux-VirtualBox) (gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11) ) #1 SMP PREEMPT Mon Feb 19 14:32:47 CE T 2018
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
OF: fdt:Machine model: xlnx,zynq-7000
bootconsole [earlycon0] enabled
cma: Reserved 16 MiB at 0x1dc00000
Memory policy: Data cache writealloc
percpu: Embedded 14 pages/cpu @dfbca000 s25932 r8192 d23220 u57344
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyPS0,115200 earlyprintk
....
br
John
Hi John, I think you are the person who writes the wiki right?,
My box says "TE0723-02", which seems to be an old version of the board. No one of the petalinux image.ub worked but I think is because of the revison change, I don't know, I keep having the error: ERROR: image is not a fdt - must RESET the board to recover.
I can fix that problem if I stop the autoboot and load the ramdisk from higher memory address, like 0x40000000. I change the netboot address to that one in petalinux config but changes are not taken, I need to always write the u-boot commands by hand, of course this can be easily changed in some different way I suppose.
Is this board deprecated?
Hi,
can you send me the serial number of your module. There should be a sticker with QR Code and a number on the module.
I think you has the R-Version with only 128MB DDR. Design for PCB REV02 and REV03 should be the same. Maybe the name article name on REV02 was a little bit different
- https://wiki.trenz-electronic.de/display/PD/TE0723+Test+Board#TE0723TestBoard-Hardware
I will check tomorrow, maybe I 've forgot to change the netboot address on the prebuilt files: CONFIG_SUBSYSTEM_NETBOOT_OFFSET = 0x4000000
I've only an M version for test. and unfortunately not all settings will be done automatically by hdf import.
Did you clear the petalinux project after you has changed the netboot address -->petalinux-build -x mrproper? Sometimes not all changes will be recognized by the build environment and it used older sources.
br
John
Hi,
I've published a new version on the download (should be available in appr. 1 hour). I've also tested on a TE0723-02, like you has --> 128MB, like I expected yesterday evening.
I've only changed CONFIG_SUBSYSTEM_NETBOOT_OFFSET = 0x4000000
And regenerate all again. -> image.ub, uboot.elf, Boot.bin with new uboot.elf for this variant.
Link:
https://wiki.trenz-electronic.de/display/PD/TE0723+Test+Board#TE0723TestBoard-RevisionHistory
--> te0723-test_board-vivado_2017.4-build_11_20180911144828.zip
https://wiki.trenz-electronic.de/display/PD/TE0723+Test+Board#TE0723TestBoard-Download
If you has still problems, let me know.
br
John
Hi John,
It worked fine, thanks a lot!!
@ blanca12:
What are you referring to? The hash value, I used for TE0723-0(x)M:
te0723-test_board-vivado_2017.4-build_06_20180220121024\test_board\prebuilt\os\petalinux\default\image.ub
te0723-test_board-vivado_2017.4-build_11_20180911144828\test_board\prebuilt\os\petalinux\default\image.ub
image.ub is the same. use 7zip for unzip and you get the correct modified date (19.02.18, 15:01).
## Loading kernel from FIT Image at 10000000 ...
Using 'conf@1' configuration
Verifying Hash Integrity ... OK
Trying 'kernel@0' kernel subimage
Description: Linux Kernel
Type: Kernel Image
Compression: uncompressed
Data Start: 0x100000d4
Data Size: 3747200 Bytes = 3.6 MiB
Architecture: ARM
OS: Linux
Load Address: 0x00008000
Entry Point: 0x00008000
Hash algo: sha1
Hash value: 04ab32403b9ff4e6cff934262506d77316fb4c01
Verifying Hash Integrity ... sha1+ OK
## Loading ramdisk from FIT Image at 10000000 ...
Using 'conf@1' configuration
Trying 'ramdisk@0' ramdisk subimage
Description: ramdisk
Type: RAMDisk Image
Compression: uncompressed
Data Start: 0x1039670c
Data Size: 5754910 Bytes = 5.5 MiB
Architecture: ARM
OS: Linux
Load Address: unavailable
Entry Point: unavailable
Hash algo: sha1
Hash value: c9ce1b77ab65f699f0de1e1e42adcefc22c835af
Verifying Hash Integrity ... sha1+ OK
## Loading fdt from FIT Image at 10000000 ...
Using 'conf@1' configuration
Trying 'fdt@0' fdt subimage
Description: Flattened Device Tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x10392f48
Data Size: 14099 Bytes = 13.8 KiB
Architecture: ARM
Hash algo: sha1
Hash value: 06a7da0950f34e0b696085f17c0bbb0b7c1f3c35
Verifying Hash Integrity ... sha1+ OK
Booting using the fdt blob at 0x10392f48
Loading Kernel Image ... OK
Loading Ramdisk to 1edc6000, end 1f34301e ... OK
Loading Device Tree to 1edbf000, end 1edc5712 ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
which one did you use?
Or did you mistake TE0726(ZynqBerry) for TE0723(ArduZynq)? Because on other post you wrote to ZynqBerry. Or has you both modules?
br
John