After verifying the minimal v7.0-rc3+pwm15+pwm-fan+RK806 baseline boots
with display on ampere, extended via bisect-by-addition to include 3
more from linux-rk3588-marfrit's pre-cherry-pick set:
0004 enable speaker output (genbook dts + cm5 dtsi)
0005 USB-C PD charging (genbook dts: FUSB302, vcc5v0_otg)
0006 lid switch + USB3 lane mux (genbook dts: gpio-keys SW_LID, usbdp_phy1)
ampere-minimal-devices branch on git.reauktion.de/marfrit/linux-rk3588-marfrit
@ 7c241f2e2835 = the verified-working state with all 6 patches.
Display continues to work — confirms regression source is in one of
the 12 remaining linux-rk3588-marfrit commits (Shawn Lin pcie3 phy
series, Cristian Ciocaltea clk/dts/dw-dp, Sebastian Reichel hdmirx,
Pedro Alves btrtl, plus the WIP suspend/resume patch 0010).
Generated-by: Claude Opus 4.7 <claude@reauktion.de>
Adds fleet/ampere.yaml manifest and 3 scope-tagged patches in
patches/board/coolpi-genbook/ for the linux-ampere-fourier kernel.
Baseline: mainline v7.0-rc3. Patch set is the verified-working
minimum after a 2026-05-16 bisect campaign:
0001 pwm15 pinctrl entries (rk3588 SoC dtsi)
0002 pwm-fan + thermal cooling cells (genbook dts)
0003 RK806 system-power-controller (cm5 module dtsi)
NOT included (intentionally):
- misc_patches/genbook/kernel/0010 family — suspend/resume +
wakeup WIP, leave out until Markus closes the thread
- 8 cherry-picks (Shawn Lin pcie3 phy, Cristian Ciocaltea
clk+dw-dp, Sebastian Reichel hdmirx, Pedro Alves) plus the
DTS commits (lid switch, USB-C PD, speaker) — one or more
of these black-screens ampere; offender not yet bisected
The linux-rk3588-marfrit branch tip (f8f3ad9, 18 commits ahead
of v7.0-rc3) produced a display regression on ampere
(connector/dpms/SDDM all positive software-side, panel actually
blank). Decomposing patch 0010 into 5 atomic sub-commits and
reverting all 5 (= test-arch-plus-pcie3 branch on
git.reauktion.de/marfrit/linux-rk3588-marfrit) did NOT fix the
regression, ruling out 0010. The ampere-minimal branch
(v7.0-rc3 + only the 3 patches above) boots clean with display
on ampere — confirming the offender is one of the 14 patches
left out here.
ampere-minimal branch on git.reauktion.de/marfrit/linux-rk3588-marfrit
@ 0ce6ef5d48f2 is the working baseline.
Generated-by: Claude Opus 4.7 <claude@reauktion.de>
Three changes that together flip kernel-agent from spec'd to operational
in the manual-orchestrated form. Real ka-* CLI verbs come in later phases;
this commit gets a first iteration through the pipeline and proves the
flow at the artifact level.
1. Promote vb2_dma_resv RFC v2 series into the scope-tagged tree
Markus iterated v2 locally on boltzmann (kernel-agent-bootstrap dir,
reaching linux-fresnel-fourier pkgrel=14). v2 attaches the producer
fence at device_run in slept-OK context per Dufresne's v1 review on
linux-media. The three patches land under
patches/subsystem/media/videobuf2/dma-resv-release-fence/:
- 0004 (helper) — opt-in vb2 dma_resv producer-fence helper
- 0005 (driver opt-in) — hantro device_run attach
- 0006 (driver opt-in) — rockchip-rga device_run attach
Numbered 4/5/6 because the fresnel build PKGBUILD applies them after
the three 0001/0002/0003 PBP DTS patches; this directory's numbering
follows that apply-order, not the upstream lore series numbering.
README at the scope dir documents fleet eligibility, decision history,
and the v1 → v2 design pivot.
2. Update fleet/fresnel.yaml to include the v2 series
Pre-v2 manifest had a comment block 'Explicitly NOT included … vb2
dma-resv-release-fence … defer until v2 lands'. v2 has landed. Move
those three lines from 'excluded' to 'includes', annotate the decision
inline.
3. README updates
- Build hosts table: add ampere (CoolPi GenBook, RK3588 32GB) as
secondary aarch64 host. Same uarch as boltzmann, on-demand wake via
His. Gives the fleet a second native build target for when boltzmann
is busy (e.g. carrying a firefox-fourier 4h build).
- 'Out of scope this round' bootstrap section: mark vb2_dma_resv as
resolved 2026-05-15, keep panfrost IOMMU_CACHE deferred.
4. First ka-* CLI verb implemented: bin/ka-status
bash, ~120 lines. Reads fleet/*.yaml manifests, queries Gitea for
open [ka:*] issues, probes each reachable host for the installed
kernel-package version. Read-only — no sudo, no host writes. Picks
GITEA_TOKEN from /opt/herding/etc/claude-identities/<host>.creds or
env override.
Proves the agent's Gitea-API + manifest-parsing skeleton works
end-to-end without committing to a full ka-promote/build/install
implementation. Smoke-tested locally:
$ bin/ka-status
kernel-agent status (repo: marfrit/kernel-agent)
open [ka:*] issues total: 1
══ fresnel ══
manifest: arch=arm64 soc=rockchip/rk3399 board=pinebook-pro
package: linux-fresnel-fourier
installed: host-down # (fresnel is currently powered off)
open ka-issues: (none for this host)
No PKGBUILD update in this PR — that lives in marfrit-packages and
ships as a sibling PR (the actual linux-fresnel-fourier-7.0-14 publish).