You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
wolfBoot runs from DDR at address `0x8000000` at EL2 (non-secure). All clock, MIO, and DDR initialization is handled by PLM/PSM before wolfBoot starts.
1992
+
1993
+
See example configuration file at `config/examples/versal_vmk180.config`.
1994
+
1995
+
### Prerequisites
1996
+
1997
+
1.**Xilinx Vitis 2024.1 or 2024.2** (required for bootgen - 2025.1 or later has QSPI boot issues)
1998
+
- Set `VITIS_PATH` environment variable: `export VITIS_PATH=/opt/Xilinx/Vitis/2024.1`
1999
+
2000
+
2.**Toolchain**
2001
+
- ARM GCC toolchain: `aarch64-none-elf-gcc`
2002
+
2003
+
2004
+
### Configuration Options
2005
+
2006
+
Key configuration options in `config/examples/versal_vmk180.config`:
The BIF file (`boot_wolfboot.bif`) references files using relative paths in the same directory. After successful generation, `BOOT.BIN` will be created in `tools/scripts/vmk180/`.
2066
+
2067
+
### Flashing QSPI
2068
+
2069
+
Flash `BOOT.BIN` to QSPI flash using one of the following methods:
2070
+
2071
+
-**Vitis**: Use the Hardware Manager to program the QSPI flash via JTAG. Load `BOOT.BIN` and program to QSPI32 flash memory.
2072
+
2073
+
-**Lauterbach**: Use Trace32 to program QSPI flash via JTAG. Load `BOOT.BIN` and write to QSPI flash memory addresses.
2074
+
2075
+
-**U-Boot via SD Card**: Boot from SD card with U-Boot, then use TFTP to download `BOOT.BIN` and program QSPI flash:
2076
+
```sh
2077
+
tftp ${loadaddr} BOOT.BIN
2078
+
sf probe 0 0 0
2079
+
sf erase 0 +${filesize}
2080
+
sf write ${loadaddr} 0 ${filesize}
2081
+
```
2082
+
2083
+
### Example Boot Output
2084
+
2085
+
```
2086
+
========================================
2087
+
wolfBoot Secure Boot - AMD Versal
2088
+
========================================
2089
+
Current EL: 2
2090
+
Timer Freq: 99999904 Hz
2091
+
ext_flash_read: STUB
2092
+
ext_flash_read: STUB
2093
+
Versions: Boot 0, Update 0
2094
+
No valid image found!
2095
+
wolfBoot: PANIC!
2096
+
```
2097
+
2098
+
1981
2099
## Cypress PSoC-6
1982
2100
1983
2101
The Cypress PSoC 62S2 is a dual-core Cortex-M4 & Cortex-M0+ MCU. The secure boot process is managed by the M0+.
0 commit comments