Skip to content

nvme.device 1.61

Choose a tag to compare

@derfsss derfsss released this 12 Apr 18:14
· 25 commits to master since this release

nvme.device 1.61 — 2026-04-12

Native AmigaOS 4.1 Final Edition block-device driver for NVMe controllers on PCIe. Single binary runs on every AmigaOS 4.1 FE platform whose PCIe bridge forwards CPU memory cycles.

Highlights

  • Validated end-to-end on QEMU Pegasos2: boots to DOS / Workbench, partitioned via Media Toolbox, formatted with SmartFilesystem (SFS/00), benchmarked with AmigaDiskBench — sustained 265–279 MB/s sequential.
  • SMART telemetry visible in AmigaDiskBench's SMART tab via HD_SCSICMD ATA PASS-THROUGH (CDB 0x85 / 0xA1) translation from NVMe Log Page 0x02.
  • Multi-controller: up to 4 NVMe devices × 8 namespaces each (32 flat units).
  • Boot-drive compatible (resident priority 0, matching virtioscsi.device).
  • Release build is silent except for the startup banner on the serial console; debug build ships alongside (rename to swap in).

Supported platforms (one binary, runtime-detected)

Platform Host bridge Status
QEMU Pegasos2 MV64361 Tested end-to-end
Pegasos II MV64361 Should work
Sam440ep AMCC 440EP Expected to work
Sam460ex AMCC 460EX Expected to work
X1000 PA6T Nemo Expected to work
X5000 QorIQ P5020/P5040 Expected to work
A1222 "Tabor" QorIQ P1022 Expected to work
AmigaOne 500 Expected to work
AmigaOne XE/SE Mai Logic Articia S Unsupported — bridge does not forward MMIO; driver aborts cleanly

Archive contents (nvme.lha)

nvme/
├── AutoInstall               (AmiUpdate-ready installer)
├── nvme.device               (release build — this is the driver)
├── nvme.device.debug         (debug build — full verbose trace, rename to swap in)
├── test_nvme                 (10-step functional smoke test)
├── nvme_stats                (CLI monitor for NSCMD_NVME_GETSTATS)
├── nvme.readme               (plain-text end-user docs)
└── diskboot.config.sample    (example Kickstart: diskboot.config entry)
nvme.readme                   (duplicate at archive root for os4depot)

Install

lha x nvme.lha
execute nvme/AutoInstall

For boot-drive use, copy nvme.device into Kickstart: and append nvme.device 1 1 to Kickstart:diskboot.config. See docs/nvme_boot_strategy.md in the source repository for the full procedure (including the QEMU Pegasos2 kickstart.zip layout).

Links