Discovery and Evaluation AMD Versal Device Portfolio
This page is a getting started guide providing walkthrough style examples using the AMD Embedded Development Framework (EDF). It covers initial board setup and running a pre-built disk image. For other personas and tasks, see the relevant page linked from Getting Started - Walkthrough Examples.
Table of Contents
- 1 Introduction
- 2 Discovery and Evaluation - Booting the board for the first time and exploration
- 2.1 System Controller Enabled Evaluation Boards - System Controller Firmware Update
- 2.2 How to Boot a Board Using the Pre-built Images
- 2.2.1 Basic board setup - Interfaces and power up
- 2.2.1.1 Powering the Board
- 2.2.1.2 UART Connections: FTDI-USB
- 2.2.1 Basic board setup - Interfaces and power up
- 2.3 How to boot a board using the pre-built images: Multi-stage boot (QSPI / OSPI -> UFS/SD) - Setup
- 2.4 How to Boot a Board Using the Pre-built Images: Single-Stage Boot UFS/SD Mode - Setup
- 2.4.1 Writing the EDF Linux® Disk Image (wic) to the Boot Media: SD Card
- 2.4.2 Writing the EDF Linux® Disk Image (wic.ufs.xz) to the Boot Media: UFS device
- 2.4.2.1 This section describes how to boot the board from UFS as the primary boot media using the Image Recovery web-based tool
- 2.4.2.1.1 Prerequisites:
- 2.4.2.1.2 wic.ufs.xz Image Preparation Steps:
- 2.4.2.1.3 Flash wic.ufs.xz Image to UFS Storage media Using Image Recovery Tool and Boot VEK385 Board in UFS Mode
- 2.4.2.1.4 Initial Setup for UFS device follows:
- 2.4.2.1.5 Image Recovery Tool Instructions
- 2.4.2.1.6 Boot VEK385 board in UFS by Configure UFS boot mode
- 2.4.2.1.7 Booting VEK385 using UFS as Primary boot mode:
- 2.4.2.2 This section describes how to boot the board from UFS as the primary boot media using the bmap Tool
- 2.4.2.2.1 Prerequisites
- 2.4.2.2.2 Host side steps
- 2.4.2.2.2.1 Decompress
- 2.4.2.2.2.2 Inject BOOT.BIN
- 2.4.2.2.2.3 Generate .bmap file
- 2.4.2.2.3 Target/Board Flash steps
- 2.4.2.2.3.1 Flash modified Image
- 2.4.2.2.4 Verification
- 2.4.2.2.4.1 Change bootmode
- 2.4.2.2.4.2 Confirm primary boot from UFS
- 2.4.2.2.5 Troubleshooting
- 2.4.2.1 This section describes how to boot the board from UFS as the primary boot media using the Image Recovery web-based tool
- 2.5 Booting the Board to Linux - Power On
- 2.5.1 Ensure that the boot mode switch is configured for the correct boot mode:
- 2.5.2 Plug in the Micro SD card as shown below (VEK385 evaluation board, J51):
- 2.5.3 Setup UART terminals on your host PC
- 2.5.4 Power the board and watch for UART Output.
- 2.5.5 If you setup UART in the last step - you may need to power the board off, then power on to see UART output
- 2.5.6 On First boot output, Linux requires a password to be set for the default user account.
- 2.5.7 R52-1 Hello_World Execution on VEK385
- 2.5.8 Loading the pre-built Programable Logic (PL) firmware BRAM-GPIO-UART demo (Vivado design)
- 2.5.9 Loading the pre-built OpenAMP RPU firmware demos
- 2.5.9.1 Versal
- 2.5.9.2 Versal-2vm-2ve
- 2.5.10 Loading the pre-built “hello world“ container demo
- 2.6 Run the Xen Demo
- 2.7 Image Recovery Application
- 2.8 OP-TEE Example in AMD EDF Flow
- 2.8.1 Introduction
- 2.8.2 OP-TEE Example Crypto
- 2.8.3 Steps to install optee-example package
- 3 Related Links
- 4 Trademarks
Introduction
This section walks the user through the Discovery and Evaluation persona within AMD EDF, which covers initial board setup and exploration using a pre-built image. See other persona pages for on target development, deployment options, and custom flows.
All Persona: Getting Started - Walkthrough Examples
Discovery and Evaluation - Booting the board for the first time and exploration
System Controller Enabled Evaluation Boards - System Controller Firmware Update
Evaluation boards that have a System Controller (SC) may require the SC firmware and BEAM application to be updated to the latest version to support functionality required by the AMD Embedded Development Framework, and the following tutorials.
System Controller might be used to program the OSPI / QSPI flash used by the target device (primary boot device)
See the System Controller Wiki evaluation board user guide for more information https://xilinx-wiki.atlassian.net/wiki/x/AYCGhw
AMD EDF 25.05 (VEK385 EA) - AMD Vivado™ Design Suite 2025.1
The System Controller Firmware on VEK385 Rev B Evaluation Boards might require updating to the latest version to enable programming of the target OSPI (AMD Versal™ AI Edge Series Gen 2 Primary Boot Device)
Download and install the latest System Controller Firmware from the System Controller Wiki or VEK385 lounge (if not available on the System Controller Wiki).
See also the System Controller Wiki and the evaluation board user guide for more information https://xilinx-wiki.atlassian.net/wiki/x/AYCGhw
How to Boot a Board Using the Pre-built Images
Basic board setup - Interfaces and power up
For evaluation board specific interface details, see the following pages. The VEK385 is used as an example below.
The basic board setup is as follows (the VEK385 is used as example below):
Connect the external power supply to the "Power Input" connector
Connect the USB-Type C connector labeled "FTDI USB" to the host PC
Connect the RJ-45 Ethernet for DUT SoC to the local network
Connect the RJ-45 Ethernet for the System Controller (this might be labeled "SC Ethernet") to the local network
Picture (VEK385)
Powering the Board
Connect the board external power supply to an outlet, plug in the external supply to the board, and turn the board on with the power switch (the VEK385 is shown below as an example):
UART Connections: FTDI-USB
Evaluation boards have multiple UART connections. When the FTDI-USB cable is plugged in, it will create multiple device nodes on the host PC.
For example, VEK385 Rev B has 4 serial / UART interfaces mapped as follows:
Device 0 (JTAG)
Device 1 (Versal™ PS-UART1)
Device 2 (Versal™ PS-UART0)
Device 3 (System Controller UART)
For evaluation board specific interface details, see:
VEK385 SC UART - VEK385 Rev B Evaluation Boards
Versal PS-UART1 is used by the primary user software, U-Boot and Linux® it can be directly accessed by the host PC via the FTDI UART.
Versal PS-UART0 is used by default for auxiliary software (PLM, ASU, RPU) and in Rev B of the VEK385, PS-UART0 will be directly accessible via the FTDI-USB interface.
How to boot a board using the pre-built images: Multi-stage boot (QSPI / OSPI -> UFS/SD) - Setup
This section is for evaluation boards that support the EDF Default boot Architecture - multi-stage boot with deferred PL Load (VEK385 Rev B)
Writing the EDF boot firmware to the primary boot device / media using System Controller (SC)
AMD Production Evaluation Boards might not have the latest boot firmware pre-programmed
The following Evaluation boards require boot firmware to be programmed (they are not pre-populated) or updated to the latest available
Early Access (EA), Engineering Sample (ES) Evaluation Boards
If your evaluation board does not have a system controller the OSPI/QSPI can also be programed by using the AMD Vivado™ Design Suite
For more details, see the evaluation board user guide.
Connect the FTDI-USB cable to the host PC. This will provide serial console interfaces to the PC as well as JTAG access to the Versal device.
Connect the System Controller (SC) Ethernet interface to a network accessible by the host PC.
For board specific interface detail see Board specific specifications and information
On power up, the System Controller (SC) should boot and automatically start the BEAM tool, which can be accessed via a web-interface at the IP address it notes.
System Controller Start
amd-edf login:
****************************************
* *
* BEAM Tool Web Address *
* *
* http://10.10.71.1 *
* http://amd-edf *
* *
****************************************The BEAM interface landing page is shown below.
If the Versal Device Control option is not visible, please update the System Controller Image and Application - Evaluation Board - System Controller (SC)
You should see the welcome screen as shown in the image. This will install the necessary drivers and support files required to connect and manage the evaluation board.
If the board support files are already installed, the welcome screen will not be displayed. Instead, you will see the board details screen directly. In this case, you can skip the 'Install Board Support' step, as it is not required
Click on "Install Board Support:
On the right side of the screen, click the Install Board Support button.
This will install the necessary drivers and support files required to connect and manage the evaluation board.
Wait for Installation:
The tool will begin installing the board support files. Wait for the process to complete.
Once the installation is successful, the tool will be ready to detect and connect to the board.
Board Details Screen:
The BEAM Tool should automatically detect the connected board.
Once the board is connected, the tool will display the board details (e.g., board name, serial number, etc.).
You can now proceed with further operations
To load the OSPI, select Versal Device Control.
Then use the Choose File option under the Upload OSPI: menu and select Load OSPI aligned with the image uploaded.
For image file names see Board specific specifications and information
For downloads links for pre-built images see - Downloads and Release Notes
Select the Program checkbox under the Load OSPI section.
If you want to verify the OSPI image after programming, select the Verify checkbox
Click the Apply button to start programming the OSPI flash memory.
Wait for the programming process to complete.
Once complete, the BEAM tool will return a success message.
If this process fails consult your FAE.
Verify the programmed OSPI works and boots to U-Boot successfully by monitoring the FTDI-UART output after a power cycle: Board specific specifications and information
Set the boot mode switch (SW1 on VEK385, VEK280, VCK190) to QSPI / OSPI boot, and confirm the boot is successful.
SW 1 Boot Mode switch settings
See the board specific information / board user guide for more details and AMD EDF Board specific specifications and information/flows for information on other supported evaluation boards: Board specific specifications and information, https://docs.amd.com/r/en-US/ug1304-versal-acap-ssdg/Boot-Device-Modes
| Mode Pins [0:3] | Mode SW1 [1:4] |
|---|---|---|
SDCARD Boot (SD1) | 0111 | ON, OFF, OFF, OFF |
OSPI / QSPI Boot | 0001 | ON, ON, ON, OFF |
JTAG Boot | 0000 | ON, ON, ON, ON |
See the screen capture below for reference (picture is taken from a VEK385).
ospi-boot-test (Taken from VEK385 boot)
Download the common EDF Linux® disk image, and write it to the secondary boot media. VEK385 Rev B uses UFS as the default storage media.
SD Boot Mode – SD cannot be used as the primary boot mode on the VEK385 or other newer boards. SD is only supported as a secondary boot device (for example, in multi‑stage boot flows such as OSPI → SD)
See Downloads and Release Notes for download links for the EDF Linux® common disk image for supported Evaluation Boards
See Discovery and Evaluation AMD Versal Device Portfolio for detail on how to write the image to the secondary boot media.
Writing the EDF Linux® Disk Images (wic) to the Secondary Boot Media: UFS device
The disk image may be -
A common disk image - Evaluation boards supporting the EDF default boot architecture - multi-stage boot with deferred PL load
See Downloads and Release Notes for download links for the EDF Linux® common disk image for supported Evaluation Boards
Write the common EDF Linux® disk image to the secondary boot media.
VEK385 Rev B Board - The secondary boot media is an UFS device
Minimum UFS device size 16 GB: AMD EDF disk images require a minimum of a 16 GB UFS device to work correctly.
The .wic.ufs.xz file be written to an UFS device using web-interface Image recovery tool:
Initial Setup for UFS device:
Flash WIC Image to UFS Storage device Using Image Recovery Tool and Boot VEK385 Board in OSPI + UFS Mode
Writing the EDF Linux® Disk Images (wic) to the Secondary Boot Media: SD Card
The disk image may be -
A common disk image - Evaluation boards supporting the EDF default boot architecture - multi-stage boot with deferred PL load
A board specific disk image - Evaluation boards supporting single-stage boot from SD card
How to Boot a Board Using the Pre-built Images: Single-Stage Boot UFS/SD Mode - Setup
Writing the EDF Linux® Disk Image (wic) to the Boot Media: SD Card
This section is for evaluation boards that support single step boot from SD card as the default boot mode for pre-built images (VEK280, VCK190).
Download the pre-built board specific EDF Linux disk image for SD boot for your Evaluation board, and write the image file to an to SD card
See Downloads and Release Notes for download links for supported Evaluation Boards
See Discovery and Evaluation AMD Versal Device Portfolio for tools and flows to write the image to an SDCARD
After programming the SDCARD move to step Discovery and Evaluation AMD Versal Device Portfolio
Writing the EDF Linux® Disk Image (wic.ufs.xz) to the Boot Media: UFS device
This section describes how to boot the board from UFS as the primary boot media using the Image Recovery web-based tool
Prerequisites:
Get all artifacts which are required for boot
BOOT.BIN
A common disk image .wic.ufs.xz format (eg., edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs.xz)
Installed tools on the host: xz, wic, bmaptool, and standard core utilities.
Target board must have proper UFS configuration as mentioned in Discovery and Evaluation AMD Versal Device Portfolio
See Downloads and Release Notes for download links for the EDF Linux® common disk image for supported Evaluation Boards.
wic.ufs.xz Image Preparation Steps:
Perform the following steps on the host system to prepare the UFS boot image.
Decompress
Decompress the existing .wic.ufs.xz file to obtain the raw .wic.ufs image. Replace file names and paths as appropriate for your environment.
xz -df <image-name>.rootfs.wic.ufs.xz
# Example
xz -df edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs.xzAfter this step, you should have an uncompressed file similar to:
edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufsInject BOOT.BIN
Use the wic cp command to copy the BOOT.BIN file into partition 1 of the .wic.ufs image. Ensure that the correct sector size is specified for the target media (4096 in this example).
$ wic cp --sector-size=4096 <boot-binary>.bin <image-name>.rootfs.wic.ufs:1
# Example #
$ wic cp boot.bin --sector-size=4096 edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs:1
$ wic ls --sector-size=4096 edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs:1
Volume in drive : is esp
Volume Serial Number is 9BC7-2DC2
Directory for ::/
EFI <DIR> 2011-04-05 23:00
IMAGE 32920064 2011-04-05 23:00 Image
loader <DIR> 2011-04-05 23:00
xen cfg 347 2011-04-05 23:00
xen efi 1048592 2011-04-05 23:00
boot bin 5320016 2026-03-10 12:10
6 files 39 289 019 bytes
1 032 073 216 bytes freeConfirm that the command completes without errors before proceeding.
Generate the *.wic.ufs.xz image since the Image Recovery tool supports this format
Compress the generated *.wic.ufs image to *.wic.ufs.xz using the xz command as shown below.
$ xz -c edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs > edf-linux-disk-image-amd-cortexa78-mali-common.rootfs.wic.ufs.xzAt this point, you should have modified .wic.ufs.xz image.
Flash wic.ufs.xz Image to UFS Storage media Using Image Recovery Tool and Boot VEK385 Board in UFS Mode
This section provides a complete procedure for wic.ufs.xz image updates through the image recovery web-interface using Ethernet and USB recovery methods.
Initial Setup for UFS device follows:Discovery and Evaluation AMD Versal Device Portfolio
After updating the OSPI image using the BEAM tool Discovery and Evaluation AMD Versal Device Portfolio , follow the steps below to launch and update the WIC image using the Image Recovery tool.
Image Recovery Tool Instructions
Launch Linux-based image recovery shell
The Image Recovery tools is a web-based tool that can be used to update either firmware or a new Linux image.
To launch Image Recovery, first power off the board.
Then, press and hold the FWUEN (SW14) push button while powering on the evaluation board (e.g., vek385_revB). After 3 to 5 seconds, release the push button.
This will launch Linux-based image recovery shell, Check the serial terminal for the image recovery boot log.
Launch Image Recovery Web Interface using IP address
The web interface operates using an IP address (e.g., 10.10.70.2:8080), which is displayed on the UART console output (Image_recovery_boot.log) of the target when image recovery boot mode is triggered.
In the serial terminal, look for a message similar to:
############################################################################################## # # #Launching to Image Recovery shell, Use 10.10.70.1:8080 to launch the Image Recovery web app.# # # ##############################################################################################On the host machine, launch a browser (e.g., Firefox) and navigate to:
http://10.10.70.1:8080, This opens the image recovery web interface page.
The Image Recovery web interface provides three tabs:
System Information
Ethernet Recovery
USB Recovery
The System Board Information section providing basic information about the hardware (e.g., VEK385 board Name, Revision, Serial, Part, UUID).
Using the Image Recovery web interface to Update WIC Image:
WIC image updates can be performed in two ways: via Ethernet or using a USB drive containing the respective images connected to the board.
The Image Recovery web interface provides two update options:
Ethernet Recovery