Changes

2,532 bytes added ,  18:41, 22 April 2018
Line 11: Line 11:  
! Bits || Field
 
! Bits || Field
 
|-
 
|-
| 31-28 || Red value
+
| 31-28 || Blue value
 
|-
 
|-
 
| 27-24 || Green value
 
| 27-24 || Green value
 
|-
 
|-
| 23-20 || Blue value
+
| 23-20 || Red value
 
|-
 
|-
 
| 19-0 || Description
 
| 19-0 || Description
 
|}
 
|}
   −
The red, green and blue values are nibbles which represent the color that will fill the panic screen.
+
The blue, green and red values are nibbles which represent the color that will fill the panic screen.
 
Each nibble is duplicated to form a full byte before writing the final color to the display's MMIO.
 
Each nibble is duplicated to form a full byte before writing the final color to the display's MMIO.
    
== Panic colors ==
 
== Panic colors ==
 +
Different colors are used to represent panic events coming from different execution levels within the system.
 +
 
{| class=wikitable
 
{| class=wikitable
! Color || Value
+
! Color || Value || Level
 +
|-
 +
| <div style="width: 60px; height: 20px; background:#000000;"></div> || 0x000000 || Default
 +
|-
 +
| <div style="width: 60px; height: 20px; background:#0000FF;"></div> || 0x0000FF || Kernel
 
|-
 
|-
| 0xFF0000 || Kernel
+
| <div style="width: 60px; height: 20px; background:#FF7700;"></div> || 0xFF7700 || Secure Monitor (exception vectors)
 
|-
 
|-
| 0xFFFF00 || Secure Monitor
+
| <div style="width: 60px; height: 20px; background:#00FFFF;"></div> || 0x00FFFF || Secure Monitor (general errors)
 
|-
 
|-
| 0xFFAA00 || Hardware?
+
| <div style="width: 60px; height: 20px; background:#00AAFF;"></div> || 0x00AAFF || Secure Monitor (deep sleep) [1.0.0+]
 
|-
 
|-
| 0xFF00AA || Bootloader (general errors)
+
| <div style="width: 60px; height: 20px; background:#FF77FF;"></div> || 0xFF77FF || Secure Monitor (deep sleep) [4.0.0+]
 
|-
 
|-
| 0xAAFFFF || Bootloader (wrong bootloader)
+
| <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || 0xAA00FF || Bootloader (general errors)
 +
|-
 +
| <div style="width: 60px; height: 20px; background:#FFFFAA;"></div> || 0xFFFFAA || Bootloader (booting SafeMode) [1.0.0-3.0.2]
 
|}
 
|}
    
== Panic codes ==
 
== Panic codes ==
 +
While any combination of panic colors and codes is possible, several panic codes are specifically tied to a certain color.
 +
 
{| class=wikitable
 
{| class=wikitable
! Value || Description
+
! Value || Color || Description
 +
|-
 +
| 0x0 || Any || No information
 +
|-
 +
| 0x1 || <div style="width: 60px; height: 20px; background:#0000FF;"></div> || Package2 signature verification failed
 
|-
 
|-
| 0x0 || No information
+
| 0x2 || <div style="width: 60px; height: 20px; background:#0000FF;"></div> || Package2 meta verification failed
 
|-
 
|-
| 0x1 || Package2 signature verification failed
+
| 0x3 || <div style="width: 60px; height: 20px; background:#0000FF;"></div> || Package2 version check failed
 
|-
 
|-
| 0x2 || Package2 meta verification failed
+
| 0x4 || <div style="width: 60px; height: 20px; background:#0000FF;"></div> || Package2 payload verification failed
 
|-
 
|-
| 0x3 || Package2 version check failed
+
| 0x5 || <div style="width: 60px; height: 20px; background:#00FFFF;"></div> || Unknown SMC
 
|-
 
|-
| 0x4 || Package2 payload verification failed
+
| 0x6 || <div style="width: 60px; height: 20px; background:#00FFFF;"></div> || Unknown Abort
 
|-
 
|-
| 0x5 || Unknown SMC
+
| 0x7 || <div style="width: 60px; height: 20px; background:#FF77FF;"></div> || Invalid CPU context
 
|-
 
|-
| 0x6 || Unknown Abort
+
| 0x8 || <div style="width: 60px; height: 20px; background:#FF77FF;"></div> || Invalid SE state
 
|-
 
|-
| 0x7 ||  
+
| 0x9 || <div style="width: 60px; height: 20px; background:#FF77FF;"></div> || CPU is already awake [2.0.0+]
 
|-
 
|-
| 0x8 ||  
+
| 0x10 || <div style="width: 60px; height: 20px; background:#FF7700;"></div> || Unknown exception
 
|-
 
|-
| 0x10 || Unknown exception
+
| 0x20 || <div style="width: 60px; height: 20px; background:#000000;"></div> || Rebooting into SafeMode
 
|-
 
|-
| 0x20 || Rebooting into SafeMode
+
| 0x21 || <div style="width: 60px; height: 20px; background:#000000;"></div> || Rebooting for anti-downgrade
 
|-
 
|-
| 0x21 || Rebooting for anti-downgrade
+
| 0x30 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || General bootloader error
 
|-
 
|-
| 0x30 || General bootloader error
+
| 0x31 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Invalid DRAM ID
 
|-
 
|-
| 0x31 || Invalid DRAM ID
+
| 0x32 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Invalid size
 
|-
 
|-
| 0x32 || Invalid size
+
| 0x33 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Invalid argument
 
|-
 
|-
| 0x33 || Invalid argument
+
| 0x34 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Bad GPT
 
|-
 
|-
| 0x34 || Bad GPT
+
| 0x35 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Failed to boot SafeMode
 
|-
 
|-
| 0x35 || Failed to boot SafeMode
+
| 0x36 || <div style="width: 60px; height: 20px; background:#AA00FF;"></div> || Activity Monitor fired [4.0.0+]
 
|-
 
|-
| 0x40 || Show error called (kernel panic)
+
| 0x40 || <div style="width: 60px; height: 20px; background:#0000FF;"></div> || Show error called (kernel panic)
 
|}
 
|}