docs: describe the generic Unlocker seam, drop in-tree firmware specifics

The docs still documented the old in-tree firmware unlocker: the MediaTek
MT1959 variant table, the READ BUFFER unlock CDB bytes, the profiles.json
schema (unlock_mode/unlock_buf_id/unlock_cdb), the platform/mt1959 driver
listings, and the 'why unlock is needed' handshake mechanism. None of that
lives in libfreemkv anymore — the core is firmware-clean and ships only the
pluggable Unlocker trait + registry (src/unlock.rs).

Rewrite drive-access, architecture, api-design, disc-to-rip, and the README
to describe only the generic Unlocker seam: the trait, register_unlocker, the
registry routing, and the host-cert fallback when no unlocker matches. Point
readers to the freemkv-unlock repo for concrete unlockers. No source change.
This commit is contained in:
Matthew Jackson
2026-06-22 17:10:51 -07:00
parent 63ca840b7e
commit 9f422e6ebb
5 changed files with 102 additions and 129 deletions
+6 -6
View File
@@ -10,14 +10,14 @@ Insert disc
1. Open drive (drive/mod.rs)
│ INQUIRY → identify drive
│ Match bundled profile → chipset, unlock parameters
│ INQUIRY → identify drive (DriveId)
2. Init drive (drive/mod.rs → platform/mt1959)
Firmware upload (if needed, 10s recovery wait)
Unlock → vendor-specific command activates raw read mode
Speed calibration → probe_disc()
2. Init drive (drive/mod.rs → unlock seam)
Walk the registered-unlocker registry; first match unlocks the drive
(firmware/vendor handshakes are the unlocker's own business)
No match → drive untouched; host-cert AACS handshake carries the disc
│ Speed control → probe_disc()
3. AACS handshake (aacs/handshake.rs) — optional