f203b70f4f
Audit during ohm pkgrel=4 migration found the per-series -danctnix mirrors merged in #17 do NOT apply against the linux-pinetab2 baseline: all 17 of them use DKMS-style root paths (bes2600/foo.c) rather than in-tree staging paths (drivers/staging/bes2600/foo.c), and at least one has a corrupted mixed-prefix header (a/drivers/staging/bes2600/... b/bes2600/...). ka-promote ohm with those includes produced a 172 644-byte cumulative touching 27 file paths, of which 11 are bogus. The hand-curated 0001-bes2600-besser-cumulative-series.patch from the working danctnix-besser-pkgbuild flow on boltzmann (148 149 bytes, 48 in-tree staging files) is what pkgrel=3 actually builds with. Until the per-series mirrors are reconstructed (followup issue to be opened separately), the bes2600 driver scope is satisfied here by staging that hand-curated cumulative as a single-file series-dir patches/driver/bes2600/cumulative-c5x-danctnix/. ohm.yaml drops the broken per-series includes in favour of: - driver/bes2600/cumulative-c5x-danctnix/ - driver/bes2600/scan-filter-5ghz-danctnix/ (closes besser#1) - arch/arm64/xor-neon-ffixed-x18-scs-build-fix-danctnix/ ka-promote ohm now produces a self-consistent 157 446-byte cumulative (148 149 + 7 735 + 1 562 = exact byte arithmetic) with b2sum a807297b25be... which is what the new marfrit-packages/arch/linux-pinetab2-danctnix-besser PKGBUILD pkgrel=4 pins. Also fixes fleet/ohm.yaml YAML parse error: bar5_burn_in had a scalar value followed by a sub-list, which ka-promote (PyYAML) refused to parse. The whole manifest had never parsed cleanly since #18 landed. Refs: #5 (migrate PKGBUILD), #2 (mirror besser series — needs per-series rewrite followup), besser#1 (Patch I).
122 lines
5.9 KiB
YAML
122 lines
5.9 KiB
YAML
# kernel-agent manifest for ohm (PineTab2 / Rockchip RK3566 + BES2600 SDIO WiFi/BT)
|
||
#
|
||
# Status: scaffolding from 2026-05-16. Patches/scopes are mirrored;
|
||
# the build pipeline (cumulative-patch generation, makepkg invocation,
|
||
# sign+publish) still relies on the hand-managed flow in
|
||
# boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/.
|
||
# Once ka-promote / ka-build land, switch this manifest to authoritative
|
||
# and retire the boltzmann-side checkouts (canonical + the orphan at
|
||
# ~/src/besser/danctnix-besser-pkgbuild/ that the fourier-campaign
|
||
# sibling agent accidentally created).
|
||
#
|
||
# See kernel-agent issue #5 for the full migration plan.
|
||
|
||
host: ohm
|
||
arch: arm64
|
||
soc: rockchip/rk3566
|
||
board: pinetab2
|
||
distro: archlinux-arm # DanctNIX PineTab2 variant on Arch Linux ARM aarch64
|
||
|
||
baseline:
|
||
tree: DanctNIX/linux-pinetab2
|
||
url: https://codeberg.org/DanctNIX/linux-pinetab2
|
||
ref: v7.0-danctnix1 # _srcname=linux-pinetab2 _srctag=v${pkgver%.*}-${pkgver##*.}
|
||
upstream_compat: linux-7.0 # DanctNIX rebases off mainline + per-tablet delta
|
||
|
||
# Scope-tagged patch includes. Resolves to patches/<scope>/<file>.patch.
|
||
#
|
||
# 2026-05-18 audit: the per-series -danctnix mirrors in
|
||
# patches/driver/bes2600/*-danctnix/ created by kernel-agent#17 use
|
||
# DKMS-style root paths (bes2600/foo.c) rather than in-tree staging
|
||
# paths (drivers/staging/bes2600/foo.c), and at least one has corrupted
|
||
# mixed-prefix headers (a/drivers/staging/bes2600/... b/bes2600/...).
|
||
# They do NOT apply cleanly against the linux-pinetab2 baseline.
|
||
#
|
||
# Until the per-series mirrors are reconstructed (kernel-agent followup
|
||
# issue), the bes2600 driver scope is satisfied by a single-file
|
||
# cumulative captured from the working hand-managed
|
||
# danctnix-besser-pkgbuild flow on boltzmann (see
|
||
# patches/driver/bes2600/cumulative-c5x-danctnix/README.md). This is
|
||
# the c5x stack as it shipped in pkgrel=3 on 2026-05-18.
|
||
includes:
|
||
# bes2600 driver (c5x stack as shipped in pkgrel=3) — single-file
|
||
# interim cumulative; per-series reconstruction tracked separately.
|
||
- driver/bes2600/cumulative-c5x-danctnix/
|
||
# close besser#1 — refuse multi-channel 5 GHz scans at driver boundary.
|
||
- driver/bes2600/scan-filter-5ghz-danctnix/
|
||
# GCC 15.2.1 build-fix for arm_neon.h + SHADOW_CALL_STACK interaction.
|
||
# Runtime no-op as long as the config has CONFIG_SHADOW_CALL_STACK=n
|
||
# (current ohm setting). Kept in the manifest for the day SCS gets
|
||
# re-enabled. See reference_arm64_scs_arm_neon_gcc15 memory.
|
||
- arch/arm64/xor-neon-ffixed-x18-scs-build-fix-danctnix/
|
||
|
||
# Explicitly NOT included (decision logged):
|
||
# - debian-copyright-fsf-address: Debian packaging metadata, not kernel
|
||
# - bare (non-danctnix) variants of the per-series mirrors: same
|
||
# root-path bug as the -danctnix variants per the 2026-05-18 audit
|
||
|
||
config:
|
||
source: hand-managed config file in boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/config
|
||
strategy: snapshot, fold to baseline, accept-new with rationale on diff
|
||
TODO: migrate config into kernel-agent flow once kconfig-by-manifest lands
|
||
|
||
package:
|
||
name: linux-pinetab2-danctnix-besser
|
||
versioning: "${baseline_ref}.kafr${pkgrel}" # e.g. v7.0-danctnix1.kafr1
|
||
install_mode: alongside # coexists with linux-pinetab2 if user wants A/B
|
||
conflicts: []
|
||
provides: [linux-pinetab2] # drop-in replacement; pacman can satisfy linux-pinetab2 deps
|
||
kernel_suffix: -danctnix-besser # vmlinuz-linux-pinetab2-danctnix-besser
|
||
bootloader: extlinux # PineTab2 standard
|
||
|
||
# PKGBUILD currently at:
|
||
# boltzmann:~/src/besser/marfrit-besser/danctnix-besser-pkgbuild/kernel/PKGBUILD
|
||
# TARGET location (per issue #5):
|
||
# marfrit/marfrit-packages/arch/linux-pinetab2-danctnix-besser/PKGBUILD
|
||
# PENDING the kernel-agent template-rendering pipeline (b2sums regen,
|
||
# pkgrel bump, cumulative-patch generation from manifest scope).
|
||
template_at: TBD-marfrit-packages-arch-linux-pinetab2-danctnix-besser
|
||
replaces_dkms: bes2600-dkms # once cumulative series in this manifest is enough
|
||
|
||
verify:
|
||
bar1_ssh_heartbeat: required
|
||
bar2_pkg_version: required
|
||
bar3_module_loaded:
|
||
- bes2600 module loads
|
||
- wlan0 + bt0 (BT/UART) present after boot
|
||
- sdio_force_uhs=0 not needed (DMA-OOB-read fix in tx-sdio-dma-oob series)
|
||
bar4_per_patch_probe: opt-in
|
||
bar5_burn_in:
|
||
mode: opt-in
|
||
tests:
|
||
- "WiFi: 24h iperf3 to LAN host without rxhang"
|
||
- "PM: lid-close → wake cycles × 100 without bes2600 confirm-loss"
|
||
|
||
build_host:
|
||
primary: boltzmann # native aarch64 with ohm's identical .config
|
||
fallback: fermi # hertz LXD, ALARM aarch64
|
||
# No distcc per feedback_kernel_agent_no_distcc.md.
|
||
|
||
backup:
|
||
pre_install: hertz:/sparfuxdata/kernel-agent-backups/ohm/${replaced_version}/
|
||
|
||
# ─────────────────────────────────────────────────────────────────────
|
||
# OPEN — kernel-agent CLI work blocking full migration:
|
||
#
|
||
# 1. ka-promote: read includes[] above + apply_order field (to be added),
|
||
# concatenate referenced series into a single .patch in the build dir.
|
||
# Validate it applies cleanly on baseline.ref. Compute b2sum for
|
||
# template substitution.
|
||
#
|
||
# 2. PKGBUILD template renderer: stamp pkgrel, ${_cumulative_b2sum},
|
||
# ${_srctag} from manifest into a PKGBUILD draft at the
|
||
# template_at location. Sign + publish to packages.reauktion.de.
|
||
#
|
||
# 3. Orphan retirement: surface ~/src/besser/danctnix-besser-pkgbuild/
|
||
# (NO remote, ~/src/besser/marfrit-besser/... is canonical) to
|
||
# Markus / fourier campaign for working-state migration BEFORE
|
||
# deleting. See besser issue #17 for the regression that the
|
||
# orphan caused. After the kernel-agent flow is authoritative,
|
||
# delete both checkouts.
|
||
# ─────────────────────────────────────────────────────────────────────
|