u-boot: Wie ermittelt man die Filesize für das Laden des FPGA Bit-Files?

Gast #5047142
Lesenswert?

Hallo,

zur Hardware Platform:
Eval Board Xilinx Zynq zc706


auf diesem möchte ich das FPGA Bit-File per U-boot von einem TFTP-Server 
auf das FPGA laden.

Die Befehle und Ausgabe dazu sehen wie folgt aus:
1
TCB> tftpboot 0x100000 zynq.bit
2
Using ethernet@e000c000 device
3
TFTP from server 192.168.100.100; our IP address is 192.168.100.101
4
Filename 'zynq.bit'.
5
Load address: 0x100000
6
Loading: #################################################################
7
         #################################################################
8
         #################################################################
9
         #################################################################
10
         #################################################################
11
         #################################################################
12
         #################################################################
13
         #################################################################
14
         #################################################################
15
         #################################################################
16
         #################################################################
17
         #################################################################
18
         #################################################################
19
         #################################################################
20
         #################################################################
21
         #################################################################
22
         #################################################################
23
         ###############################################################
24
         3.9 MiB/s
25
done
26
Bytes transferred = 5980030 (5b3f7e hex)
27
TCB> fpga loadb 0 0x100000 5b3f7e
28
  design filename = "zynq;UserID=0XFFFFFFFF;Version=2016.2"
29
  part number = "7z030ffg676"
30
  date = "2017/06/07"
31
  time = "19:53:10"
32
  bytes in bitstream = 5979916
33
zynq_align_dma_buffer: Align buffer at 100072 to 100000(swap 1)


Mein Frage dazu ist:
Gibt es eine Möglichkeit, mit der man automatisch den Filesize-Parameter 
für den "fpga loadb"-Befehl ermittel und setzen kann? Sonst müsste man 
bei jedem neue Bit-File die Größe ermitteln und per Hand im uEnv.txt 
eintragen, was nicht wirklich komfortabel ist.

Gruß
Andre
Gast #5047205
Lesenswert?

Andre schrieb:
> Julius J. schrieb:
>> Bei meinem U-Boot steht die Dateigröße nach dem "tftp"-Kommando in
>> der
>> Variable "$filesize"
>> funktioniert folgendes?:fpga loadb 0 0x100000 ${filesize}
>
> Super :)
> Werde ich ausprobieren.

Funktioniert:)
Danke, für die schnelle Antwort.
GrußAndre
Gast #5056320
Lesenswert?

Mal eine Verständnisfrage von einem Zynq-Newbie: Was geschieht 
eigentlich mit dem Bitfile, das Du vom tftp-Server geladen hast? Wird es 
in einen Flash geschrieben oder sofort in den FPGA geladen? Ich meine, 
damit U-boot überhaupt läuft, muss ja schon ein Bitfile vorhanden sein, 
in dem wenigstens ein ps7 mit ein paar Verbindungen nach außen (DDR 
etc.) konfiguriert ist. Dieses Bitfile kann doch  im laufenden 
U-Boot-Betrieb nicht einfach überladen werden, oder?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren