Skip to content

ci: add hi3516av200_neo QEMU boot matrix row#192

Merged
widgetii merged 1 commit into
mainfrom
feat/ci-av200-neo-qemu-row
May 26, 2026
Merged

ci: add hi3516av200_neo QEMU boot matrix row#192
widgetii merged 1 commit into
mainfrom
feat/ci-av200-neo-qemu-row

Conversation

@widgetii
Copy link
Copy Markdown
Member

Summary

Follow-up to #191 — adds the QEMU smoke-test row for V3A neo that was deferred while waiting for the firmware nightly to publish openipc.hi3516av200-nor-neo.tgz. That tarball is now in the latest release.

mem=128M is load-bearing: the V3A load_hisilicon defaults os_mem_size=128M so MMZ starts at 0x80000000 + 128M = 0x88000000 and runs through 0x9FFFFFFF (384M). A larger kernel mem= (e.g. mem=256M) would claim 0x80000000-0x8FFFFFFF and overlap MMZ at 0x88000000, tripping ERROR: Conflict MMZ: PHYS(0x88000000, 0x9FFFFFFF) ... MMZ conflict to kernel memory (0x80000000, 0x8FFFFFFF) on insmod and cascading into Unknown symbol across every consumer module. The mem=32M append used by cv200/av100/cv300 rows would also work but 128M matches the production OS/MMZ split V3A firmware actually ships.

Verification

Downloaded openipc.hi3516av200-nor-neo.tgz from latest release, booted via:

qemu-system-arm -M hi3516av200 -m 256M \
  -kernel uImage.hi3516av200 \
  -initrd rootfs.squashfs.hi3516av200 \
  -append "console=ttyAMA0,115200 mem=128M root=/dev/ram0 rootfstype=squashfs" \
  -net nic,model=hisi-gmac -net user,net=10.0.2.0/24
  • ✅ Boots to openipc-hi3516av200 login:
  • ✅ eth0 DHCP via HiGMAC: udhcpc: lease of 10.0.2.15 obtained from 10.0.2.2
  • ✅ No Oops/panic/BUG/Call Trace in dmesg

🤖 Generated with Claude Code

Follow-up to #191 — adds the QEMU smoke-test row for V3A neo that
was deferred from that PR while waiting for the firmware nightly
to publish openipc.hi3516av200-nor-neo.tgz. That tarball is now
in the latest release (firmware run #26432193560).

mem=128M is load-bearing: the V3A load_hisilicon defaults
os_mem_size=128M so MMZ starts at 0x80000000 + 128M = 0x88000000
and runs 0x88000000-0x9FFFFFFF (384M). A larger kernel mem= (e.g.
mem=256M) would claim 0x80000000-0x8FFFFFFF and overlap MMZ at
0x88000000, tripping `ERROR: Conflict MMZ: PHYS(0x88000000,
0x9FFFFFFF) ... MMZ conflict to kernel memory (0x80000000,
0x8FFFFFFF)` on insmod and cascading into "Unknown symbol"
across every consumer module. The 32M append used by
cv200/av100/cv300 rows would also work but 128M matches the
production OS/MMZ split V3A firmware actually ships.

Local verification: downloaded
openipc.hi3516av200-nor-neo.tgz from latest release, booted via
`qemu-system-arm -M hi3516av200 -m 256M -append 'mem=128M ...'`
→ boots cleanly to `openipc-hi3516av200 login:`, eth0 DHCP via
HiGMAC succeeds (lease 10.0.2.15 from 10.0.2.2).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@widgetii widgetii merged commit 0f8b475 into main May 26, 2026
36 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants