Page:
SW:NVRAM
Pages
"When will Asahi Linux be done?"
Apple Platform Security Crash Course
Apple Silicon Subsystems
Broken Software
Codenames
Devices
Differences with other platforms
Display Controllers
Distro:Boot process guide
Distro:Differences from Arch Linux ARM
FAQ
FW:ADT
Feature Support
Glossary
HW: Clocks
HW: SPRR and GXF
HW:AGX
HW:AIC
HW:ANE
HW:AOP
HW:APCIe
HW:ARM System Registers Dumps
HW:ARM System Registers
HW:ASC
HW:AVD
HW:Apple Instructions
HW:CPU debug registers
HW:Debug USB
HW:GPIO
HW:MacBook Pro keyboard backlight (FPWM0)
HW:Memory map
HW:SEP
HW:SMC
HW:SMP spin up
HW:USB PD
HW:WDT
Home
Installing Gentoo with LiveCD
Introduction to Apple Silicon
Kernel config notes for distros
Low level serial debug
M1 Series Feature Support
M1 vs. PC Boot
M2 Series Feature Support
M3 Series Feature Support
Open OS Ecosystem on Apple Silicon Macs
Partitioning cheatsheet
Project:References
RE:Kernelcache
Reference Asahi kernel config
SW:AGX driver notes
SW:Alternative Distros
SW:Boot
SW:DT bindings
SW:Getting started
SW:Hypervisor
SW:Keyboard Layouts
SW:MachO Boot Protocol
SW:NVRAM
SW:Speakers Test Cases
SW:Speakers
SW:Storage
SW:Ubuntu Asahi Gambas
SW:Ubuntu Asahi Godot
SW:Ubuntu Asahi Mesa
SW:Ubuntu Asahi Qemu
Software known to have issues with 16k page size
Tethered Boot Setup (For Developers)
Tethered boot setup on macOS
Trivia
U Boot
Undoing early speaker support hacks
Yaks in need of shaving
m1n1:Developer Guide
m1n1:User Guide
macOS Sonoma Boot Failures
perf on M1 systems
0
SW:NVRAM
Shiz edited this page 2021-01-18 04:42:49 +01:00
Types
string
: A standard string.binary
: A URL-encoded string containing binary data.boolean
: A string with value of eithertrue
orfalse
.int
: A decimal integer.bin-int(n)
: Abinary
-encoded integer, little-endian,n
bytes.hex-int
: A hexadecimal integer.volume
: A string of format<gpt-partition-type-uuid>:<gpt-partition-uuid>:<volume-group-uuid>
. The GPT partition UUID seems to be a bit weird, with its first three components byteswapped.
Values
Boot
auto-boot
:boolean
: Whether to automatically boot. Setting this tofalse
on at least the Mac M1 mini causes a boot failure;boot-args
:string
: Boot arguments to pass to the kernel. Possibly filtered by the boot policy.boot-command
:string
: Example:fsboot
.boot-info-payload
:binary
: Some kind of opaque, high-entropy payload.boot-note
:binary
: Unknown. Example:%00%00%00%00%00%00%00%bb%0ez%e5%00%00%00%00%a0q%d4%07%08%00%00%00
.boot-volume
:volume
: Default boot volume.failboot-breadcrumbs
:string
: Space-separated codes generated by various parts of the boot progress. Example:3000c(706d7066) 3000d 30010 f0200 f0007(706d7066) 3000c(0) 3000d 40038(958000) 40039(1530000) 4003a(0) 3000f(64747265) 3000c(64747265) 40029 3000d 30010 3000f(69626474) 3000c(69626474) 40029 3000d 30010 3000f(69737973) 3000c(69737973) 3000d 30010 3000f(63737973) 3000c(63737973) 3000d 30010 3000f(62737463) 3000c(62737463) 3000d 30010 3000f(74727374) 3000c(74727374) 3000d 30010 3000f(66756f73) 40060004 30011 30007 <COMMIT> 401d000c <COMMIT> <BOOT> 1c002b(2006300) 3000f(0) 3000c(0) 3000d 30010 3000f(69626f74) 3000c(69626f74) 40040204 40040023 4003000e 30011 30007 401d000f(ffffffff) <COMMIT>
.nonce-seeds
:binary
panicmedic-timestamps
:hex-int
: Nanosecond-precision UNIX timestamp, presumably when the last panic occurred.policy-nonce-digests
:binary
upgrade-boot-volume
:volume
Updates
IDInstallerDataV1
:binary:lzvn:bin-plist
: Compressed binary plist containing information about the most recent installer action. Seems to be absent starting somewhere between macOS 10.12 and 11.0.IDInstallerDataV2
:binary:lzvn:bin-plist
: Compressed binary plist containing an array of information items in the same format asIDInstallerDataV1
.ota-updateType
:string
: Type of over-the-air updates to apply. Example:incremental
.update-volume
:volume
Hardware
bluetoothActiveControllerInfo
:binary
bluetoothInternalControllerInfo
:binary
ota-controllerVersion
:string
: Over-the-air update controller identifier. Examples:SUMacController-1.10
(Mac Mini M1),SUS-1.0
(iPhone, iPad).usbcfwflasherResult
:string
: Example:No errors
.
Settings
backlight-nits
:hex-int
: Presumably the screen backlight strength. Mac Mini M1 example:0x008c0000
.current-network
:binary
: Last Wi-Fi networks to have connected to.fmm-computer-name
:string
: Computer name.good-samaritan-message
:string
: Message to show on the boot/password screen in case the device is lost and found.preferred-networks
:binary
: List of stored Wi-Fi networks.preferred-count
:int
: Number of networks inpreferred-networks
, if not 1.prev-lang:kbd
:string
: Keyboard layout, format:<lang>:<locale-id>
, reference. Example:en-GB:26
.prev-lang-diags:kbd
:string
: Keyboard layout in diagnostics: Example:en-GB
.SystemAudioVolume
:bin-int(8)
: Volume. Example:%80
(128).SystemAudioVolumeExtension
:bin-int(16)
: Example:%ff%7f
(32767).
Misc
_kdp_ipstr
:string
: Currently assigned IPv4.lts-persistance
:binary
Examples
IDInstallerDataV2
Example with successful Big Sur 11.2 beta 1 (20D5029f) upgrade
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>505</key>
<string>auth not needed</string>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>505</key>
<string>auth not needed</string>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>0</key>
<string>20D5029f</string>
<key>100</key>
<string>passed</string>
<key>6</key>
<string>upgrade</string>
</dict>
<dict>
<key>505</key>
<string>auth not needed</string>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>505</key>
<string>auth not needed</string>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>505</key>
<string>auth not needed</string>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>6</key>
<string>key recovery assistant</string>
</dict>
<dict>
<key>6</key>
<string>key recovery assistant</string>
</dict>
</array>
</plist>
Example with crashed upgrade
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>100</key>
<string>crashed</string>
<key>102</key>
<string>initializer</string>
<key>103</key>
<string>1</string>
<key>7</key>
<string>NO</string>
</dict>
</array>
</plist>
Example with successful Sierra 10.12.2 (16C67) upgrade
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>0</key>
<string>16C67</string>
<key>100</key>
<string>passed</string>
<key>103</key>
<string>1</string>
<key>202</key>
<string>832.499040</string>
<key>203</key>
<string>41.700535</string>
<key>205</key>
<string>30.318743</string>
<key>206</key>
<string>0.003648</string>
<key>207</key>
<string>0.156793</string>
<key>208</key>
<string>2.215885</string>
<key>209</key>
<string>8.130921</string>
<key>299</key>
<string>0.212016</string>
<key>3</key>
<string>solid state</string>
<key>4</key>
<string>unencrypted</string>
<key>5</key>
<string>case sensitive</string>
<key>6</key>
<string>clean</string>
<key>7</key>
<string>NO</string>
</dict>
<dict>
<key>0</key>
<string>16C67</string>
<key>100</key>
<string>passed</string>
<key>103</key>
<string>2</string>
<key>202</key>
<string>802.017327</string>
<key>203</key>
<string>29.902674</string>
<key>205</key>
<string>4.379149</string>
<key>206</key>
<string>0.003310</string>
<key>207</key>
<string>0.156726</string>
<key>208</key>
<string>2.214545</string>
<key>209</key>
<string>10.050913</string>
<key>299</key>
<string>0.184676</string>
<key>3</key>
<string>solid state</string>
<key>4</key>
<string>unencrypted</string>
<key>5</key>
<string>case insensitive</string>
<key>6</key>
<string>clean</string>
<key>7</key>
<string>NO</string>
</dict>
<dict>
<key>0</key>
<string>16C67</string>
<key>100</key>
<string>passed</string>
<key>103</key>
<string>3</string>
<key>6</key>
<string>software update</string>
</dict>
<dict>
<key>0</key>
<string>16C67</string>
<key>100</key>
<string>passed</string>
<key>103</key>
<string>4</string>
<key>202</key>
<string>582.532387</string>
<key>203</key>
<string>11.511343</string>
<key>205</key>
<string>1.900536</string>
<key>206</key>
<string>0.005585</string>
<key>207</key>
<string>0.101757</string>
<key>208</key>
<string>2.142859</string>
<key>209</key>
<string>3.942741</string>
<key>299</key>
<string>0.122528</string>
<key>3</key>
<string>solid state</string>
<key>4</key>
<string>unencrypted</string>
<key>5</key>
<string>case insensitive</string>
<key>6</key>
<string>clean</string>
<key>7</key>
<string>YES</string>
</dict>
</array>
</plist>
Feature Support:
Project related:
Platform documentation:
For users:
For developers:
- Yaks in need of shaving (HELP WANTED!)
- Tethered Boot Setup (For Developers)
- m1n1:User Guide Boot loader
- Hypervisor
- U-Boot
- Devicetree bindings
- Open OS ecosystem on Apple Silicon Macs
Wiki for the Asahi Linux project: https://asahilinux.org/