Files
test0r 06023bcf9d linux-ampere-fourier: bump to kafr2 (v7.0-rc3 + fleet/ampere.yaml manifest)
Drops the f8f3ad9 baseline ("18 commits ahead, BLACK-SCREENS ampere"
per fleet/ampere.yaml bisect note) in favor of the kernel-agent-
managed 10-patch set produced by ka-promote from fleet/ampere.yaml.

Baseline: mainline v7.0-rc3 (3daa4f5dc6cc), plus the 10 scope-tagged
patches under marfrit/kernel-agent/patches/{soc,module,board,driver}/:
  - 1 soc/rk3588 pwm15 pinctrl
  - 6 board/coolpi-cm5-genbook DTS patches
  - 3 driver/media Sarma VP9-on-VDPU381 patches (PR #24 closure)

New _commit 48a8c78 reflects this tree state in ~/src/linux-rockchip
(branch vp9-build on ampere, exactly v7.0-rc3 + 10 manifest patches).

End-to-end verified before this iteration was cut (hand-build of the
same tip on 2026-05-18 booted ampere via arch_vp9_test extlinux
label):
  - VP9 decode bit-exact HW==SW==libva (sha c8624d7c42db66525f53a02a515bc38d0a17ef39f692660cc7bebb1e2d2e1b48)
  - AV1 decode bit-exact HW==SW via kdirect (sha 30d2091158d92f3c5e0a807217c3e7307f873267673d92632e7fb147383e7dd1, av1-vpu-dec is mainline 7.0)

prebuild.sh canonical sha256 cleared — gzip-version-dependent, the
script warns-not-fails on mismatch. First successful kafr2 build can
pin a canonical sha here if a reproducibility audit ever needs it.

Cross-references:
  - marfrit/kernel-agent#12 (VP9 enablement closure)
  - marfrit/kernel-agent PR #24 (Sarma patch import + ampere.yaml bump)
2026-05-18 14:03:56 +00:00
..

linux-ampere-fourier

Kernel package for ampere (CoolPi GenBook RK3588). Baselined on marfrit/linux-rk3588-marfrit @ f8f3ad9 (mainline v7.0-rc3 + 18 RK3588-fleet-relevant commits — 10 Markus, 8 upstream cherry-picks).

See marfrit/kernel-agent/fleet/ampere.yaml for the manifest + marfrit/kernel-agent/patches/{soc,module,board}/... for the scope-tagged board patches in the baseline.

Build

The kernel source isn't on Gitea — boltzmann's working clone is shallow (Gitea refuses shallow pushes) and a 260MB tarball doesn't belong in marfrit-packages. Stage the source locally from a clone of the linux-rk3588-marfrit branch:

cd arch/linux-ampere-fourier
./prebuild.sh           # produces linux-rk3588-marfrit-f8f3ad9.tar.gz
makepkg -s --noconfirm  # native aarch64 build; no distcc

prebuild.sh looks at $LINUX_RK3588_MARFRIT_TREE (default ~/src/linux-rockchip) for the kernel working tree. The tip commit must be reachable in that clone — fetch the linux-rk3588-marfrit branch first if you cloned from elsewhere.

Build hosts

Native aarch64 only (per kernel-agent feedback_kernel_agent_no_distcc.md). Either ampere itself (8C/2.4GHz, 32GB, native arch) or boltzmann (Rock 5 ITX+, same uarch). fermi as fallback.

Install

Adds a managed label to /boot/firmware/extlinux/extlinux.conf:

label linux-ampere-fourier
    menu label linux-ampere-fourier (managed)
    kernel /Image-ampere-fourier
    initrd /initramfs-ampere-fourier.img
    fdt    /rk3588-coolpi-cm5-genbook.dtb-ampere-fourier
    append <inherited from arch_mainline>

Default label is NOT changed. After verifying boot of the managed label at the u-boot menu, you flip default manually. Reverting = boot a different label (e.g. arch_mainline, ubuntu_mainline).

Boot path

ampere uses /boot/firmware/ (vfat on mmcblk0p1, ~1G), distinct from fresnel's /boot/ on root partition. The PKGBUILD installs Image, initramfs, and DTB directly under /boot/firmware/. No DTB subdir — single board target.

Open follow-ups (per kernel-agent issue #6)

  • Ask 2 (VP9 enablement on RK3588 rkvdec) — not addressed in this iteration. Separate session.
  • Ask 3 (AV1 decoder integration) — backend libva work, not kernel.
  • Hosting the source tarball publicly so prebuild.sh isn't needed — candidate: Gitea release asset, or packages.reauktion.de/sources/.
  • Splitting the 12 non-board cherry-pick commits in the baseline (4 Shawn Lin phy, 2 Cristian Ciocaltea, etc.) into scope-tagged patches in kernel-agent — currently they ride along inside the pinned baseline rather than being explicit includes: in the manifest.