Skip to content

v1.8 — Unified Platform Support & Performance

Choose a tag to compare

@derfsss derfsss released this 11 Apr 15:20

What's New

Unified QEMU Platform Support

Single -device virtio-scsi-pci works on all three QEMU PowerPC machines — AmigaOne, Pegasos2, and SAM460ex. The driver auto-detects modern vs legacy VirtIO transport at boot via an MMIO probe. No platform-specific QEMU configuration required.

Performance Optimizations

  • Cacheable bounce buffers: CopyMem + CacheClearE replaces non-cacheable volatile copy (~10-20x faster for ≤64KB I/O)
  • O(1) cross-unit cookie routing: unit number encoded in req_cmd->id, eliminates O(128) search
  • ISR occupancy bitmask: skips units with no inflight I/O

Debug Instrumentation

  • Error-path DPRINTF added to all command handlers for serial debug output
  • Boot version line includes build time

QEMU Setup (all machines)

-device virtio-scsi-pci,id=scsi0 \
-drive file=image_file.img,if=none,id=vd0,format=raw \
-device scsi-hd,drive=vd0,bus=scsi0.0,channel=0,scsi-id=0,lun=0

Installation

Add virtioscsi.device to your BBoot Kickstart zip or SYS:Kickstart/ folder and add MODULE Kickstart/virtioscsi.device to the Kicklayout file.

🤖 Generated with Claude Code