aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-x.github/ci/build_interchange.sh8
-rw-r--r--.github/workflows/interchange_ci.yml3
-rw-r--r--fpga_interchange/examples/chipdb.cmake2
-rw-r--r--fpga_interchange/examples/devices/LIFCL-17/test_data.yaml8
-rw-r--r--fpga_interchange/family.cmake2
5 files changed, 21 insertions, 2 deletions
diff --git a/.github/ci/build_interchange.sh b/.github/ci/build_interchange.sh
index 1d2ee9dc..dedc01e2 100755
--- a/.github/ci/build_interchange.sh
+++ b/.github/ci/build_interchange.sh
@@ -40,6 +40,14 @@ function get_dependencies {
pushd ${RAPIDWRIGHT_PATH}
make update_jars
popd
+
+ # Install prjoxide
+ curl --proto '=https' -sSf https://sh.rustup.rs | sh -s -- -y
+ git clone --recursive https://github.com/gatecat/prjoxide.git
+ pushd prjoxide/libprjoxide
+ PATH=$PATH:$HOME/.cargo/bin cargo install --path prjoxide --all-features
+ popd
+
}
function build_nextpnr {
diff --git a/.github/workflows/interchange_ci.yml b/.github/workflows/interchange_ci.yml
index 4639b261..71727fe3 100644
--- a/.github/workflows/interchange_ci.yml
+++ b/.github/workflows/interchange_ci.yml
@@ -106,7 +106,8 @@ jobs:
RAPIDWRIGHT_PATH: ${{ github.workspace }}/RapidWright
INTERCHANGE_SCHEMA_PATH: ${{ github.workspace }}/3rdparty/fpga-interchange-schema/interchange
PYTHON_INTERCHANGE_PATH: ${{ github.workspace }}/python-fpga-interchange
- PYTHON_INTERCHANGE_TAG: v0.0.4
+ PYTHON_INTERCHANGE_TAG: v0.0.6
+
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
source ./.github/ci/build_interchange.sh
diff --git a/fpga_interchange/examples/chipdb.cmake b/fpga_interchange/examples/chipdb.cmake
index 753bb257..5ac0ce78 100644
--- a/fpga_interchange/examples/chipdb.cmake
+++ b/fpga_interchange/examples/chipdb.cmake
@@ -104,7 +104,7 @@ function(create_prjoxide_device_db)
add_custom_command(
OUTPUT ${prjoxide_device_db}
COMMAND
- prjoxide
+ ${PRJOXIDE_PREFIX}/bin/prjoxide
interchange-export
${device}
${prjoxide_device_db}
diff --git a/fpga_interchange/examples/devices/LIFCL-17/test_data.yaml b/fpga_interchange/examples/devices/LIFCL-17/test_data.yaml
new file mode 100644
index 00000000..c4787eba
--- /dev/null
+++ b/fpga_interchange/examples/devices/LIFCL-17/test_data.yaml
@@ -0,0 +1,8 @@
+pip_test:
+ - src_wire: R3C3_PLC.PLC/JDI0_SLICEA
+ dst_wire: R3C3/JF0
+bel_pin_test:
+ - bel: R7C3_PLC.PLC/SLICEA_LUT0
+ pin: D
+ wire: R7C3_PLC.PLC/JD0_SLICEA
+
diff --git a/fpga_interchange/family.cmake b/fpga_interchange/family.cmake
index 139914ef..fdfa7004 100644
--- a/fpga_interchange/family.cmake
+++ b/fpga_interchange/family.cmake
@@ -8,6 +8,8 @@ find_package(ZLIB REQUIRED)
set(RAPIDWRIGHT_PATH $ENV{HOME}/RapidWright CACHE PATH "Path to RapidWright")
set(INVOKE_RAPIDWRIGHT "${RAPIDWRIGHT_PATH}/scripts/invoke_rapidwright.sh" CACHE PATH "Path to RapidWright invocation script")
set(JAVA_HEAP_SPACE "-Xmx8g" CACHE STRING "Heap space reserved for Java")
+set(PRJOXIDE_PREFIX $ENV{HOME}/.cargo CACHE PATH "prjoxide install prefix")
+
# FIXME: Make patch data available in the python package and remove this cached var
set(PYTHON_INTERCHANGE_PATH $ENV{HOME}/python-fpga-interchange CACHE PATH "Path to the FPGA interchange python library")
set(INTERCHANGE_SCHEMA_PATH ${PROJECT_SOURCE_DIR}/3rdparty/fpga-interchange-schema/interchange CACHE PATH "Path to the FPGA interchange schema dir")