From a9e95e3d1e56ecf92a2d6d3954e858d21699ad6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Artur=20N=C3=B3brega?= Date: Fri, 22 Aug 2025 05:08:08 +0100 Subject: [PATCH 1/2] fix(py2hwsw): Update py2hwsw commit to latest version. This fixes issue with missing '.minirc.iobundle.dfl' file in the build directory. --- default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/default.nix b/default.nix index 6260277..9c75005 100644 --- a/default.nix +++ b/default.nix @@ -5,8 +5,8 @@ { pkgs ? import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/24.05.tar.gz") {} }: let - py2hwsw_commit = "fa6bf13600f95735c1d30ace8b1cf4a02561ba67"; # Replace with the desired commit. - py2hwsw_sha256 = "i9Qwxfh9HdsZ/sOn73+U6eJgVBveWdW/DvQRQr8HK58="; # Replace with the actual SHA256 hash. + py2hwsw_commit = "c4ea097573a8e399b3ee0814004ea46e18d3d4f6"; # Replace with the desired commit. + py2hwsw_sha256 = "ZXfn5J9mLLxh/o46ik9syKuDhoFY9NMzdQ/SDDkjXPg="; # Replace with the actual SHA256 hash. # Get local py2hwsw root from `PY2HWSW_ROOT` env variable py2hwswRoot = builtins.getEnv "PY2HWSW_ROOT"; From 89033e0c982144e8515a87634b14cbab23f88956 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Artur=20N=C3=B3brega?= Date: Fri, 22 Aug 2025 05:33:30 +0100 Subject: [PATCH 2/2] fix(Makefile): Build fpga software before bitstreaem. Since the current fpga makefile build process depends on the software, then it must be built first. And since the software build process requires the riscv-gnu-toolchain, then it must run in the nix-shell environment. However, the FPGA build process with vivado does not behave well inside a nix-shell environment. So these two processes must be run separately. The `fpga-run` makefile target will also re-build the FPGA software again, so this is not the most efficient solution. --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index ed3ca98..05434c5 100644 --- a/Makefile +++ b/Makefile @@ -44,6 +44,7 @@ sim-test: fpga-build: nix-shell --run "make clean setup INIT_MEM=0" + nix-shell --run "make -C ../$(CORE)_V$(VERSION)/ fpga-sw-build BOARD=$(BOARD)" make -C ../$(CORE)_V$(VERSION)/ fpga-build BOARD=$(BOARD) fpga-run: