News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

ZynqBerry TE0726 - HDMI example boot problem

Started by pjrajda, February 03, 2018, 03:06:41 PM

Previous topic - Next topic

pjrajda

We tried to run ZynqBerry - Demo VIDEO/AUDIO Design with Video and Audio Example:

https://shop.trenz-electronic.de/en/TE0726-03M-ZynqBerry-Zynq-7010-in-Raspberry-Pi-form-factor?path=Trenz_Electronic/TE0726/Reference_Design/2016.2/te0726_m_demo3

After executing initial instructions:

  • Configure FPGA-Flash with Boot.bin
  • Copy image.ub, ffmpeg/mplayer Dateien, u-boot.rgba and Video or Audio Files on SD
  • Connect Monitor with HDMI
  • Reboot
we got a yellowish screen and the log from console looks like below:

reading image.ub
3605740 bytes read in 204 ms (16.9 MiB/s)
reading system.dtb
** Unable to read file system.dtb **
=>

Any ideas what is wrong?
The same behavior can be observed with other demos.

JH

Hi,
did you use following files from the 2016.2 download:

       
  • Program Flash with: te0726_m_demo3\prebuilt\boot_images\te0726_m\u-boot\BOOT.bin
  • Add on SD:te0726_m_demo3\prebuilt\os\petalinux\te0726_m\image.ub       -> and other needed files for the demo.
I've try out this on my place, no problem:




....
Device: sdhci@e0101000
Manufacturer ID: 9c
OEM: 534f
Name: USD00
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
9438532 bytes read in 500 ms (18 MiB/s)
## Loading kernel from FIT Image at 01000000 ...
   Using 'conf@1' configuration
   Verifying Hash Integrity ... OK
   Trying 'kernel@1' kernel subimage
     Description:  PetaLinux Kernel
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x010000f0
     Data Size:    9415825 Bytes = 9 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x00008000
     Entry Point:  0x00008000
     Hash algo:    crc32
     Hash value:   04c119a9
   Verifying Hash Integrity ... crc32+ OK
## Loading fdt from FIT Image at 01000000 ...
   Using 'conf@1' configuration
   Trying 'fdt@1' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x018fae68
     Data Size:    21406 Bytes = 20.9 KiB
     Architecture: ARM
     Hash algo:    crc32
     Hash value:   22ff0f75
   Verifying Hash Integrity ... crc32+ OK
   Booting using the fdt blob at 0x18fae68
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 07ff7000, end 07fff39d ... OK

Starting kernel ...

Booting Linux on physical CPU 0x0
....


Did you mix with programming files from other demos?
Which assembly variant did you use. Can you tell me complete product order name, please.
At the moment I think you did not use the correct files. Or did you generate this files by yourself and change the Linux configuration?

PS:
br
John

pjrajda

John,
Thank you for your prompt respone.

Quote from: JH on February 05, 2018, 09:21:26 AM
did you use following files from the 2016.2 download:

       
  • Program Flash with: te0726_m_demo3\prebuilt\boot_images\te0726_m\u-boot\BOOT.bin
  • Add on SD:te0726_m_demo3\prebuilt\os\petalinux\te0726_m\image.ub       -> and other needed files for the demo.

Yes, we did use exactly the above mentioned files from the 2016.2 download

Quote
Did you mix with programming files from other demos?

No, we didn't mixed the files from different demos.

Quote
Which assembly variant did you use. Can you tell me complete product order name, please.

It is TE0726-03M.

Quote
At the moment I think you did not use the correct files. Or did you generate this files by yourself and change the Linux configuration?

For now we only tried to restore and run a ready demo.

Quote
PS:

       
  • There is also newer Demo versions for Vivado 2017.1 (with  shop download page documentation) available

We tried several different versions (don't remember if exactly Vivado 2017.1) and the result was always the same.

Quote

It seems to lead to the same demo folders...

P.S.
Could the SD card capacity be a problem? We used a small 2GB card...


Regards,
Pawel

JH

Which Vivado Version did you use to program QSPI Flash?
Can you send me the log file during flash programming process?

Did you try out Debian demo or other programming files before? Has your SD Card only one FAT32 partition, or more?

Quote
https://wiki.trenz-electronic.de/display/PD/TE0726+Reference+Designs
It seems to lead to the same demo folders...
Yes this will be the new basic Reference Design overview page for 2017.2 design and newer.
Currently available 2017.4 Design is " Test Board", with Wiki description:

2017.1 Demo 1..3 are newer versions of 2016.2 Demo1..3.
2017.4 Test Board is only Linux Design with Board Part Files for 2017.4. See Wiki description.

br
John

pjrajda

Hi again,

Now we tried the demo for Vivado 2017.1 (with Vivado 2017.1 tool). This time we programmed flash with TCL commands, as suggested in https://wiki.trenz-electronic.de/display/PD/TE0726+Test+Board#TE0726TestBoard-QSPI

The TCL console looks like below:

TE::pr_program_flash_binfile -swapp u-boot

Start Flash Programming with BIN File
Used file:C:/Users/Pioter/Desktop/zynqberrydemo3/prebuilt/boot_images/te0726_m/u-boot/Boot.bin
INFO: [TE_PR-41] Start program flash:
  Run "exec program_flash -f BOOT.bin -flash_type qspi_single" in C:/Users/Pioter/Desktop/zynqberrydemo3/prebuilt/boot_images/te0726_m/u-boot
  Please Wait..
  ------
INFO: [TE_EXT-4] Command results from program flash "exec program_flash -f BOOT.bin -flash_type qspi_single":
 
****** Xilinx Program Flash
****** Program Flash v2017.1 (64-bit)
  **** SW Build 1846317 on Fri Apr 14 18:55:03 MDT 2017
    ** Copyright 1986-2017 Xilinx, Inc. All Rights Reserved.

Connecting to hw_server @ TCP:localhost:3121

Connected to hw_server @ TCP:localhost:3121
Available targets and devices:
Target 0 : jsn-JTAG-ONB4-2516330005AAA
Device 0: jsn-JTAG-ONB4-2516330005AAA-4ba00477-0

Retrieving Flash info...

Initialization done, programming the memory
BOOT_MODE REG = 0x00000001
WARNING: [Xicom 50-100] The current boot mode is QSPI.
If flash programming fails, configure device for JTAG boot mode and try again.
f probe 0 0 0

Performing Erase Operation...
Erase Operation successful.
INFO: [Xicom 50-44] Elapsed time = 6 sec.
Performing Program Operation...
0%...90%...100%
Program Operation successful.
INFO: [Xicom 50-44] Elapsed time = 15 sec.

Flash Operation Successful
  ------
ERROR: [Labtools 27-2254] Booting from configuration memory device unsuccessful.
boot_hw_device: Time (s): cpu = 00:00:05 ; elapsed = 00:03:01 . Memory (MB): peak = 916.164 ; gain = 0.000
ERROR: [TE_PR-49] Script (TE::VLAB::hw_fpga_boot_from_memory) failed: ERROR: [Common 17-39] 'boot_hw_device' failed due to earlier errors.
.
ERROR: (TE_PR-49) Script (TE::VLAB::hw_fpga_boot_from_memory) failed: ERROR: [Common 17-39] 'boot_hw_device' failed due to earlier errors.


and the visual effects on the HDMI screen are the same as previously.



So far we used Vivado 2016.4 and programmed flash memory with Xilinx SDK => Program Flash. Programming process looked quite the same, it only finished earlier - there was no 'booting from configuration memory' part. Logs were like below:

SDK log window:

12:40:00 INFO: Launching XSCT server: xsct.bat -interactive C:\Users\Pioter\Documents\XIPROJ\project_4\project_4.sdk\temp_xsdb_launch_script.tcl
12:40:00 INFO: XSCT server has started successfully.
12:40:00 INFO: Successfully done setting XSCT server connection channel 
12:40:00 INFO: Successfully done setting SDK workspace 
12:40:01 INFO: Registering command handlers for SDK TCF services


SDK console window:

cmd /C program_flash -f \
C:\Users\Pioter\Desktop\zynqberrydemo3\prebuilt\boot_images\te0726_m\u-boot\BOOT.bin \
-offset 0 -flash_type qspi_single -verify -cable type xilinx_tcf url TCP:127.0.0.1:3121

****** Xilinx Program Flash
****** Program Flash v2016.4 (64-bit)
  **** SW Build 1756540 on Mon Jan 23 19:11:23 MST 2017
    ** Copyright 1986-2016 Xilinx, Inc. All Rights Reserved.

Connecting to hw_server @ TCP:127.0.0.1:3121

WARNING: Failed to connect to hw_server at TCP:127.0.0.1:3121
Attempting to launch hw_server at TCP:127.0.0.1:3121

Connected to hw_server @ TCP:127.0.0.1:3121
Available targets and devices:
Target 0 : jsn-JTAG-ONB4-2516330005AAA
Device 0: jsn-JTAG-ONB4-2516330005AAA-4ba00477-0

Retrieving Flash info...

Initialization done, programming the memory
BOOT_MODE REG = 0x00000001
WARNING: [Xicom 50-100] The current boot mode is QSPI.
If flash programming fails, configure device for JTAG boot mode and try again.
f probe 0 0 0
Performing Erase Operation...
Erase Operation successful.
INFO: [Xicom 50-44] Elapsed time = 6 sec.
Performing Program Operation...
0%...90%...100%
Program Operation successful.
INFO: [Xicom 50-44] Elapsed time = 14 sec.
Performing Verify Operation...
0%...40%...50%...90%...100%
INFO: [Xicom 50-44] Elapsed time = 18 sec.
Verify Operation successful.

Flash Operation Successful


Regards,
Pawel

JH

Hi,

on 2017.1 only software reboot with scripts has not work, programming was successfull. Power ON/OFF restart system. IÄve fixed some of this problems on 2017.4 TE scripts.


For Vivado 2017.3 / 2017.4 , you must use a special FSBL on the programming setup. We have add this special FSBL to the 2017.4 "Test Board" reference design. See "Test board" wiki description.

Please do never mix versions of Xilinx tools.

br
John

pjrajda

Hi,

Quote
On 2017.1 only software reboot with scripts has not work, programming was successfull. Power ON/OFF restart system. I've fixed some of this problems on 2017.4 TE scripts.
For Vivado 2017.3 / 2017.4 , you must use a special FSBL on the programming setup. We have add this special FSBL to the 2017.4 "Test Board" reference design. See "Test board" wiki description.

Thanks for the remarks, they may be helpful for us in the future, but still they don't explain why the demo was not running.

Quote
Please do never mix versions of Xilinx tools.

We never did.

But... finally we discovered what was the problem. Some time ago we made 'Getting started with ZynqBerry' tutorial (https://eewiki.net/display/Motley/Getting+Started+with+the+ZynqBerry). There is a section concerning changes made in U-Boot, which contain command for saving the environment variables. These stored variables were the problem. It is described in this short discussion:
http://zedboard.org/content/u-boot-environment-variables-not-updating-using-petalinux

Regards,
Pawel

JH

Hi,

good news. I'm glad that it works now.

br
John