Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
515 commits
Select commit Hold shift + click to select a range
ca42072
vrt: Made buffer move semantics valid for Device value type.
hpc-aulmamei Mar 2, 2026
626a14d
Updated 05_perf cmake.
hpc-aulmamei Mar 2, 2026
1e6ebef
Join emu/sim binary and propagate errors. Do not silently fail
serbuvlad Mar 2, 2026
12cd13b
Merge pull request #6 from serbuvlad/dev
hpc-aulmamei Mar 2, 2026
9806906
WIP: program FPGA and clock setting.
hpc-aulmamei Mar 3, 2026
7f5810e
Removing an unnecessary import from linker/src/emit/hw/tcl_gen.py
JOOpdenhoevel Mar 3, 2026
406eb96
Removing redundant configuration files
JOOpdenhoevel Mar 3, 2026
bf962f0
Merge remote-tracking branch 'hpc-aulmamei/dev' into dev
JOOpdenhoevel Mar 3, 2026
fa1c0eb
vrtd: Fixed bug with pf2 refresh causing PCIe link drop.
hpc-aulmamei Mar 3, 2026
2649e99
linker: Updated linker path results path to depend on env variable.
hpc-aulmamei Mar 3, 2026
d3c1540
linker: fixed a bug in install recipe.
hpc-aulmamei Mar 4, 2026
89a41f5
Merge remote-tracking branch 'hpc-aulmamei/dev' into dev
JOOpdenhoevel Mar 4, 2026
558762c
linker: Moved linker results to per project, instead of per-user.
hpc-aulmamei Mar 4, 2026
b01a3dd
Added gitignore.
hpc-aulmamei Mar 4, 2026
a99f63d
Merge remote-tracking branch 'hpc-aulmamei/dev' into dev
JOOpdenhoevel Mar 5, 2026
7e0e1dd
Changed vrt structure (removed api). Added debian packaging
amd-vserbu Mar 5, 2026
57bc618
Added pre-clean and post-clean to dpkg-buildpackage
amd-vserbu Mar 5, 2026
43335b3
Fix bad library depends
amd-vserbu Mar 5, 2026
2d92e64
Pass arguments to v80++
amd-vserbu Mar 5, 2026
7437734
Generalize pconfigure
amd-vserbu Mar 5, 2026
ed7f6a2
Generalize pinstall
amd-vserbu Mar 5, 2026
fc81d5c
Renable debian package script to package-deb.sh
amd-vserbu Mar 5, 2026
77ab4d4
rpm package (rough draft)
amd-vserbu Mar 5, 2026
78fa0e0
rpm packaging
serbuvlad Mar 5, 2026
e9037d7
Fix dependency issue in rpm spec
serbuvlad Mar 5, 2026
32a374f
Merge branch 'dev' into dev
hpc-aulmamei Mar 5, 2026
23f45dd
Merge pull request #7 from amd-vserbu/dev
hpc-aulmamei Mar 5, 2026
c4da727
Merge remote-tracking branch 'hpc-aulmamei/dev' into dev
JOOpdenhoevel Mar 6, 2026
bb65473
linker: Added TCL injection.
hpc-aulmamei Mar 6, 2026
4ea3842
linker: Added timing report to system map.
hpc-aulmamei Mar 6, 2026
3826099
linker: added debug probes. TODO: insert debug probes in base design.
hpc-aulmamei Mar 7, 2026
c049766
Adding a linker configuration class and using it in the emulation flow
JOOpdenhoevel Mar 6, 2026
0315f31
Also using the linker config for simulation
JOOpdenhoevel Mar 6, 2026
16bac37
Integrating the linker config into the hardware flow (WIP)
JOOpdenhoevel Mar 6, 2026
2fa62b1
Moving argument parsing to the config class and adding a VBIN out arg…
JOOpdenhoevel Mar 9, 2026
6518b27
Merge remote-tracking branch 'hpc-aulmamei/dev' into feature/path_cle…
JOOpdenhoevel Mar 9, 2026
7c46f0b
Adding an installation subcommand
JOOpdenhoevel Mar 9, 2026
d1d0e62
Expanding on some option help strings
JOOpdenhoevel Mar 9, 2026
92e983f
Moving the linker_config module to command_config
JOOpdenhoevel Mar 9, 2026
0a6535c
Always creating projects in CWD
JOOpdenhoevel Mar 9, 2026
d54dee6
Small fixes to install_abstract_shell step
JOOpdenhoevel Mar 9, 2026
dafd3a5
Adding a decorator for the "run_with_profiling" function
JOOpdenhoevel Mar 9, 2026
710c714
Removing a broken import
JOOpdenhoevel Mar 9, 2026
6945d4a
Adding a minimal CMake integration for the new linker CLI
JOOpdenhoevel Mar 9, 2026
07efd56
Turning the Slash script into a find_package script
JOOpdenhoevel Mar 9, 2026
47bf251
Removing obsolete files
JOOpdenhoevel Mar 9, 2026
83d6652
Moving the AVED submodule
JOOpdenhoevel Mar 10, 2026
2ff902f
Revert "Moving the AVED submodule"
JOOpdenhoevel Mar 10, 2026
b9436f6
Removing a hardcoded path in the installation build TCL and moving th…
JOOpdenhoevel Mar 10, 2026
01a2115
Moving the abstract shell files into the resources directory
JOOpdenhoevel Mar 10, 2026
fef1b07
Removing leftovers from the old multi-step linker
JOOpdenhoevel Mar 10, 2026
fbf0f0e
Fixing/Updating the hardware build step, part 1
JOOpdenhoevel Mar 10, 2026
d554ddb
Revert "Fixing/Updating the hardware build step, part 1"
JOOpdenhoevel Mar 10, 2026
6621433
Fixing the hardware build process
JOOpdenhoevel Mar 10, 2026
ba3dd20
Removing an obsolete module and running autopep8
JOOpdenhoevel Mar 10, 2026
4e83820
Removing unneeded imports
JOOpdenhoevel Mar 10, 2026
d58c747
Moving input parsing into the command configuration
JOOpdenhoevel Mar 10, 2026
5862ff3
Properly adding the network config to the connectivity config and onl…
JOOpdenhoevel Mar 10, 2026
c1878d6
Only profiling hardware build steps
JOOpdenhoevel Mar 10, 2026
50b9a9f
Added debug ctx.
hpc-aulmamei Mar 10, 2026
8bf9bd2
Last-minute fixes
JOOpdenhoevel Mar 10, 2026
a9454df
Properly removing old AVED submodules
JOOpdenhoevel Mar 11, 2026
d519aba
Moving the simulator C++ sources into the resources folder
JOOpdenhoevel Mar 11, 2026
91674fb
Removing the linker root property from the command configuration
JOOpdenhoevel Mar 11, 2026
700597b
Implementing the resource directory lookup logic
JOOpdenhoevel Mar 11, 2026
b7b5af0
Adding epilogs to the argument parsers
JOOpdenhoevel Mar 11, 2026
471f60a
Tweaking documentation
JOOpdenhoevel Mar 11, 2026
63b421d
linker: added port mapping to functional args for buffer type.
hpc-aulmamei Mar 11, 2026
00ca20e
Merge remote-tracking branch 'hpc-aulmamei/dev' into feature/path_cle…
JOOpdenhoevel Mar 11, 2026
a351317
Merge pull request #9 from JOOpdenhoevel/feature/path_cleanup_new
hpc-aulmamei Mar 12, 2026
3f7913d
Merge remote-tracking branch 'hpc-aulmamei/dev' into dev
JOOpdenhoevel Mar 12, 2026
eb4735f
Minimizing unnecessary changes relative to dev
JOOpdenhoevel Mar 12, 2026
c21a388
Eliminating unnecessary changes, part 2
JOOpdenhoevel Mar 12, 2026
4501e4e
Fixing a small include error
JOOpdenhoevel Mar 12, 2026
6ae16e3
Removing the single-IP-repo imports
JOOpdenhoevel Mar 12, 2026
e216636
Copying all IPs into a dedicated IP repo, and removing the external I…
JOOpdenhoevel Mar 12, 2026
26de8b8
Autopep8-ing
JOOpdenhoevel Mar 12, 2026
1bac9d8
Fixing the resource dir usage in the build TCL scripts
JOOpdenhoevel Mar 12, 2026
8876082
Fixing the report generation
JOOpdenhoevel Mar 13, 2026
ff864f8
Merge pull request #10 from JOOpdenhoevel/fix/base_ip_repo_path
hpc-aulmamei Mar 13, 2026
154cb4f
Merge remote-tracking branch 'hpc-aulmamei/dev' into joo-dev
JOOpdenhoevel Mar 13, 2026
ae4c8c2
Merge pull request #2 from JOOpdenhoevel/dev
hpc-aulmamei Mar 13, 2026
f38df0a
Fixing a renaming error
JOOpdenhoevel Mar 18, 2026
5648fe1
Merge pull request #11 from JOOpdenhoevel/dev
hpc-aulmamei Mar 24, 2026
2362c5a
Moved debian files to packaging
amd-vserbu Mar 5, 2026
c861fa4
Update gitignore for new packaging flow
amd-vserbu Mar 6, 2026
f37385a
Centralize versioning to packaging/version
amd-vserbu Mar 6, 2026
e74dda7
Hotfix: Removed CXX as a language from libslash
amd-vserbu Mar 6, 2026
ad63535
Libslash documentation and licensing updates
amd-vserbu Mar 11, 2026
ae5a12d
Fix mode of source files (unset execution bit)
amd-vserbu Mar 11, 2026
f862cc2
Added missing dependencies to rpm build and ensure python version
amd-vserbu Mar 11, 2026
2a50ebd
Added smi and reset functionality to vrt
amd-vserbu Mar 11, 2026
c5f1fdc
Add required and after to connect the vrtd service to the vrtd socket…
amd-vserbu Mar 11, 2026
4804ad6
Packaging for smi
amd-vserbu Mar 11, 2026
bf5c451
Added logging for vrtd auth errors
amd-vserbu Mar 12, 2026
1a140ff
New options for initializing buffers for kernels in VRT
amd-vserbu Mar 12, 2026
57275eb
Updated example vrtd config file
amd-vserbu Mar 12, 2026
bd591ff
reset_with_ami return code bug fix
amd-vserbu Mar 12, 2026
699c328
Added better logging to vrt
amd-vserbu Mar 12, 2026
3542dec
Added more debug messages
amd-vserbu Mar 12, 2026
ebb3a67
Added missing dependency to debian flow
amd-vserbu Mar 12, 2026
9328217
Updated linker install to the new flow
amd-vserbu Mar 12, 2026
49e1870
bdf normalization and extra logging
amd-vserbu Mar 12, 2026
d3da10f
Added vrtd capability for ami reset
amd-vserbu Mar 12, 2026
d48c6f4
Fix ami reset sequence with workaround hack
amd-vserbu Mar 12, 2026
9fe8929
Added root domain fallback for toggle sbr
amd-vserbu Mar 12, 2026
9fa33db
Make vrtd includes relative
amd-vserbu Mar 13, 2026
15f09e0
Stop packaging __pycache__
amd-vserbu Mar 13, 2026
d835285
Do not require a device to be tracked to toggle sbr on it in the driv…
amd-vserbu Mar 13, 2026
da5062b
Remove old smi files
Mar 13, 2026
e7f38bb
Added documentation
amd-vserbu Mar 13, 2026
99d9ffb
Add better error detection in smi inspect
amd-vserbu Mar 16, 2026
61a3416
Added report_utilization to vrt/smi
amd-vserbu Mar 16, 2026
69436f3
Added detail status of driver on smi list
amd-vserbu Mar 16, 2026
257c0f9
Added better BDF managmente
amd-vserbu Mar 16, 2026
db52fcb
Changed vrtd.conf permission structure
amd-vserbu Mar 16, 2026
0aa9216
Modified AMI submodule path to new location
amd-vserbu Mar 16, 2026
4ff34ac
Remove nested comments from documentation
amd-vserbu Mar 16, 2026
73d76b5
Remove nested comments from documentation
amd-vserbu Mar 16, 2026
cf556b0
Remove nested comments from documentation
amd-vserbu Mar 16, 2026
1ca1170
Fixed function definition
amd-vserbu Mar 16, 2026
4869fde
Fixed same driver name for the 2 pcie drivers of slash
amd-vserbu Mar 16, 2026
6fee7bf
Added vrtd check to v80-smi list
amd-vserbu Mar 16, 2026
dcf055e
Added vrtd check to v80-smi list
amd-vserbu Mar 16, 2026
bc96836
Removed CAP_DAC_OVERRIDE capability
amd-vserbu Mar 16, 2026
245231b
Remove rawio requirement to access bar
amd-vserbu Mar 16, 2026
30e69b9
Added back raw IO capability for mmap in the clock driver
amd-vserbu Mar 18, 2026
3b66308
Change bar access from io_remap_pfn_range() to vmf_insert_pfn() to by…
amd-vserbu Mar 18, 2026
66ac847
Modified examples and now install helper slash cmake tools
amd-vserbu Mar 18, 2026
96621ab
Updated cmake flow for the examples
amd-vserbu Mar 18, 2026
20f1df4
Fix vrtd library target install cmake
amd-vserbu Mar 18, 2026
c4f7f08
Fix includes in examples
amd-vserbu Mar 18, 2026
db331f5
Added scripts for testing
amd-vserbu Mar 18, 2026
2363197
Fix test_examples.sh script when no BDF detected
amd-vserbu Mar 18, 2026
4b33e8f
Fix jsoncpp transitive include
amd-vserbu Mar 18, 2026
d596050
Better build from repo for the examples
amd-vserbu Mar 18, 2026
1660185
Source ld library path in test-examples
amd-vserbu Mar 18, 2026
f4692c7
Use argMemoryConfig for examples
amd-vserbu Mar 18, 2026
3f5a921
Use argMemoryConfig for examples
amd-vserbu Mar 18, 2026
e26400f
Use portMemoryConfig for examples
amd-vserbu Mar 18, 2026
d5a32bc
Fix vrt MEM0
amd-vserbu Mar 18, 2026
35af713
Fix/simplify smi list board print
amd-vserbu Mar 18, 2026
77f9761
Fixed python dependency for rhel
amd-vserbu Mar 19, 2026
56d9359
Fixed python dependency for rhel
amd-vserbu Mar 19, 2026
4f6139e
Renamed test scripts
amd-vserbu Mar 19, 2026
f11f3eb
Made all scripts executable
amd-vserbu Mar 19, 2026
de58ab1
Cleaned up iprepo makefiles and added root-design-clean.sh
amd-vserbu Mar 19, 2026
30a0717
Removed reload_driver.sh
amd-vserbu Mar 19, 2026
9911abd
Remove submodules/aved from package
amd-vserbu Mar 19, 2026
49b9e3f
Remove install.prj from package
amd-vserbu Mar 19, 2026
6a5cddc
Removed IP_REPO from build examples to align with linker updates
amd-vserbu Mar 19, 2026
cf270e9
Always vendor deps for package
amd-vserbu Mar 19, 2026
b0c6f1e
Select partition 0 AND properly select dmabuf namespace in the kernel…
amd-vserbu Mar 20, 2026
221dd20
Allow hotplug for any BDF
amd-vserbu Mar 20, 2026
3c1c380
Added debug messages to hotplug
amd-vserbu Mar 20, 2026
11d7c08
Fix htoplug device udev rule
amd-vserbu Mar 20, 2026
9502761
Add timeout after rescan
amd-vserbu Mar 20, 2026
d8d710f
Enable sysusers and dkms managment for rpm packages
amd-vserbu Mar 20, 2026
b425eb6
Added udevadm reload to rpm
amd-vserbu Mar 20, 2026
b83bc06
Exclude src rpm
amd-vserbu Mar 20, 2026
1b5e061
Better handling of conf packaging
amd-vserbu Mar 20, 2026
65055c3
Changed socket mode to 666 (permissions are checked by the daemon)
amd-vserbu Mar 20, 2026
96456a7
Tentative fix for reset issue
amd-vserbu Mar 20, 2026
08fb2dc
Tentative fix for reset issue
amd-vserbu Mar 23, 2026
efa7ece
Driver hotplug simplification
amd-vserbu Mar 23, 2026
ea44f5f
Added stress test script
amd-vserbu Mar 23, 2026
b107252
Add a delay to match ami
amd-vserbu Mar 23, 2026
0eda200
Add more debugging infromation in the reset path
amd-vserbu Mar 23, 2026
1160f0c
Add a delay to match ami
amd-vserbu Mar 23, 2026
ab96c19
Added package AMI scripts
amd-vserbu Mar 23, 2026
4a8c16e
Fix package-ami.sh script
amd-vserbu Mar 23, 2026
3470e84
Fixes to packaging scripts
amd-vserbu Mar 23, 2026
18b0532
Mark package-ami as executable
amd-vserbu Mar 23, 2026
1cbceda
Added rescan retry
amd-vserbu Mar 23, 2026
3b2e4b0
Added v80-smi list --sensors
amd-vserbu Mar 23, 2026
8984163
Return 2 for accuracy failiures.
amd-vserbu Mar 24, 2026
49dba57
Double free fix
amd-vserbu Mar 24, 2026
95884e1
Remove rendundant code. Add sanitize to tests
amd-vserbu Mar 24, 2026
e5015b0
Fix memory leak
amd-vserbu Mar 24, 2026
6de723d
Fix memory leak
amd-vserbu Mar 24, 2026
570d338
Fix memory leak
amd-vserbu Mar 24, 2026
a6593aa
Added resource utilisation parser
amd-vserbu Mar 24, 2026
db0886b
Prettier smi formatting
amd-vserbu Mar 24, 2026
b99ccc1
Added documentation
amd-vserbu Mar 24, 2026
cb20a3e
Added documentation stubs
amd-vserbu Mar 24, 2026
f2719fa
Filed out documentation
amd-vserbu Mar 25, 2026
ab402aa
Made all scripts executable
amd-vserbu Mar 25, 2026
49c6381
Do not produce source rpms in package-rpm.sh
amd-vserbu Mar 25, 2026
3bc9f37
Added ami to fresh-install script
amd-vserbu Mar 25, 2026
4a05fdc
Documentation
amd-vserbu Mar 25, 2026
1f7c16e
Tentative fix for root port PCIe reset
amd-vserbu Mar 25, 2026
92399f7
Merge pull request #8 from amd-vserbu/dev
hpc-aulmamei Mar 25, 2026
1549d16
Added license headers.
hpc-aulmamei Mar 25, 2026
b4308f3
Removed unused files
hpc-aulmamei Mar 25, 2026
6e5af29
Added -Wno-error=zero-length-bounds for AMC build
amd-vserbu Mar 26, 2026
f0e855d
Remove special case for not running example 2 on emu (it works on emu)
amd-vserbu Mar 26, 2026
fe9cf90
Switched to argMemoryConfig where it makes sense
amd-vserbu Mar 26, 2026
7910c6e
Try _r suffix when matching arguments
amd-vserbu Mar 27, 2026
164152a
Documentation
amd-vserbu Mar 27, 2026
fdee122
Documentation
amd-vserbu Mar 27, 2026
34b855a
Open bar file once per-kernel, not once per register access
amd-vserbu Mar 27, 2026
0969f78
Removed refrences to examples and tests in cmake for libslash
amd-vserbu Mar 27, 2026
d956ee5
Documentation fixes
amd-vserbu Mar 27, 2026
d944101
Changed libslash to Doxygen
amd-vserbu Mar 27, 2026
b4f1d6e
Merge pull request #12 from amd-vserbu/dev
hpc-aulmamei Mar 29, 2026
b23555b
Removed smbus IP.
hpc-aulmamei Apr 1, 2026
bbc50d6
Merge pull request #47 from hpc-aulmamei/dev
hpc-aulmamei Apr 1, 2026
ef5ab95
Update RTD runner
quetric Apr 7, 2026
b5b14af
Reset debug progress, documentation updates, and v80-smi debug comman…
amd-vserbu Apr 15, 2026
2efaed3
Properly find_package-ing the CLI11 dependency of v80-smi (#59)
JOOpdenhoevel Apr 15, 2026
aeb5ca9
Documented smbus dependency
amd-vserbu Apr 16, 2026
03fc9fc
Fix vm_flags setting for kernel >=6.3.0
amd-vserbu Apr 16, 2026
a96d296
Remove incorrect __exit for slash_qdma_exit (called from __init code)
amd-vserbu Apr 16, 2026
185ec62
Updated MODULE_IMPORT_NS usage for kernel >=6.13
amd-vserbu Apr 16, 2026
efe5385
Added migrate from xrt guide (#63)
amd-vserbu Apr 17, 2026
0b4f437
Merge pull request #61 from amd-vserbu/dev
hpc-aulmamei Apr 17, 2026
1e5a75e
Merge pull request #62 from amd-vserbu/hwe22-04
hpc-aulmamei Apr 17, 2026
64b7a3d
Update index.rst
quetric Apr 20, 2026
3a54869
Initial driver test suite (#64)
JOOpdenhoevel Apr 20, 2026
8bffced
Linker unit testing infrastructure (#60)
JOOpdenhoevel Apr 21, 2026
4921899
Added various checks to the package build flow
amd-vserbu Apr 22, 2026
04e093f
Added --noninteractive
amd-vserbu Apr 22, 2026
f54ce39
Merge pull request #67 from amd-vserbu/feature/rm-ask
hpc-aulmamei Apr 22, 2026
04dca02
Documentation for bootstrapping AVED (#69)
amd-vserbu Apr 28, 2026
b0f51a4
VRT unit testing (#65)
JOOpdenhoevel Apr 28, 2026
7208ad7
[VRT] Enabling tests in the unit testing GHA workflow (#72)
JOOpdenhoevel Apr 28, 2026
15356b8
Fixing the evaluating of HLS metadata for simulation
JOOpdenhoevel Apr 30, 2026
c9445c3
Removing the system update from the VRT unit tests
JOOpdenhoevel May 5, 2026
4c9f919
Adding a guide on how to link HDL kernels (#75)
JOOpdenhoevel May 6, 2026
8c08d83
Merge pull request #74 from JOOpdenhoevel/fix/sim_hls_metadata
hpc-aulmamei May 6, 2026
c1aa110
libslash and VRTD unit testing (#68)
JOOpdenhoevel May 6, 2026
26fc28b
Turning the v80++ linker into a well-behaved Python package (#73)
JOOpdenhoevel May 6, 2026
06ddb7b
Fixing small errors in the rebuilt packaging system (#77)
JOOpdenhoevel May 7, 2026
d701aff
Enable build of 06_dcmac example
papeg May 5, 2026
dfbb957
Clean CFLAGS-family and DEB_* environment before building the AMC fir…
amd-vserbu May 7, 2026
1a03720
Fix compilation warnings for the C/C++ code (#80)
amd-vserbu May 7, 2026
9f94271
06_dcmac: align SLASH_USE_REPO=ON with the other examples
papeg May 8, 2026
d232510
06_dcmac: set CXX standard to 20
papeg May 8, 2026
2ade25c
Merge pull request #81 from papeg/dev-enable-06_dcmac-build
hpc-aulmamei May 11, 2026
e4324b7
[Driver] Fixing the user_size-based versioning of ioctl argument structs
JOOpdenhoevel May 13, 2026
0ac2296
Merge pull request #82 from Xilinx/fix/driver_user_size_versioning
JOOpdenhoevel May 14, 2026
92e59d3
Make slash kernel module follow versioning (#85)
amd-vserbu May 15, 2026
96e3deb
Make SLASH_LICENSE_PATH optional
amd-vserbu May 15, 2026
66b5829
Merge pull request #86 from amd-vserbu/docker-optional-license-path
JOOpdenhoevel May 15, 2026
b9c10ad
Update ami_tool flash path in documentation (#89)
amd-vserbu May 18, 2026
431028a
Bump AVED submodule (#90)
amd-vserbu May 18, 2026
402729c
Initialize previously uninitialized variables in vrt::Kernel (#88)
amd-vserbu May 18, 2026
03c67c3
Add AMI patch for RHEL 9.5+ (#93)
amd-vserbu May 20, 2026
20489ed
Fix DCMAC example by exposing resource0 to do MMIO (#91)
mariodruiz May 20, 2026
cb1ef56
Change to kcompat system (#92)
amd-vserbu May 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -18,30 +18,35 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# ##################################################################################################

name: CI Build SW
name: Linker unit testing

on:
push:
branches:
- main
- dev
pull_request:

jobs:
build:
runs-on: ubuntu-22.04
linker_unit_tests:
runs-on: ubuntu-24.04
permissions: { contents: read }

steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Install build tools
run: |
sudo apt-get update -qq
sudo apt-get install -y build-essential linux-headers-$(uname -r) libxml2-dev libzmq3-dev libjsoncpp-dev
- name: Setup python
uses: actions/setup-python@v6
with:
python-version: "3.10"
cache: "pip"

- name: Build hotplug driver
if: ${{ false }}
run: |
cd ${{ github.workspace }}/submodules/pcie-hotplug-drv/ && make
- name: Install required packages
run: pip install -r requirements.txt

- name: Build linker
run: |
cd ${{ github.workspace }}/submodules/v80-vitis-flow && cmake . && make
- name: Run unit tests
run: cd linker && pytest

- name: Check formatting
run: cd linker && autopep8 -r --diff --exit-code --exclude 'slashkit/resources/*' slashkit/ test/
72 changes: 72 additions & 0 deletions .github/workflows/vrt-unit-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# ##################################################################################################
# The MIT License (MIT)
# Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software
# and associated documentation files (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge, publish, distribute,
# sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all copies or
# substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
# NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# ##################################################################################################

name: VRT unit testing

on:
push:
branches:
- main
- dev
pull_request:

jobs:
vrt_unit_tests:
runs-on: ubuntu-24.04
permissions: { contents: read }

steps:
- name: Checkout code
uses: actions/checkout@v6
with:
submodules: "true"

- name: Install dependencies
run: |
sudo apt install -y cmake pkg-config ninja-build \
libxml2-dev libzmq3-dev libjsoncpp-dev zlib1g-dev \
libsystemd-dev libinih-dev libcli11-dev lcov python3-zmq

- name: Build and run VRT unit tests
run: |
mkdir vrt/build
cd vrt/build
cmake -DVRT_INCLUDE_VRTD=1 -DVRTD_INCLUDE_LIBSLASH=1 -DVRT_BUILD_TESTS=1 -DENABLE_COVERAGE=1 ..
make unit_tests -j$(nproc)
cd tests && ctest --output-on-failure

- name: Generate coverage report
run: |
cd vrt/build
lcov --capture --directory . --output-file coverage.info \
--ignore-errors mismatch --ignore-errors negative
lcov --remove coverage.info \
'/usr/*' '*/build/_deps/*' '*/vrtd/*' '*/tests/*' \
--output-file coverage.filtered.info \
--ignore-errors unused
genhtml coverage.filtered.info --output-directory coverage-report
lcov --list coverage.filtered.info

- name: Upload coverage report
uses: actions/upload-artifact@v4
with:
name: vrt-coverage-report
path: vrt/build/coverage-report/

72 changes: 72 additions & 0 deletions .github/workflows/vrtd-unit-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# ##################################################################################################
# The MIT License (MIT)
# Copyright (c) 2025-2026 Advanced Micro Devices, Inc. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software
# and associated documentation files (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge, publish, distribute,
# sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all copies or
# substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
# NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# ##################################################################################################

name: VRTD unit testing

on:
push:
branches:
- main
- dev
pull_request:

jobs:
vrtd_unit_tests:
runs-on: ubuntu-24.04
permissions: { contents: read }

steps:
- name: Checkout code
uses: actions/checkout@v6
with:
submodules: "true"

- name: Install dependencies
run: |
sudo apt update
sudo apt install -y cmake pkg-config ninja-build \
libsystemd-dev libinih-dev lcov

- name: Build and run VRTD unit tests
run: |
mkdir vrt/vrtd/build
cd vrt/vrtd/build
cmake -DVRTD_BUILD_TESTS=1 -DVRTD_INCLUDE_LIBSLASH=1 -DENABLE_COVERAGE=1 ..
make unit_tests -j$(nproc)
export LD_LIBRARY_PATH=$(pwd)/libslash/src/:$LD_LIBRARY_PATH
cd tests && ctest --output-on-failure

- name: Generate coverage report
run: |
cd vrt/vrtd/build
lcov --capture --directory . --output-file coverage.info \
--ignore-errors mismatch --ignore-errors negative
lcov --remove coverage.info \
'/usr/*' '*/build/_deps/*' '*/tests/*' \
--output-file coverage.filtered.info \
--ignore-errors unused
genhtml coverage.filtered.info --output-directory coverage-report
lcov --list coverage.filtered.info

- name: Upload coverage report
uses: actions/upload-artifact@v4
with:
name: vrtd-coverage-report
path: vrt/vrtd/build/coverage-report/
29 changes: 29 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -53,5 +53,34 @@ Thumbs.db
*~
*.Xil
!build_all.sh
!build_bsp.sh

.clang-format
.cache
**/linker_results/
**/linker_results_*/

__pycache__/
*.pyc
.venv/

# Kernel module kcompat probe scratch (driver/kcompat/probe.sh)
driver/kcompat/.scratch/

# Build files for package
/pbuild/
/rpmbuild/
/debian/

# Output files for package
/deb/
/rpm/

# VBIN build directories
*.prj

# Python virtual environment
.venv

# Python test coverage
.coverage
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[submodule "submodules/qdma_drv"]
path = submodules/qdma_drv
url = https://github.com/Xilinx/dma_ip_drivers.git
[submodule "submodules/v80-vitis-flow/submodules/aved"]
path = submodules/v80-vitis-flow/submodules/aved
[submodule "AVED"]
path = submodules/AVED
url = https://github.com/Xilinx/AVED.git
6 changes: 3 additions & 3 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@
version: 2

build:
os: ubuntu-20.04
os: ubuntu-24.04
tools:
python: "3.8"
python: "3.12"
apt_packages:
- graphviz

Expand All @@ -39,4 +39,4 @@ sphinx:

python:
install:
- requirements: docs/requirements.txt
- requirements: docs/requirements.txt
Loading
Loading