Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


Info

The below mentioned procedure is for 2018.3. For newer versions, please use one of the following pages: 


This tutorial shows how to build the Linux image and boot image using the PetaLinux build tool.

Refer to the PetaLinux Tool Documentation (UG1144) for installation.

 Set $DCET_HOME environment variable as given below.

Code Block
% export DCET_HOME=</path/to/download/zipfile>/rdf0476-zcu111-RFdc-eval-tool-2018-3


1. Sourcing petalinux tool.

Code Block
% source <path/to/petalinux-installer>Petalinux-v2018.3/petalinux-v2018.3-final/settings.sh


2. Post petalinux installation, $PETALINUX variable should be set, command to cross-check the variable.

Code Block
% echo $PETALINUX


3. Create project from .bsp file

Code Block
% cd $DCET_HOME/apu/
% petalinux-create -t project -s rfsoc_petalinux_bsp.bsp
% cd rfsoc_petalinux_bsp


Info

After creating project, please refer to Modifications on top of 2018.3 released BSP section, for detailed information on changes in this TRD on top of released 2018.3 PetaLinux BSP.



4. Configure the PetaLinux project using step “a” or “b”.

a) with the pre-built xsa located in folder <pl/<design_path>pre-built/rfsoc_trd>, depending on the design user can select the "path". Make sure here the design_path indicates the folder in which the design/xsa resides.


Code Block
% petalinux-config --get-hw-description=$DCET_HOME/pl/<design_path>/pre-built/rfsoc_trd/

For Example : If the user wants to build for Non-MTS Design, the design_path would be similar to the one given in red ink.

Code Block
% petalinux-config --get-hw-description=$DCET_HOME/pl/NON-MTSDesign_8x8/project/zcu111_rfsoc_trd.sdk/


b) If Vivado project is modified/design is changed, user is expected to configure the bsp with the modified .xsa file.

Code Block
% petalinux-config --get-hw-description=$DCET_HOME/pl/<design_path>/project/zcu111_rfsoc_trd.sdk/


Info

After executing "petalinux-config" command, a prompt will be displayed .There is no need to change anything, Select "Exit" and come out of window.


5. Build all Linux image components along with Evaluation Tool application

a) To build with SSR IP design replace system-user.dtsi and build

Code Block
% cp project-spec/meta-user/recipes-bsp/device-tree/files/system-user_ssr.dtsi project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi
% petalinux-build


b) To build with NON-MTS/MTS design replace system-user.dtsi and build

Code Block
% cp project-spec/meta-user/recipes-bsp/device-tree/files/system-user_8x8.dtsi project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi
% petalinux-build


6. Create a boot image (BOOT.BIN) including FSBL, ATF, PMUFW, bitstream and u-boot.

Code Block
% cd images/linux
% petalinux-package --force --boot --fsbl zynqmp_fsbl.elf --fpga system.bit --pmufw pmufw.elf --u-boot u-boot.elf


7. copy the BOOT.bin and image.ub to the sdcard.

Code Block
% cp BOOT.BIN image.ub $DCET_HOME/images/rev-B


Modifications on top of 2018.3 released BSP

Below are the modification in this TRD for linux-kernel, rfdc drivers, rftool and rfdc example application, on top of 2018.3 petalinux released BSP.

For more details on patch information please refer to https://www.xilinx.com/support/answers/71829.html. A high level description is given below: 

  • Kernel patch information as follows.


    Code Block
    vi project-spec/meta-user/recipes-kernel/linux/linux-xlnx_%.bbappend
    SRC_URI_append = " \
         file://0001-power-supply-irps-Add-support-for-irps-supply.patch \
         file://0002-drivers-misc-add-support-for-DDR-memory-management.patch  \
         file://0003-dmaengine-xilinx_dma-In-SG-cyclic-mode-allow-multipl.patch \
         file://0004-drivers-misc-add-support-for-selecting-mem-type.patch \
         file://0005-i2c-cadence-Implement-timeout.patch \
         file://0006-i2c-muxes-update-Mux-register-always.patch \
         file://0007-drivers-misc-change-ADC-packet-size-as-per-FIFO-size.patch \
    “



  • RFDC driver patch information as follows.


    Code Block
    vi project-spec/meta-user/recipes-bsp/rfdc/rfdc_%.bbappend
    SRC_URI_append = " \
            file://0001-rfdc-add-support-to-turn-off-mixer.patch \
    "


  • Device tree patch information as follows.

    Code Block
    vi project-spec/meta-user/recipes-bsp/device-tree/device-tree.bbappend
    SRC_URI_append = " \
            file://0001-Fix-the-misc-clock-frequency-type.patch \
    "


  • RFTOOL application patch as follows.

    Code Block
    vi project-spec/meta-user/recipes-apps/rftool/rftool.bb


  • RFDC example application patch as follows.

    Code Block
    vi project-spec/meta-user/recipes-apps/rfdc-data-write-example/rfdc-data-write-example.bb


...