flake: fix acpki tests

This commit is contained in:
2026-01-09 11:29:00 +08:00
parent 2fb3c7274d
commit 30fc3ef2e8
3 changed files with 86 additions and 12 deletions

View File

@@ -0,0 +1,82 @@
# For NIST_QC2
device_db = {
"core": {
"type": "local",
"module": "artiq.coredevice.core",
"class": "Core",
"arguments": {
"host": "192.168.1.52",
"ref_period": 1e-9,
"ref_multiplier": 8,
"target": "cortexa9"
}
},
"core_cache": {
"type": "local",
"module": "artiq.coredevice.cache",
"class": "CoreCache"
},
"core_dma": {
"type": "local",
"module": "artiq.coredevice.dma",
"class": "CoreDMA"
},
"i2c_switch": {
"type": "local",
"module": "artiq.coredevice.i2c",
"class": "PCA9548"
},
"led0": {
"type": "local",
"module": "artiq.coredevice.ttl",
"class": "TTLOut",
"arguments": {"channel": 41},
},
}
# TTLs on QC2 backplane
for i in range(40):
device_db["ttl" + str(i)] = {
"type": "local",
"module": "artiq.coredevice.ttl",
"class": "TTLInOut",
"arguments": {"channel": i}
}
device_db["ad9914dds0"] = {
"type": "local",
"module": "artiq.coredevice.ad9914",
"class": "AD9914",
"arguments": {"sysclk": 3e9, "bus_channel": 50, "channel": 0},
}
device_db["ad9914dds1"] = {
"type": "local",
"module": "artiq.coredevice.ad9914",
"class": "AD9914",
"arguments": {"sysclk": 3e9, "bus_channel": 50, "channel": 1},
}
for i in range(4):
device_db["ttl"+str(i)+"_counter"] = {
"type": "local",
"module": "artiq.coredevice.edge_counter",
"class": "EdgeCounter",
"arguments": {"channel": 52+i}
}
# for ARTIQ test suite
device_db.update(
loop_out="ttl0",
loop_in="ttl1",
ttl_out="ttl2",
ttl_out_serdes="ttl2",
)
device_db["core_batch"] = {
"type": "local",
"module": "artiq.coredevice.rtio",
"class": "RTIOBatch"
}

View File

@@ -1,7 +0,0 @@
# Additional device for ACPKI variant.
device_db["core_batch"] = {
"type": "local",
"module": "artiq.coredevice.rtio",
"class": "RTIOBatch"
}

View File

@@ -322,7 +322,7 @@
target = "zc706";
variant = "acpki_nist_qc2";
};
make-zc706-hitl-tests = { name, board-package, ddb_extra_step ? "" }: pkgs.stdenv.mkDerivation {
make-zc706-hitl-tests = { name, board-package, ddb_folder ? "examples" }: pkgs.stdenv.mkDerivation {
name = "zc706-hitl-tests-${name}";
__networked = true; # compatibility with old patched Nix
@@ -371,11 +371,10 @@
sleep 15
echo Running test kernel...
${ddb_extra_step}
artiq_run --device-db ${self}/examples/device_db.py ${self}/examples/mandelbrot.py
artiq_run --device-db ${self}/${ddb_folder}/device_db.py ${self}/examples/mandelbrot.py
echo Running ARTIQ unit tests...
export ARTIQ_ROOT=${self}/examples
export ARTIQ_ROOT=${self}/${ddb_folder}
export ARTIQ_LOW_LATENCY=1
python -m unittest discover artiq.test.coredevice -v
@@ -392,7 +391,7 @@
zc706-acpki-hitl-tests = make-zc706-hitl-tests {
name = "acpki_nist_qc2";
board-package = zc706-acpki_nist_qc2.zc706-acpki_nist_qc2-jtag;
ddb_extra_step = "cat examples/acpki_ddb_extra.py >> examples/device_db.py";
ddb_folder = "examples/acpki";
};
in rec {