3d15c5367d
Two additions to fleet/ohm.yaml's includes for the bes2600 driver scope: 1. driver/bes2600/tx-sdio-dma-oob-danctnix/ — already on disk from ka#17 but not previously included. The cumulative-c5x-danctnix shipped in pkgrel=3 did NOT have this fix; pkgrel=4 per-series regressed because the staging-prep series was excluded. KFENCE caught the OOB during pkgrel=4 soak; pkgrel=5 included it. 2. driver/bes2600/join-confirm-reset-danctnix/ — NEW scope. cw1200 ancestor port (sta.c:1339-1344) with bes2600-specific PASSIVE-gate compensation in bes2600_unjoin_work. Closes besser#25. Verified pkgrel=6 srcversion 0E16463F: cascade gone, periodic ~600ms latency jitter also gone (same root cause). Status note: per-series reconstruction is now converged. The cumulative-c5x-danctnix entry is left as historical fallback; ka#29's blocker (per-series mirrors not applying cleanly) was resolved by manually reconstructing the per-series in marfrit/bes2600-dkms bes2600/join-confirm-failure-reset (top commit 3d833f8). Build still hand-managed via boltzmann:~/src/besser/marfrit-besser/ danctnix-besser-pkgbuild/kernel/PKGBUILD; ka-promote / ka-build template rendering still pending per the original TODOs. Signed-off-by: Claude (noether) <claude@reauktion.de>
141 lines
7.0 KiB
YAML
141 lines
7.0 KiB
YAML
# kernel-agent manifest for ohm (PineTab2 / Rockchip RK3566 + BES2600 SDIO WiFi/BT)
|
||
#
|
||
# Status: scaffolding from 2026-05-16; per-series patchset converged 2026-05-21 (pkgrel=6). 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.
|
||
#
|
||
|
||
# 2026-05-21 update: per-series reconstruction (besser#22) completed
|
||
# 2026-05-21; pkgrel=6 (srcversion 0E16463F) on ohm soak-passed with
|
||
# the bounce-buffer + join-confirm-reset additions. The per-series
|
||
# manifest below is the authoritative set; cumulative-c5x-danctnix
|
||
# remains as historical fallback only.
|
||
#
|
||
# 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/scs-arm-neon-build-fix/
|
||
# close besser#18 — pending_record_lock SOFTIRQ-safe -> -unsafe inversion.
|
||
# Mirror of marfrit/bes2600-dkms#11 (d95453c). 5-site spin_lock -> _bh.
|
||
- driver/bes2600/queue-pending-record-lock-bh-danctnix/
|
||
# bounce-buffer fix for SDIO TX DMA OOB (KFENCE-detected on pkgrel=4 soak);
|
||
# the per-series mirror of marfrit/bes2600-dkms bes2600/tx-sdio-dma-oob.
|
||
# cumulative-c5x-danctnix did NOT include this — it was the regression
|
||
# surfaced during the per-series reconstruction.
|
||
- driver/bes2600/tx-sdio-dma-oob-danctnix/
|
||
# close besser#25 — wsm_reset + serialised unjoin on JOIN reject.
|
||
# cw1200 ancestor port (drivers/net/wireless/st/cw1200/sta.c:1339-1344)
|
||
# with bes2600-specific PASSIVE-gate compensation. pkgrel=6 verified.
|
||
- driver/bes2600/join-confirm-reset-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.
|
||
# ─────────────────────────────────────────────────────────────────────
|