Watch
1
0
Fork
You've already forked SouveraineOS
0
SouveraineOS/devices/m1
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Fimeg 10685153ea devices/: a support matrix per body
One row per capability, one column per body, with a strict status vocabulary —
"works" means exercised with evidence named, never that a device node appeared.
blueline points at PAF/ rather than copying it; d10 carries its own state; m1
records what already transfers before anything is measured.

The display pipe is corrected in the same change: ADP binds and scans out and
the panel stays dark, so it is partial, not working.
2026-08-09 22:30:29 -04:00
..
README.md devices/: a support matrix per body 2026-08-09 22:30:29 -04:00

m1 — MacBook (Apple Silicon)

Not here yet. This page exists so the first session has somewhere to land and does not start by inventing a structure. Nothing below is measured.

What already transfers, and why that is more than it looks

The d10 bring-up put Apple-silicon knowledge in the tree that was not here before, and the M1 is the platform most of it was written for:

  • m1n1 is Asahi's, and hoolock/m1n1-pauli is a fork of it. On the M1 it is the supported loader rather than a checkm8 payload — so the boot chain gets simpler, not harder, and hoolock/boot.sh's stage split stops needing DFU.
  • ADPdrivers/gpu/drm/adp/, Sasha Finkelstein's pre-DCP display pipe — is upstream for apple,t8103-display-pipe (M1) and t8112 (M2). We drove it on T8010 first, which is the harder direction; the M1 is its home turf. It only covers the Touch Bar pipe there, though: the M1's main display is DCP, a different and much larger driver.
  • panel-summit is the Touch Bar panel, M1/M2, 134 lines and no init sequence. It gained a 750×1334 mode for the d10 and keeps its own.
  • apple-dart, apple-mailbox, apple-rtkit, apple-sart, apple-pmgr-pwrstate, apple-spi, apple-nvme, macsmc are all in the tree and all bind on M1 — several already bind on the d10.
  • 16K pages is the Apple norm; the d10 config already carries it and the ALARM userland was measured 0x10000-aligned, so no distro rebuild was needed.

What does not transfer

  • checkm8. The M1 has no bootrom exploit and does not need one — it boots untrusted kernels through Apple's own supported path.
  • The T8010 PCIe/S3E bring-up sequence, which is board-specific and hard-gated.
  • Every d10 board value: GPIOs, DART offsets, the C1F5D touch personality.

The question to answer first

Souveraine's shape assumes a phone: one screen, one battery, no fallback device. The M1 is the first body where that is false — external displays, a keyboard, a trackpad, a lid. Doctrine §13 does not change (the agent owns operation, the user owns being the user), but DEVICE-STATE-MACHINE.md's state set was written for a pocket, and Observed means something different on a laptop.

Decide that before writing a line of it, and write the decision in SESSION-AUTHORITY-DOCTRINE.md where the rest of the argument lives.

Also unresolved and already named as debt: SDDM-vs-greetd. Doctrine §12's watch list says two greeters is a seam that contradicts the intent, deferred and not accepted. A third body is when that stops being deferrable — both phones are on greetd with no greeter, and the laptop should be too.