← Blog
KERNEL · 0.6.0

Apple Silicon HAL Batch 9: NVMe Scheduler, ANE Scheduler, HW Crypto, RTKit FW + PPC SPR, Cache, DBDMA, TLB

June 22, 2026 · sigil-kernel · Sigil-Docs
kernel hal apple-silicon powerpc hardware 0.6.0

sigil-kernel's ninth HAL batch adds 8 more seams — Apple: NVMe I/O scheduler (ANS2/ANS3, 4 submission queues, 8-deep rings), ANE command scheduler (2 engines, 4-TD ring, RTKit-style), hardware crypto engine (AES-128 ECB + SHA-256 word-accumulator), RTKit firmware lifecycle (16 endpoints, HELLO/ACK handshake, crash recovery). PowerPC: SPR register file (HID0/MSR/SRR0-SRR1/XER/DSISR/DAR, cache-enable and MMU-translation helpers), L1 cache control (ICBI/DCBST/DCBF/DCBZ, 128-line model, DMA-coherency and self-modifying-code flush patterns), DBDMA (8 channels, INPUT_MORE/INPUT_LAST/OUTPUT_LAST/STOP descriptor ring), TLB + SLB (64-entry TLB tlbie/tlbia, G5 64-entry SLB slbie/slb_fill). All QEMU PASS. (0b39c9a, 9bf38c8, 061496c, 0e441a9)

Apple Silicon HAL QEMU batch verification
Apple Silicon HAL QEMU batch verification

Apple Silicon seams

apple_nvme_sched.sg (9bf38c8) — ANS2/ANS3 NVMe I/O scheduler

The ANS2/ANS3 NVMe controller is an internal Apple fabric — not a standard PCIe NVMe. The scheduler seam models the queue dispatch interface that the kernel uses to submit reads/writes to internal SSD.

NVSCH init=1 sub=1 cmp=1

apple_ane_sched.sg (061496c) — Apple Neural Engine command scheduler

The ANE scheduler follows the same lifecycle model as apple_rtkit_fw — RTKit-style handshake governs engine boot and command dispatch.

ANE_S init=1 sub=1 cmp=1

apple_cryptoeng.sg (0b39c9a) — M1 AES/SHA hardware accelerator seam

The additive AES/SHA models are verifiable stubs — real silicon behavior replaces them at the seam; no component file changes needed when targeting real hardware.

CE init=1 aes=1 sha=1

apple_rtkit_fw.sg (0e441a9) — RTKit firmware lifecycle seam

RTKit is Apple's co-processor IPC framework — it governs AOP/SEP/ISP/ANE mailboxes. Every Apple-specific subsystem that uses a co-processor (audio, camera, biometric) boots via RTKit. This seam models the kernel's firmware management interface.

RTKFW init=1 boot=1 rec=1

PowerPC seams

ppc_spr.sg (9bf38c8) — G3/G4/G5 SPR register file

SPR init=1 cch=1 srr=1

ppc_cache.sg (061496c) — G3/G4/G5 L1 cache operations

L1C init=1 flu=1 icbi=1

ppc_dbdma.sg (0b39c9a) — G3/G4 DBDMA (descriptor-based DMA)

DBDMA init=1 desc=1 run=1

ppc_tlb.sg (0e441a9) — G3/G4/G5 TLB + G5 SLB

TLB init=1 inv=1 slb=1

Batch 9 at a glance

SeamArchBaseCommitPASS
apple_cryptoeng.sgApple Silicon0x4580000b39c9aCE init=1 aes=1 sha=1
ppc_dbdma.sgPowerPC0x4590000b39c9aDBDMA init=1 desc=1 run=1
apple_nvme_sched.sgApple Silicon0x45A0009bf38c8NVSCH init=1 sub=1 cmp=1
ppc_spr.sgPowerPC0x45B0009bf38c8SPR init=1 cch=1 srr=1
apple_ane_sched.sgApple Silicon0x45C000061496cANE_S init=1 sub=1 cmp=1
ppc_cache.sgPowerPC0x45D000061496cL1C init=1 flu=1 icbi=1
apple_rtkit_fw.sgApple Silicon0x45E0000e441a9RTKFW init=1 boot=1 rec=1
ppc_tlb.sgPowerPC0x45F0000e441a9TLB init=1 inv=1 slb=1