Support for Vitis AFI flow (`create_vitis_afi.sh`) on F2 instances for new projects
- Dominant language
- SystemVerilog
- Stars
- 1.7k
- Forks
- 538
- PR merge metrics
- No merged PRs in 30d
Description
We have recently started a new FPGA project (H2 2025) and are targeting **F2 instances** as our primary platform. Since F1 instances are at End of Life (Dec 20, 2025) and restricted to legacy customers, F2 is our only available deployment path.
Our development is based on **Vitis/HLS**, but we have found that the `f2` branch of the `aws-fpga` repository still does not include the `create_vitis_afi.sh` script or the official flow to convert Vitis-generated `.xclbin` files into AFIs for F2.
### The Problem
In Issue #719 (May 2025), it was stated that Vitis AFI support for F2 was the "next feature" to be released. However, as of late 2025:
1. The `f2` branch documentation still indicates that Vitis AFI generation is not supported.
2. The helper scripts (like `create_vitis_afi.sh`) and the automated DMA/Shell integration for Vitis are missing from the `f2` branch.
3. New users who did not have F1 access are forced onto F2, but currently have no documented way to create AFI after built bitstream with Vitis.
### Questions / Requests
1. **Official Support Status:** What is the current status of Vitis support for F2? Is there a release candidate or a specific branch we should be using?
2. **Missing Tooling:** Is there a timeline for when `create_vitis_afi.sh` (or an equivalent tool) will be added to the F2 flow?
3. **Manual Flow Documentation:** If the automated script is not ready, is there a manual "recipe" for wrapping a Vitis HLS kernel for the F2 Shell?
4. **DMA Compatibility:** Does the F2 shell currently support the XRT/Vitis standard DMA, or are we still required to use the `cl_sde` with a custom HDL wrapper?
As a new project starting directly on F2, the lack of Vitis support is a significant blocker for our development timeline. We would appreciate any guidance or early-access scripts you can provide.
Contributor guide
Research direction
Read the f2 branch documentation and inspect whether create_vitis_afi.sh exists; compare the documented Vitis-generated .xclbin-to-AFI path with the requested F2 flow. Done means the repository identifies a supported F2 Vitis/AFI procedure, including DMA compatibility or a clear manual recipe.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws
- Domain
- cloud, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100