Jump to content

Ionel

Technical Forum Moderator
  • Posts

    183
  • Joined

  • Last visited

Posts posted by Ionel

  1. 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.

  2.  

    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.

  3. 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).

  4. 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

  5. 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.

  6. 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.

  7. @ManiS

    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

  8. 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.

     

  9. @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-TFTP

    In 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 board

    In 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.

  10. 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").

  11. Hi @vinod

    Quote

    1. 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 ?

    Quote

    4. 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.

    Quote

    8. 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

  12. @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/

     

  13. 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.

×
×
  • Create New...