Ionel
-
Posts
183 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Gallery
Posts posted by Ionel
-
-
What have you tried?
What issues have you encounter?
The process is documented here https://docs.amd.com/r/2023.1-English/ug1144-petalinux-tools-reference-guide/petalinux-boot-jtag-Options
-
Do you have a dhcp or use static ip?
why 10.48.30.255 a broadcast address is used for GW? -
20 hours ago, Unbekannt said:
But when i try to peek at it in the runtime of petalinux, it seems to be occupied by complete different data.
Did you recognized the data or you were expecting to be filled with zeros instead of random data?
If there is still a issue check this <for 32-bit Cortex-A9 Zynq>:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841683/Linux+Reserved+Memory
Also you can try to reserve a different section of memory.
-
1. check if BOOT.BIN contains al needed binaries: petalinux-package --boot --fpga --fsbl --u-boot --force
2. Try connect early to console to view fsbl messages if any.
3. make sure you umount partitions before you unplug the sdcard (everything was written to the boot partition)
-
Elf file may not be usable on RPU
-
It looks like the u-booot is working just fine you can check by pressing a key when this message is shown during boot:
On 2/27/2024 at 5:00 PM, noraj said:Hit any key to stop autoboot: X
Also this message:
On 2/27/2024 at 5:00 PM, noraj said:** Unable to read file uImage **
11258 bytes read in 13 ms (845.7 KiB/s)
## Booting kernel from Legacy Image at 03000000 ...
Image Name: L4 Image #20
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1914800 Bytes = 1.8 MiB
Load Address: 01000000
Entry Point: 01000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02a00000
Booting using the fdt blob at 0x2a00000
Loading Kernel Image ... OK
Loading Device TúHqÈâámjâÃÂãÀÃÂâÐÀààÁòðýHØÀÚøÈàÀÂÂÁò`ÐÉ`èaêàÙðÁÛéXðÐéãÃàøÙùÃêÉBúéaøiÈÊÙˤÊmøaúiÈÈÊÙˤÊmøaúiÈÊÙËpøøÈú¤ÊméaøiÈÊÙˤÊmøaúiÈÊÙËpøøÈú¤ÊmÊÙËapøøÈú¤ÊméaøiÈÊÙˤÊmøaúiÈÊÙËpøøÈú¤ÊméaøiÈÊÙˤÊmøaÚiÈÈÊÙˤÊmøaúiÈÊÙËpøøÈú¤ÊméaøiÈÊÙˤÊmøaúiÈÊÙËpøøÈú¤ÊmÊÙËapøøÈú¤ÊméaøiÈÊLeads me to think that there is either some issues with the u-boot image(FIT) or the control was already passed to the loaded kernel and the kernel device-tree or cmdline arguments are not ok to setup the console (BAUD RATE or console settings).
-
There is no meta-digilent layer to add a machine conf for Genesys ZU 3EG
You can construct your own layer machine conf base on meta-xilinx-core/conf/machine/zynqmp-eg-generic.conf -
On 3/18/2024 at 10:29 PM, Manoj Dahal said:
Mar 18 18:49:06 GenesysZU user.warn kernel: [ 1145.990094] remoteproc remoteproc0: Direct firmware load for rpu_app_r5_0 failed with error -2
This line most likely means that file rpu_app_r5_0 was not find in /lib/firmware/ are you sure the file to be place there is an .elf and not a plain binary file?
Note: the remoteproc0 is looking for rpu_app_5_0 not searching for file rpu_app_r5_0.elf -
From the size diference it looks like the bitstream was not included.
Use --fpga for package command: `petalinux-package --boot --fsbl --fpga --u-boot --force`
-
fnInitZmod is declared in reg.h and defined in reg.c the linker is not finding the .so|.o file for the reg.c
-
If there is no edited log how do you know is failing? it just means that there in no output to the console.
branch `3eg/oob/next` is not stable and is prone to changes use `3eg/oob/master` or `3eg/master` for default settings . -
Is there no message after `[ 6.895245] of-fpga-region fpga-full: FPGA Region probed`?
The log you posted looks manually edited.
Where are log entries before [ 6.268877] ?
There is no error.
If you have problems with serial console try using default settings and disable/remove any PL changes you made that are related to UART.
Maybe the system is working fine and it is the console that has a problem. -
If your image file is less then 16MB then you can use Xilinx hardware manage to write it to the QSPI flash
The process is documented here:
https://docs.xilinx.com/r/en-US/ug908-vivado-programming-debugging/Programming-Configuration-Memory-Devices -
Hi @user32,
A a more recent version than 2017 of Petalinux project for Cora-07S can be found here:
https://github.com/Digilent/Cora-Z7-OS/tree/07S/master
Some tips if you start from scratch with newer version of petalinux:
Start with a simple hardware-desgin
After adding the hw-description(.xsa file) to your petalinux project enable fsbl debug.
Wait on serial COMx|/dev/ttyUSBx to see what is happening with the boot process
BOOT.BIN file on first fat32 partition is where the fsbl is stored and the entry point of the boot process that you can control. -
As long as that image starts with a fat partition containing BOOT.BIN (includes a fsbl) the boot process should start. The rest of the process follows the image instructions.
By default the boot partition should contain BOOT.BIN, boot.scr, image.ub. last two files are required for u-boot but other files can replace them.
Try inspecting petalinux-sdimage.wic image.
Eg. use `losetup` tool in linux or
mount -o loop,offset=<bytes count> <imagefile> /mount/point
To find offset use fdisk -lu <imagefile> and multiply start sector number for partition you want to mount by 512
usually 2048 or 4096 for first partition => 1048576 respectively 2097152 -
Hi @Chr,
Add a debug to your FSBL to make sure the boot process is actually starting.
In file: project-spec/meta-user/recipes-bsp/embeddedsw/fsbl-firmware_%.bbappend
Add line :XSCTH_BUILD_DEBUG = "1"
Build and repackage BOOT.BIN than try again see if the fsbl is loading.
FSBL is the first program that prints to serial console so make sure the port is opened early on.
-
@ManiS Hi,
TFTP Is used by u-boot to fetch files during boot. So you have to have a network access from board to your TFTP server.
doc: https://docs.xilinx.com/r/en-US/ug1144-petalinux-tools-reference-guide/Booting-PetaLinux-Image-on-Hardware-with-TFTPIn addition to this as long as u-boot is booted and you have ethernet available in u-boot you can boot from TFTP. It's not mandatory to boot form JTAG.
SFTP:
For sftp which I presume is what you are actually interested in, you usually need either scp or rsync on your host.
If you can access the board with ssh you most likely can copy file to and from boardIn bash (eg. using scp):
Copy from board to your host
scp user@board_ip:/path/on/board/file .
Copy from host to your board
scp /path/to/file user@board_ip:/path/on/board/for/file/
man scp #for additional info
To find board_ip use ip a command on UART over USB connection.In linux sftp can also be mounted as a volume by most file explorers and then you can copy files using a GUI.
-
Hi @Mania,
1.a If your petalinux build is set to use a ramdisk (rootfs is included in image.ub) then you format your sd card to fat32 and place BOOT.bin, boot.scr image.ub on the sd card.
1.b If your petalinux build is set to use a SD (rootfs is on a separate partition of sd ) then you partition the sd card in 2 partitions. First a fat32 about 100Mb containing BOOT.bin, boot.scr image.ub. A second ext3/4 partition the remaining space on the sd card you mount that partition and write to it the content of rootfs.tar.gz
2. Place a single jumper on JP5, shorting the two rightmost pins (labeled “SD”).
3. For debugging you can connect to a serial console on micro usb (labeled "PROG"). -
Hi @vinod
Quote1. created .xsa file without including bitstream(fpga) using vivado 2022.2 on petalinux 2022.2 version
Is there a reason not to include bitstream in .xsa sicene you can avoid including it in BOOT.bin ?
Quote4. after generating BOOT.BIN, i flash BOOT.BIN and fsbl in to the board using vivado 2022.2
You should flash only BOOT.BIN. BOOT.bin should include the fsbl.
Quote8. actually i have done the partitions with suitable values only
You have to take into account how BOOT.BIN is organized since it should be reflected in partition scheme otherwise you have misalignment issues.
Boot order should be clear:
zsbl -> fsbl -> u-boot -> image.ub -
not detecting axi_i2c bus on qemu
There is no way to detect axi_i2c while in qemu since qemu is vm not real hardware. and the PL(FPGA) part is not present while using qemu.
Only while running on board can you have access to axi_i2c (in PL) after bitsream is loaded by fsbl or u-boot. -
-
@Mania How is your device tree node for axi iic.
Excerpt from above documentation.
IIC: i2c@81600000 { compatible = "xlnx,xps-iic-2.00.a"; interrupt-parent = <&xps_intc_0>; interrupts = < 6 2 >; #address-cells = <1>; #size-cells = <0>; m24c08@50 { compatible = "at,24c08"; reg = <0x50>; }; } ;
In this case this device tree node makes sure to load xilinx iic driver because of line:
compatible = "xlnx,xps-iic-2.00.a";
Also m24C80@50 is a device attached to axi iic bus having address 50(hex) for which driver at,24c08 is loaded and configured
You can find what has been generated for your hardware design in
<petalinux project directory>/components/plnx_workspace/device-tree/device-tree/pl.dtsi
To expand/change axi iic node definition edit below mentioned file. Note: Node handler is &label where label is in pl.dtsi. eg. label: i2c@ADDRES in above example: IIC
<petalinux project directory>/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi
Also at runtime you can check your device tree with:
dtc -I fs /sys/firmware/devicetree/base/
-
-
You are looking for something like this: https://support.xilinx.com/s/article/1276990?language=en_US
Instead of creating a zynqMP project you already have a zynq project.
for zynq you will not have pmufw.elf and bl31.elf files.
the process is mostly the same. However you have to take in to account the size of qspi for your zynq board.
You may also skip --fpga flag for petalinux-package to avoid packing the bitstream however no PL in that case.
Incorrect display colors in Petalinux 2020/2022 Zybo Z7.
in Embedded Linux
Posted
You should lock into device tree binding:
/* * See Documentation/devicetree/bindings/dma/xilinx/xilinx_frmbuf.txt * to find the equivalent DRM fourcc code for the format selected in * the Frame Buffer Reader, then see See include/uapi/drm/drm_fourcc.h * to find the corresponding 4-char string that should be placed here. */ xlnx,vformat = "XR24";
Change according to your kernel version.