Skip to content

Commit fc4b7fd

Browse files
committed
deploy: 5d9cfa6
1 parent 26ebe18 commit fc4b7fd

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

‎2026/08/progress-report-7-2/index.html‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ <h1 class=entry-title>Progress Report: Linux 7.2</h1><ul class=blog-nav>
9292
bits in mBoot and then locks down the registers controlling them starting with the M4 series.
9393
This makes our life a little easier as m1n1 now has marginally less work to do, however it also
9494
means that we cannot fine tune low level CPU behaviour. This is an issue on M4 particularly, as
95-
calling WFI causes the core to lose its state and crash whatever was running on it.</p><p>Yurkea noticed this while doing M4 bringup work, and added a kernel command line parameter
95+
calling WFI causes the core to lose its state and crash whatever was running on it.</p><p>Yureka noticed this while doing M4 bringup work, and added a kernel command line parameter
9696
to make idle loop behaviour configurable. The parameter allows us to tell the kernel how
9797
it should park cores in idle loops, including by doing a basic no-op loop. This prevents
9898
M4 machines from crashing during early kernel initialisation, before our cpuidle driver
@@ -113,7 +113,7 @@ <h1 class=entry-title>Progress Report: Linux 7.2</h1><ul class=blog-nav>
113113
behind an IOMMU. Nothing in macOS userspace nor in XNU can reach it, except via a defined
114114
set of IPC functions. Taking inspiration from this approach, PPL eventually morphed into
115115
SPTM. SPTM takes PPL and places it inside Apple&rsquo;s Guarded Execution Framework (GXF), a set
116-
of Exception Levels that run parallel to the standard ARM64 EL1 and EL2 (there is no GL0).
116+
of Exception Levels that run parallel to the standard ARM64 Exception Levels.
117117
GXF also comes with SPRR, a custom pagetable permissions system used when the CPU is running
118118
code in GL1 or GL2.</p><p>When a modern Apple Silicon device starts up, iBoot or mBoot will detect if the configured
119119
boot payload is an XNU image. If it is, it will first load SPTM into GL2. There, SPTM
@@ -206,7 +206,7 @@ <h1 class=entry-title>Progress Report: Linux 7.2</h1><ul class=blog-nav>
206206
mode, and any compression applied to it. If they cannot agree on this, copies and conversions
207207
must be done in software.</p><p>One might be inclined to ask why such &ldquo;shared&rdquo; framebuffers can&rsquo;t just be created
208208
with &ldquo;raw&rdquo; pixel data. Consider a 1920x1080 framebuffer containing raw 8-bit ARGB
209-
pixel data. That is just over 66 MiB of data. At 4K, this balloons to just under 214 MiB.
209+
pixel data. That is around 8 MiB of data. At 4K, this balloons to just under 32 MiB.
210210
Even without the added penalty of copies, reading and writing this much data at 30,
211211
60, 165, or even 240 frames per second is an <em>enormous</em> strain on the memory bus and therefore
212212
an enormous power drain. Even if we somehow had an infinitely performant and efficient

0 commit comments

Comments
 (0)