The QEMU IVE ops regression job in .github/workflows/build.yml runs kernel/ive_neo/test/qemu/test-ive-ops (the vendored 19-op register checksum test) only against the hi3516ev300 machine model in widgetii/qemu-hisilicon. There's no equivalent for cv500.
This means cv500-specific regressions can land without any automated regression catch:
What's needed
- Upstream QEMU work: widgetii/qemu-hisilicon needs a
hi3516cv500 machine model. Doesn't exist yet — separate project.
- OR: A test runner that ssh's into a CI-attached cv500 board (
openipc-hi3516av300.dlab.doty.ru already serves this role for manual verification) and runs test_persp_hog. Needs ssh key + secret in CI.
(2) is more pragmatic short-term — the lab board exists and works; just needs CI access.
Definition of done
Related
The
QEMU IVE ops regressionjob in.github/workflows/build.ymlrunskernel/ive_neo/test/qemu/test-ive-ops(the vendored 19-op register checksum test) only against thehi3516ev300machine model in widgetii/qemu-hisilicon. There's no equivalent for cv500.This means cv500-specific regressions can land without any automated regression catch:
openipc-hi3516av300.dlab.doty.ru(not in CI).libraries/ive_neo/test/test_persp_hog.c) is opt-in and runs on hardware only.What's needed
hi3516cv500machine model. Doesn't exist yet — separate project.openipc-hi3516av300.dlab.doty.rualready serves this role for manual verification) and runstest_persp_hog. Needs ssh key + secret in CI.(2) is more pragmatic short-term — the lab board exists and works; just needs CI access.
Definition of done
QEMU IVE ops regression (cv500)job runs against it; ORLive cv500 board regressionjob ssh's to a CI-attached cv500 board (likely behind tailscale / CI runner constraints), loads the freshly builtopen_ive_neo.ko+libive_neo.so, runstest_persp_hog, assertsSummary: 0 failures.kernel/ive_neo/**,libraries/ive_neo/**).Related