Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
231 commits
Select commit Hold shift + click to select a range
4700e91
accel/ane: prepare H16 UUID submission and validate original HWX
RyanTheTide Oct 31, 2026
49e4eef
accel/ane: validate H16 preload identity and plan private load resources
RyanTheTide Oct 31, 2026
a371a27
Merge accepted H16 execute dependency ancestry
RyanTheTide Oct 31, 2026
39e9085
dt-bindings: npu: apple,ane: describe DAPF ranges
RyanTheTide Oct 31, 2026
7d68969
arm64: dts: apple: describe T6040 ANE cold-boot mappings
RyanTheTide Oct 31, 2026
ab45a5d
arm64: dts: apple: add J616s ANE test tree
RyanTheTide Oct 31, 2026
0a3bdfc
accel/ane: add shared H16/H17 firmware ring transport
RyanTheTide Oct 31, 2026
e7b895d
arm64: dts: apple: retain J616s tether setup in ANE test tree
RyanTheTide Oct 31, 2026
4a08e30
accel/ane: resolve H16 resource authority from the program contract
RyanTheTide Oct 31, 2026
aa6da17
accel/ane: stage cold-acquired H17 on the shared firmware transport
RyanTheTide Oct 31, 2026
16ae2f0
dt-bindings: npu: apple,ane: describe the T8140 cold-direct resources
RyanTheTide Oct 31, 2026
1b8cf64
arm64: dts: apple: describe disabled T8140 cold ANE and a lead test DTB
RyanTheTide Oct 31, 2026
cbfd370
accel/ane: serialize staged acquisition against system sleep
RyanTheTide Oct 31, 2026
513920c
accel/ane: fence a second H17 LOAD at transport publication
RyanTheTide Oct 31, 2026
331b6ba
accel/ane: align the second-LOAD KUnit assertions
RyanTheTide Oct 31, 2026
6e5627c
accel/ane: include platform and OF DMA declarations
RyanTheTide Oct 31, 2026
8f9cd9c
fixup! accel/ane: add shared H16/H17 firmware ring transport
RyanTheTide Oct 31, 2026
6db2f7f
Merge H16 test DT dependency
RyanTheTide Oct 31, 2026
2464a17
Merge H16 preload validation dependency
RyanTheTide Oct 31, 2026
8ebdf63
dt-bindings: npu: apple,ane: complete the T8140 example
RyanTheTide Oct 31, 2026
004d39b
accel/ane: add staged H16 cold boot diagnostics
RyanTheTide Oct 31, 2026
e8f8e90
accel/ane: cover H16 management and failure paths
RyanTheTide Oct 31, 2026
a9a995f
accel/ane: acknowledge H16 native allocation release
RyanTheTide Oct 31, 2026
ac7d36f
accel/ane: log H16 power-prefix and refusal checkpoints
RyanTheTide Oct 31, 2026
0f0ac98
Merge H16 cold-boot stack (ane/h16-cold-boot, #720)
RyanTheTide Oct 31, 2026
121a89e
Merge shared transport fixup (ane/fw-transport, #706)
RyanTheTide Oct 31, 2026
15b6b3d
accel/ane: give the H16 HWX test fixture the task prologue
RyanTheTide Oct 31, 2026
f3b22a5
accel/ane: index H16 EXECUTE resources within their class
RyanTheTide Oct 31, 2026
6dc2bf3
accel/ane: add the H16 program load, execute and teardown sequence
RyanTheTide Oct 31, 2026
7a99542
accel/ane: add the H16 program stage and its ABI 3 accel node
RyanTheTide Oct 31, 2026
789c072
selftests: drivers/ane: run the pinned H16 add-128 program twice
RyanTheTide Oct 31, 2026
6f2e564
accel/ane: stage H16 bring-up from debugfs and accept loader-describe…
RyanTheTide Oct 31, 2026
373104b
accel/ane: name H16 EXECUTE buffers by their generic section IDs
RyanTheTide Oct 31, 2026
e5916ae
arm64: dts: apple: t6040: keep all ANE DAPF ranges 64 bit
RyanTheTide Oct 31, 2026
3fa56dc
drm/gpuvm: initialize BO unmap result
erykwieliczko Oct 25, 2026
6b00531
rust: drm: gpuvm: add filtered object unmap
erykwieliczko Oct 25, 2026
bbe1524
drm/asahi: keep new bindings after deferred GEM close
erykwieliczko Oct 25, 2026
47d53ce
drm/apple: stamp the J516C panel's 14.7 swaps
malik-na Oct 22, 2026
279f5f6
drm/apple: port the scoped T6030 14.7 panel backlight
chriskearney Oct 22, 2026
8cb8074
drm/apple: initialize backlight KUnit GEM and mode fixtures
chriskearney Oct 22, 2026
572c9be
drm/apple: tidy the panel backlight port formatting
chriskearney Oct 22, 2026
985a20a
drm/apple: check the suspended backlight worker admission
chriskearney Oct 22, 2026
63123a1
drm/apple: address the panel backlight review
chriskearney Oct 23, 2026
b2cb665
drm/apple: drain the failed-panel test kick before checking idle
chriskearney Oct 23, 2026
bb0c381
drm/apple: restore panel dimensions after mode probes
erykwieliczko Oct 26, 2026
4db122d
drm/apple: skip AFK debugfs setup for unrouted connectors
erykwieliczko Oct 27, 2026
ae21253
drm/apple: reject stale native audio prepares
erykwieliczko Oct 27, 2026
3300eb4
drm/apple: complete live audio links after disconnect
erykwieliczko Oct 27, 2026
630faac
dmaengine: apple-sio: allocate the full descriptor bitmap
erykwieliczko Oct 27, 2026
f9d4b9a
drm/apple: hold the native HDMI audio link between streams
erykwieliczko Oct 27, 2026
519aa78
arm64: dts: apple: t603x-j514s-j516s: add Type-C DisplayPort audio
erykwieliczko Oct 28, 2026
9251c67
drm/apple: hold the HDMI audio link at one rate and sample size
erykwieliczko Oct 28, 2026
bc8ef9e
dmaengine: apple-sio: hand over to an idle transfer without a gap
erykwieliczko Oct 28, 2026
d299733
drm/apple: keep the held HDMI audio link's samples flowing
erykwieliczko Oct 28, 2026
af498ab
pmdomain: apple: pmp-report: withdraw external display requests in sleep
erykwieliczko Oct 28, 2026
88d7cf9
drm/apple: declare a soft dependency on the display crossbar
JeppeBylov Oct 26, 2026
5e5fc3e
drm/apple: v14.7: admit panel brightness on the J516C
Oct 24, 2026
dac8e09
selftests: apple-dcp: follow the one-argument cd321x_display_taken()
chriskearney Oct 30, 2026
3875996
drm/apple: set an external mode again once the display is on
erykwieliczko Oct 30, 2026
640abc3
drm/apple: hold the audio link on the Type-C ports too
erykwieliczko Oct 30, 2026
fffd99a
drm/apple: look for a processor's audio device before its firmware
RyanTheTide Nov 1, 2026
94ea410
drm/apple: turn DP/HDMI audio on by default
erykwieliczko Oct 30, 2026
2984ba9
drm/apple: enable the J613 panel brightness path
DjDeveloperr Oct 31, 2026
3e1ced5
drm/asahi: g15: m3: account PB backing and re-initialization in the g…
malik-na Oct 22, 2026
3a7dea2
drm/asahi: g15: m3: back the PB in 16 MiB chunks after the reply, wit…
malik-na Oct 22, 2026
f637d67
drm/asahi: g15: m3: start the parameter buffer at 64 blocks
malik-na Oct 22, 2026
d2ad713
drm/asahi: g15: m3: reclaim the parameter buffer when the engine is idle
malik-na Oct 22, 2026
330a11a
drm/asahi: g15: m3: re-initialize the parameter buffer at a client bo…
malik-na Oct 22, 2026
ddd0598
drm/asahi: g15: m3: bound the CDM stream walk by bytes, not by 8192 r…
malik-na Oct 22, 2026
6ce5b84
drm/asahi: g15: select the Rust firmware loader abstractions
malik-na Oct 22, 2026
48142e6
drm/asahi: g15: m3: run the PB reclaim check after the idle time with…
malik-na Oct 22, 2026
2c42847
drm/asahi: g15: say when the boot loader left the GPU node disabled
malik-na Oct 22, 2026
d4951cf
arm64: dts: apple: constrain T8103 external display DMA windows
claytonfaria Oct 22, 2026
0cc4a06
spmi: apple: Let peripheral interrupts wake the system
erykwieliczko Oct 20, 2026
25b3bda
dt-bindings: rtc: apple,smc-rtc: Describe the PMU alarm
erykwieliczko Oct 29, 2026
1b6afe7
rtc: macsmc: Add the PMU alarm
erykwieliczko Oct 20, 2026
97b50ed
arm64: dts: apple: t6030: Describe the RTC alarm
erykwieliczko Oct 20, 2026
601067c
soc: apple: clpc: keep CPU floors without a graphics power state
DjDeveloperr Oct 25, 2026
36c134f
soc: apple: clpc: count graphics power state read failures
DjDeveloperr Oct 25, 2026
94ae982
wifi: brcmfmac: of: read the country code map on every bus
erykwieliczko Oct 31, 2026
7d9a9ae
arm64: dts: apple: pass the country to the Wi-Fi firmware
erykwieliczko Oct 31, 2026
d511901
wifi: mt7932: join APs on radar channels, leave on their switch annou…
dhh Oct 31, 2026
bb1b0c8
tools/asahi: run-host-tests: give device-tree tests a built dtc
RyanTheTide Nov 1, 2026
bc4f744
arm64: dts: apple: t6030: guard static PMP nodes
erykwieliczko Oct 24, 2026
aaba39e
drm/asahi: g15: match UAT reservations with unit addresses
erykwieliczko Oct 24, 2026
1cf5527
drm/asahi: g15: pin the module with try_module_get before firmware start
chriskearney Oct 26, 2026
068c2fa
drm/asahi: g15: t6031: build the J516C board data without a board file
malik-na Oct 27, 2026
a18d931
tools/asahi: g15-maintained-handoff-tests: define the sensor-row count
malik-na Oct 27, 2026
bcb0225
drm/asahi: g15: t6031: log the J516C hardware record digest
malik-na Oct 28, 2026
c45c861
drm/asahi: wrap G15 stamps through zero
erykwieliczko Oct 25, 2026
2db2e9f
drm/asahi: bind G15 slots at publication
erykwieliczko Oct 25, 2026
2a3ddc7
drm/asahi: lock G15 mappings once per submit
erykwieliczko Oct 26, 2026
6e5b91a
soc: apple: report T6030 GPU power to PMP
erykwieliczko Oct 26, 2026
e6c35fd
selftests: apple-dcp: stub the 14.7 panel nits policy in the backligh…
RyanTheTide Nov 1, 2026
797fee6
selftests: apple-dcp: fit the panel-dimensions case to this tree
RyanTheTide Nov 1, 2026
0652b14
tests/asahi: follow G15 publication binding interfaces
chriskearney Oct 28, 2026
e91fc1b
tests/asahi: model GFX report calls in PMP bridge fixtures
chriskearney Oct 28, 2026
6ec4d35
drm/asahi: g15: start T6031 after its native display, then autoload it
chriskearney Oct 27, 2026
50308e7
tools/asahi: t6030 display admission tests: follow the shared display…
chriskearney Oct 27, 2026
dfc9168
soc: apple: t6030-display-gate: default the T6031 native display on J…
chriskearney Oct 27, 2026
ca05e40
drm/asahi: g15: say when the T6031 GPU waits on an enabled display
chriskearney Oct 28, 2026
80f5456
Merge aurora-wip into omacom-sync/display
RyanTheTide Nov 1, 2026
cc35ef2
drm/asahi: g15: build Board::DeviceTree only with the G15 backend
erykwieliczko Oct 28, 2026
35d8cd7
drm/asahi: build Uat::try_bind only with the G15 backend
erykwieliczko Oct 28, 2026
af28934
drm/asahi: build VmReadGuard::covers_range only with the G15 backend
erykwieliczko Oct 28, 2026
deb10a5
tests: asahi: synchronize tbnet refill-worker teardown checks
chriskearney Oct 24, 2026
bd0eec9
tests: asahi: scan default T6030 trees for PMP compatibles
chriskearney Oct 24, 2026
986132e
drm/asahi: g15: pin the B0 firmware on the J514S
JeppeBylov Oct 26, 2026
83ca860
test: asahi: refresh the J514S firmware row golden pins
chriskearney Oct 30, 2026
7beb9f2
drm/asahi: expose raw firmware statistics through debugfs
joshuaswarren Oct 29, 2026
8150f30
Documentation/ABI: describe the asahi_stats debugfs file
joshuaswarren Oct 29, 2026
ffeecc8
Documentation/ABI: fix stats counter wording and contact line
joshuaswarren Oct 29, 2026
553f083
drm/asahi: only create the stats file with CONFIG_DEBUG_FS
joshuaswarren Oct 29, 2026
14432bc
tools/asahi: run the raw statistics export test with the host tests
RyanTheTide Nov 1, 2026
1761ce5
drm/asahi: g15: renumber the TA/FS stamps before the TA stamp wraps
Oct 25, 2026
433c287
drm/asahi: g15: drain the flights inside the stamp renumbering margin
Oct 25, 2026
69617c1
drm/asahi: g15: renumber the compute stamp before it wraps
Oct 29, 2026
d8bd85f
drm/asahi: g15: show what is left before the stamps wrap in the stats
Oct 29, 2026
9f2b5e6
tools/asahi: g15-display-order-tests: model the system-sleep hold
chriskearney Oct 30, 2026
bf86f72
tools/asahi: clpc-gpu-demand-tests: model the read failure counter
RyanTheTide Nov 1, 2026
ed41d97
ASoC: tas2764, tas2770: do not log a deferred probe as an error
joshuaswarren Oct 21, 2026
37d1629
media: uvcvideo: reject zero-length extension unit control queries
briantoll Oct 19, 2026
bdd2ed7
arm64: dts: apple: t8122: Add the CPU power of each OPP
GehrmannSolutions Oct 14, 2026
1906a11
arm64: dts: apple: t8122: Add CPU cooling cells and die temperature s…
GehrmannSolutions Oct 14, 2026
e13d6a5
arm64: dts: apple: t8122-j613: Add CPU thermal zones
GehrmannSolutions Oct 14, 2026
e13c475
hwmon: macsmc: SoC die keys for the 13-inch M3 MacBook Air
GehrmannSolutions Oct 14, 2026
fcc1700
HID: spi-hid-apple: stop status mismatches on boot and suspend
ludagoo Oct 25, 2026
623be68
HID: apple-mtp-haptic: check the mode-switch report only on SPI actua…
RyanTheTide Nov 1, 2026
c0cd9aa
drm/asahi: g15: m3: make the PB start and idle reclaim fixed driver v…
RyanTheTide Nov 1, 2026
a91ef82
drm/asahi: g15: renumber the stamps at a fixed margin, without module…
RyanTheTide Nov 1, 2026
644e5f0
accel/ane: choose the H16 firmware build from a profile table
RyanTheTide Nov 1, 2026
aeba177
accel/ane: pair H16 HWX tensors with their surfaces by name
RyanTheTide Nov 1, 2026
46b9e4d
selftests: drivers/ane: build the H16 LOAD sections from the HWX
RyanTheTide Nov 1, 2026
d88f4e5
accel/ane: load the pinned add-128 program in the H16 KUnit suite
RyanTheTide Nov 1, 2026
80274a9
accel/ane: reuse the H16 command arena after each completed request
RyanTheTide Nov 1, 2026
444919e
selftests: asahi-m4: follow Uat::bind() into bind_inner()
RyanTheTide Nov 1, 2026
49bafc7
dt-bindings: npu: apple,ane: give the T6041 ANE stream 0 only
RyanTheTide Nov 1, 2026
cac97f0
arm64: dts: apple: t6040: describe the ANE power states and stream 0
RyanTheTide Nov 1, 2026
f4500c6
Merge aurora-wip into the H16 first-inference branch
RyanTheTide Nov 1, 2026
a62b490
Merge aurora-wip into omacom-sync/display
RyanTheTide Nov 1, 2026
93ed097
drm/amd: enable arm64 DCN with clang 22
joshuaswarren Oct 22, 2026
109f4f2
drm/ttm, drm/amdgpu: honor non-posted BARs for VRAM, doorbell and ROM…
joshuaswarren Oct 22, 2026
86b4c2e
drm/amdgpu: access non-posted BO memory with I/O helpers
joshuaswarren Oct 22, 2026
6e23173
drm/amdgpu: report no CPU-visible VRAM on non-posted hosts
joshuaswarren Oct 22, 2026
a81cca9
drm/amdgpu: place PSP CPU-visible buffers in GTT behind non-posted BARs
joshuaswarren Oct 22, 2026
3306be2
drm/amdgpu: map GTT write-combined on non-coherent non-posted hosts
joshuaswarren Oct 22, 2026
08159b5
drm/amdgpu: move a CPU-faulted VRAM BO to GTT behind a non-posted BAR
joshuaswarren Oct 22, 2026
0d31570
arm64: dts: apple: map USB4 PCIe tunnel 64-bit windows with identity …
joshuaswarren Oct 22, 2026
a3d2936
PCI: apple: wait for tunneled slot links before scanning
joshuaswarren Oct 22, 2026
d95b4bd
drm/amdgpu: flush HDP after MQD restore copies in the gfx queue paths
joshuaswarren Oct 29, 2026
41deb38
drm/amdgpu: wrap the non-posted BAR comments
RyanTheTide Nov 1, 2026
7db7c75
accel/ane: queue the first H17 EXECUTE after a program change
RyanTheTide Nov 1, 2026
ae556c6
Merge aurora-wip into omacom-sync/egpu
RyanTheTide Nov 1, 2026
a9ac98d
accel/ane: add the H16 26.6.2 (25G83) firmware profile
RyanTheTide Nov 1, 2026
0764969
accel/ane: put the H16 DART and DAPF registers in a per-revision table
RyanTheTide Nov 1, 2026
918af9e
Merge aurora-wip into omacom-sync/display
RyanTheTide Nov 1, 2026
4063481
accel/ane: write the T6041 ANE DAPF bank at map
RyanTheTide Nov 1, 2026
7d1acda
Merge aurora-wip e4b030d746f2 into omacom-sync/m3
RyanTheTide Nov 1, 2026
2d5d141
drm/asahi: take only the VM reservation in drop_mappings_before()
RyanTheTide Nov 1, 2026
0c73800
Merge aurora-wip into omacom-sync/g15
RyanTheTide Nov 1, 2026
2d458ab
Merge branch 'omacom-sync/m3' into omacom-sync/all
RyanTheTide Nov 1, 2026
ce2fa3f
Merge branch 'omacom-sync/g15' into omacom-sync/all
RyanTheTide Nov 1, 2026
9c66fbb
Merge branch 'omacom-sync/display' into omacom-sync/all
RyanTheTide Nov 1, 2026
7725cce
Merge branch 'omacom-sync/egpu' into omacom-sync/all
RyanTheTide Nov 1, 2026
3b33548
Merge branch 'omacom-sync/misc-platform' into omacom-sync/all
RyanTheTide Nov 1, 2026
e54d093
Merge branch 'omacom-sync/misc-wifi' into omacom-sync/all
RyanTheTide Nov 1, 2026
e1a4193
wifi: mt7932: carry out a requested roam
scottjones Nov 1, 2026
6f72595
wifi: mt7932: end a cancelled move for the reason the cancel gave
RyanTheTide Nov 1, 2026
9e26e5d
wifi: mt7932: mark the roam_moving writes for the lockless reader
RyanTheTide Nov 1, 2026
2515d01
wifi: mt7932: hold a deferred regulatory relaxation across a move
RyanTheTide Nov 1, 2026
8eada1e
wifi: mt7932: report the end of a refused move once
RyanTheTide Nov 1, 2026
13dc1a1
wifi: mt7932: say which iwd behaviour the from-AP report works around
RyanTheTide Nov 1, 2026
a93f5ed
wifi: mt7932: test what a move reports
RyanTheTide Nov 1, 2026
b463cf8
wifi: mt7932: bring the report locking comment in line with moves
RyanTheTide Nov 1, 2026
7f96113
media: apple: isp: set up the temporal filter per sensor as macOS does
RyanTheTide Nov 1, 2026
e16d7ec
media: apple: isp: tell auto exposure the mains frequency
RyanTheTide Nov 1, 2026
db17550
Merge H17 cold acquisition and switch requeue into the H17 clean branch
RyanTheTide Nov 1, 2026
41d5f57
tools/asahi: neo-stability: follow the move state in the regulatory n…
RyanTheTide Nov 1, 2026
140057e
Merge branch 'aurora-wip' (f41ac3de3e64, fleet14c) into omacom-sync/all
RyanTheTide Nov 1, 2026
6f55ede
accel/ane: run H17 HWX programs through the clean ABI 3 path
RyanTheTide Nov 1, 2026
aa1f991
Revert "drm/apple: turn DP/HDMI audio on by default"
RyanTheTide Nov 1, 2026
992dbda
accel/ane: let the H16 accel node open
RyanTheTide Nov 1, 2026
b71c22e
accel/ane: read the H17 engine only after it is powered
RyanTheTide Nov 1, 2026
5c9870f
selftests: drivers/ane: add a generic ABI 3 runner
RyanTheTide Nov 1, 2026
2efadb4
Merge branch 'aurora-wip' (757fc07a6930, fleet14e base) into omacom-s…
RyanTheTide Nov 1, 2026
f678f4c
accel/ane: let the last H16 task end the task stream
RyanTheTide Nov 1, 2026
da30e77
accel/ane: run linked H16 programs and load them one after another
RyanTheTide Nov 1, 2026
78e6907
Merge aurora-wip 757fc07a into ane/h16-first-inference
RyanTheTide Nov 1, 2026
c686a52
wifi: mt7932: join WPA2 PMF networks on the PSK AKM
RyanTheTide Nov 1, 2026
7caf462
wifi: mt7932: connect right after a cancelled scan
RyanTheTide Nov 1, 2026
458db8c
dmaengine: apple-sio: publish protocol-9 control state before DMA state
RyanTheTide Nov 1, 2026
7040ae9
accel/ane: map the H16 firmware heap tail before boot
RyanTheTide Nov 1, 2026
d76b818
accel/ane: log the H17 DART stream enables in the cold snapshot
RyanTheTide Nov 1, 2026
e846e44
accel/ane: do not judge DART stream enables in the H17 cold check
RyanTheTide Nov 1, 2026
df11bfb
accel/ane: queue the first H16 EXECUTE of every program, boot included
RyanTheTide Nov 1, 2026
0d809fa
media: apple: avd: overlap AV1 pictures with immutable tail inputs
RyanTheTide Nov 1, 2026
a98a59f
media: apple: avd: size AV1 banks from codec pools and fence named VPs
RyanTheTide Nov 1, 2026
127aefc
Merge branch 'aurora-wip' (b359258c9d41) into omacom-sync/all
RyanTheTide Nov 1, 2026
916532b
accel/ane: describe whole H16 surface sections and print the firmware…
RyanTheTide Nov 1, 2026
97526d9
Merge pull request #792 from aurora-silicon/fix/sio-bringup-race
RyanTheTide Nov 1, 2026
085586e
accel/ane: bring the H16 engine up at probe when the loader handed of…
RyanTheTide Nov 1, 2026
a53bbd9
arm64: dts: apple: t6040-j616s: enable the ANE
RyanTheTide Nov 1, 2026
9957153
Merge pull request #750: ANE: H16 cold boot and first inference
RyanTheTide Nov 1, 2026
ffa4d1a
Merge branch 'aurora-wip' (97526d91a6bc) into omacom-sync/all
RyanTheTide Nov 1, 2026
49b58bc
Merge pull request #783 from aurora-silicon/omacom-sync/all
RyanTheTide Nov 1, 2026
6401c1f
Merge branch 'aurora-wip' (49b58bcf1406) into wifi/mt7932-pmf-psk-con…
RyanTheTide Nov 1, 2026
9544d14
accel/ane: poll H16 replies and reports in 20-50 us steps
RyanTheTide Nov 1, 2026
11b7669
Merge pull request #784 from aurora-silicon/wifi/mt7932-pmf-psk-connect
RyanTheTide Nov 1, 2026
dfb4427
accel/ane: break each H16 EXECUTE down into timed phases
RyanTheTide Nov 1, 2026
ee81855
accel/ane: stop rehashing the H16 HWX on every EXECUTE
RyanTheTide Nov 1, 2026
f997147
Merge pull request #793 from aurora-silicon/avd/av1-overlap-mvp
RyanTheTide Nov 1, 2026
c8ccb47
Merge pull request #774 from aurora-silicon/camera/isp-ae-flicker-tnr
RyanTheTide Nov 1, 2026
b35adc7
Merge pull request #794 from aurora-silicon/ane/h16-latency
RyanTheTide Nov 1, 2026
0e31762
accel/ane: mark the ANE accel node as using unsigned file offsets
RyanTheTide Nov 1, 2026
fe01fea
dt-bindings: media: apple,avd: describe PMP performance domains
RyanTheTide Nov 1, 2026
332ebf3
arm64: dts: apple: t8140: request AVD performance while decoding
RyanTheTide Nov 1, 2026
bab7578
Merge ane/h16-latency ee818558 into ane/h17-clean
RyanTheTide Nov 1, 2026
7fcd579
accel/ane: map the H17 firmware heap tail before boot
RyanTheTide Nov 1, 2026
d5ac14e
accel/ane: mark the shared H16 boot tables as maybe unused
RyanTheTide Nov 1, 2026
2bec709
drm/apple: Send the external HDR brightness hints macOS sends
RyanTheTide Nov 1, 2026
c869c99
Merge pull request #796 from aurora-silicon/display/external-hdr-hints
RyanTheTide Nov 1, 2026
8d15c5f
Merge pull request #798 from aurora-silicon/avd/j700-perf-request
RyanTheTide Nov 1, 2026
0048177
accel/ane: send no custom BAR record on H17
RyanTheTide Nov 1, 2026
09ccc4d
media: apple: avd: overlap adaptive AV1 CDF preparation with PP
RyanTheTide Nov 1, 2026
7da7f19
accel/ane: describe each EXECUTE buffer with its declared size
RyanTheTide Nov 1, 2026
3f0a44e
Merge pull request #800 from aurora-silicon/avd/av1-stream-overlap
RyanTheTide Nov 1, 2026
94c72b4
accel/ane: keep the H16 EXECUTE section sizes
RyanTheTide Nov 1, 2026
f717c7f
wifi: mt7932: ask for the listed SSIDs and the wildcard in directed s…
RyanTheTide Nov 1, 2026
bd937a7
Merge pull request #802 from aurora-silicon/wifi/mt7932-directed-scan…
RyanTheTide Nov 1, 2026
52f0a6b
Merge pull request #801 from aurora-silicon/ane/h17-clean
RyanTheTide Nov 1, 2026
cf5be2c
Merge aurora-wip batch 3 (fleet14g to fleet14h, 52f0a6be) into integr…
RyanTheTide Nov 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/host-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ jobs:
command -v "$p" >/dev/null || need="$need $p"
done
command -v "ld.lld-$CLANG_VERSION" >/dev/null || need="$need lld-$CLANG_VERSION"
# Device-tree tests read the built trees with fdtget.
command -v fdtget >/dev/null || need="$need device-tree-compiler"
dpkg -s "libclang-rt-$CLANG_VERSION-dev" >/dev/null 2>&1 || need="$need libclang-rt-$CLANG_VERSION-dev"
if [ -n "$need" ]; then
sudo apt-get update -q
Expand Down
47 changes: 47 additions & 0 deletions Documentation/ABI/testing/debugfs-driver-asahi-stats
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
What: /sys/kernel/debug/dri/<N>/asahi_stats
Date: October 2026
Contact: Ryan Murray <ryan@aurorasilicon.org>
Description:
Read-only, root-only dump of the raw AGX firmware statistics
that the drm/asahi driver receives on its statistics channel.
The driver stores the latest message of each kind and prints
it unchanged. It does not compute utilization or any other
derived value.

The file is created in the debugfs directory of the DRM
device when the device is registered. It also appears under
the other names of that directory (dri/128 and the platform
device name, for example dri/406400000.gpu).

The format is ASCII text, one line per record:

- line 1: asahi_stats_v1, the format tag. A reader must check it.
- line 2: device=<platform device name>
- line 3: now_ns=<monotonic time of the read, nanoseconds>
- line 4: messages count=<number of statistics messages received>
- then one line per message kind, in this order: power,
power_on, power_off, utilization, avg_power, temperature,
power_state, fw_busy, pstate, temp_sensor.

A kind line is "<kind> count=<n>" followed, when n is not 0,
by " captured_ns=<ns of the last message>" and the fields of
that kind as key=value pairs:

- power: power
- power_on: off_time
- power_off: on_time
- utilization: timestamp, util1, util2, util3, util4
- avg_power: active_cs, unk2, unk3, unk4, avg_power
- temperature: raw_value, scale, tmin, tmax
- power_state: timestamp, last_busy_ts, active, poweroff,
unk1, pstate, unk2, unk3
- fw_busy: timestamp, busy
- pstate: ps_min, unk1, ps_max, unk2
- temp_sensor: sensor_id, raw_value, scale, tmin, tmax

All counts are cumulative since the driver bound the device. A rate needs two reads.
The values are the raw firmware values. Their units and the
meaning of the util*, unk* fields are not established. A kind
that was never received prints count=0 and no payload. Keys
may be added in later versions of the format tag; readers
must ignore keys they do not know.
137 changes: 137 additions & 0 deletions Documentation/accel/apple-ane-cold.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
.. SPDX-License-Identifier: GPL-2.0-only OR MIT

Cold-acquired H17 firmware backend
=================================

This experimental backend shares the H16/H17 channel transport, LOAD and
EXECUTE wire formats and UUID completion helpers. It does not take over a
running Exclave engine. Production T8140 nodes remain disabled. The separate
``t8140-j700-ane-test.dtb`` enables only the lead's one-shot test.

The staged observer is installed before platform driver registration. This
avoids the platform bus's automatic genpd power-on and default DMA attachment
before the read-only probe. The existing H14 ABI is never exposed for H17.
Build ``CONFIG_DRM_ACCEL_ANE=y`` and ``CONFIG_APPLE_DART=y`` for acquisition;
an ANE module supports observation only because the kexec blocker requires a
built-in caller. No module parameter opens this backend.

Loader contract
---------------

The loader must publish ``/chosen/apple,ane-cold-boot`` with the exact string
``raw-no-xnu-ane-untouched-v1`` only when the reset path ran no XNU, SPTM,
ExclaveCore or other ANE owner and left the engine untouched. This is boot
evidence, not an operator opt-in. Neither the production nor test DTS supplies
it. A warm handoff, kexec, unknown loader or missing evidence must refuse.

The loader also supplies two ``no-map``, non-reusable reserved-memory nodes,
referenced by ``memory-region`` and named ``firmware-text`` and
``firmware-data``. Their sizes are 0xc0000 and 0x2ac000. Physical addresses
come from that boot's preload records, never from compiled-in lab addresses.
The DVA pair is 0x10000000000 and 0x100000c0000.

TEXT must match the measured 26.6.2 H17 SHA-256 pin in the driver. The loader's
``apple,preload-data-sha256`` is a digest of the full live DATA segment. The
driver copies both reserved segments into private coherent RAM and preserves
every iBoot-written DATA byte. The DATA digest establishes preservation of the
loader's supplied segment; it is not a cross-build immutable-DATA manifest.
A pinned manifest excluding only the individually documented mutable fields
remains required before production enablement. No firmware image is shipped.

Stages and recovery
-------------------

Use the platform device's root-writable ``firmware_stage`` attribute. Reading
it reports ``unverified``, ``probe``, ``map``, ``boot``, ``startup``,
``program`` or ``quarantined``. Write these actions in order::

echo probe > firmware_stage
echo map > firmware_stage
echo boot > firmware_stage
echo startup > firmware_stage
echo program > firmware_stage

The engine block and its DARTs sit behind ANE_SYS, and an access to them
while it is off stalls the bus. ANE_SYS is no cold marker: it can read on
while genpd reports off, and generic DART runtime PM or a refused platform
probe turns it off again. Every register is therefore read only once its
block is known to be powered, in the order the U2 runs measured as safe.

``probe`` reads only PMGR: ANE_SYS, the ANE CPU power state (low byte off)
and the sub-block power state (0x300). With the loader's raw-boot evidence it
moves to ``probe``; it writes nothing and never touches the engine or DARTs.

``map`` repeats the PMGR check, then retains the module and power lifetime,
blocks system sleep (and kexec when built in) and acquires genpd ANE_SYS. It
reads PWGATE (request 3, acknowledge 0), turns the CPU power state on, clears
the PWGATE request and turns the sub-block on. Only then does it read and
check the engine and DARTs: CE state and error, CPU control (0) and status
(0x6a), RVBAR, IRQ pending, scratch, and unlocked, unfaulted DARTs of version
0x203 with no stream enabled. DAPF records and invalid TTBR payloads are
logged, never used as cold markers. Nothing in the engine has been written at
that point; a failed check quarantines with power retained. ``map`` then
completes CE, attaches only SID0 on three DARTs to the private paging domain,
writes and reads back the four DT-provided DAPF ranges, maps their pages as
identity MMIO, and maps preloads, command pool, IPC and heap at their
documented DVAs.

``boot`` runs the scratch handshake, checks the exact request sizes, validates
all eight channel descriptors and arms host rings. ``startup`` sends only
PRINT_ENABLE, START, CONFIG_GET and RESOURCE_INFO_GET, servicing shared
allocations with an absolute deadline. Completion is polled. Neither IRQ 655
nor IRQ 668 is registered or enabled. Secure-mode commands 0x27, 0x28, 0x34
and Exclave commands 0x30, 0x31 are denied at the publication boundary. 0x2f
is shared-event initialization, not an Exclave command, and is not sent.

Any failure after acquisition, including a normal map synchronization timeout,
quarantines the device, retains mappings and power and requires a reboot.
There is no in-place reset or retry. Suspend is refused while retained.
The ANE DART profile also refuses generic suspend/resume and never resets
foreign streams. Rollback is an ordinary reboot to the saved production
entry, never module unload after acquisition.

Program integration and measured limits
--------------------------------------

``program`` creates the shared H16/H17 program session on this transport and
registers the ABI 3 accel node (``DRM_ANE_CHIP_H17``). Userspace passes the
original H17 HWX and its four host-built sections, as on H16; the kernel
validates them, places every section in private mappings, binds a linked
program's ``__DATA`` scratch to kernel-owned memory and runs the
0x2d/EXECUTE/0x2d sequence with UUID completion. Operation records with a
kernel table must bind the kernel BAR to resource index 1007; legacy tag 2 is
refused before LOAD because the measured H17 firmware asserts on it. The
firmware frees each process pool after UNLOAD, often only during a later
program; that FREE is acknowledged and its backing retained until reboot.

Several programs may run in one firmware boot. The firmware has a direct
submission path that reuses the engine's current BAR context. If that context
belongs to a different program, a job can write through the earlier program's
output binding. This happens even after that program was terminated and
unloaded, and a full TLB invalidation does not prevent it. Bit 0 of the
EXECUTE flags word at offset 0x30 keeps a request off the direct path and
queues it for the full execution loop, which installs a fresh BAR context.
The transport sets that bit in its copy of the first EXECUTE after any change
of program or process, and after any LOAD, CREATE, TERMINATE or UNLOAD, since
firmware IDs may be reused. Later jobs of the same process keep the direct
path. Measured on the J700 with 11 of 11 program switches correct, at about
60 us extra on the switching job only. H16 shares the firmware design but has
not executed under Linux, so its requests are published unchanged. Output
mappings of earlier programs stay pinned and are never reused.
The observed FREE response is DVA|1 with zero length and handle. It is
accepted for any live exact allocation once the program stage started, since
the firmware frees a process pool after UNLOAD, often only during a later
program. Its backing and quota stay pinned and are never recycled, so the
12 MiB allocation quota bounds the program lifetimes of one firmware boot
(each process pool is 2 MiB). Duplicate, interior and unsolicited FREEs
refuse. The canonical FREE form remains unproven.

Provenance
----------

Register and wire facts were taken from the supplied clean H16/H17 field
specifications and the measured H17 cold-boot and harness results. No private
implementation source or firmware bytes are included. The operation-record
geometry is also documented by the MIT-licensed public ``libane/ane_m2.c``
in https://github.com/joshuaswarren/omarchy-ane. The H17 resource-index rule
overrides that older generation's kernel-tag convention.
Loading