Replaces the 13 broken DKMS-path -danctnix mirrors from PR #17 + adds 9 new series-dirs for the c-stack patches that were never split (Patches A/B/C-v3/F/D/E/C2/G/H) + retires the cumulative-c5x-danctnix single-file interim from fleet/ohm.yaml. Mechanism: cd marfrit/bes2600-dkms-mobian git format-patch fe73571..cleanups --no-merges -o /tmp/cleanups/ git format-patch cleanups..bes2600/bh-c-fossil-cleanup --no-merges -o /tmp/h/ for each commit: route to series-dir, sed-rewrite a/bes2600/foo.c -> a/drivers/staging/bes2600/foo.c The 29 cleanups commits + 1 Patch H commit map to 25 series-dirs (a few series-dirs get multiple commits: lmac-recover gets c5.2 + c5.2.1 as 0001+0002; cw1200-fix-backports gets F3+F2+F1 as 0001-0003; factory-series gets request_firmware + STANDARD_FACTORY_EFUSE_FLAG as 0001+0002). fleet/ohm.yaml apply order matches cleanups commit chronology, which is what produced the working c5x interim. cumulative.patch from ka-promote ohm now has 32 resolved patches (29 cleanups + 1 Patch H + scan-filter-5ghz + xor-neon SCS + besser#18-fix), 276 079 bytes, b2sum 7418db5ddf8fe938b130bc9d0e9f7dc9060f3a13703cd50757835ac43140a13... Apply order in cleanups + bh-c-fossil-cleanup: 1 factory-series (c1 + factory-no-efuse-flag) 3 factory-thread-dev 4 pm-gate-on-handshake 5 remove-chardev-user-interface 6 enable-testmode 7 tx-sdio-dma-oob-danctnix (was 'staging-prep-series') 8 factory-drop-kernel-write-danctnix 9 drop-dpd-file-paths-danctnix 10 drop-orphan-file-io-danctnix 11 pm-timeout-silence-danctnix 12 scan-defer-on-reject-danctnix (c5.1) 13 scan-defer-backoff-tune-danctnix (c5.1.1) 14 lmac-recover-via-mmc-hw-reset-danctnix (c5.2 + c5.2.1) 16 pm-state-resync-danctnix (c6.1) 17 pm-wake-consume-state-danctnix (c6.2) 18 pm-detect-firmware-unsupported-danctnix (c7) 19 decrypt-storm-fast-recover-danctnix (Patch A) 20 connection-loss-fast-recover-danctnix (Patch B) 21 cw1200-fix-backports-danctnix (Patches F3 + F2 + F1) 24 sdio-rx-no-relay-danctnix (Patch C v3) 25 license-spdx-restore-attribution-danctnix (Patch G) 26 ba-lock-atomic-danctnix (Patch D) 27 ps-state-lock-skip-pm-disabled-danctnix (Patch E) 28 rx-list-batch-delivery-danctnix (Patch C2) 29 bh-c-fossil-cleanup-danctnix (Patch H) 30 scan-filter-5ghz-danctnix (besser#1) 31 arch/arm64/xor-neon-... (GCC 15 SCS) 32 queue-pending-record-lock-bh-danctnix (besser#18) Verification: pkgrel=6 build from this manifest in progress; if srcversion == 26B0003FE9F2B05DCE838C4 (pkgrel=5's), source-tree is byte-equivalent to the c5x interim + scan-filter + besser#18 stack that's currently running on ohm. Refs: #17 (the broken mirror), #28 (the interim PR that landed cumulative-c5x), #31 (ka-promote trailer normalisation followup).
patches/driver/bes2600/
BES2600 WiFi driver patches (drivers/staging/bes2600/*, mainline-bound).
Mirrored from marfrit/besser/patches/ on 2026-05-16.
Scope tag: driver:bes2600 (see fleet/ohm.yaml for the consumer).
Consumer: ohm (PineTab2, RK3566 + BES2600 SDIO).
Series taxonomy
30 series (15 base + 15 -danctnix siblings). The -danctnix
variants exist because vanilla series don't apply on the DanctNIX
kernel base (slightly different in-tree state for drivers/staging/bes2600/*).
Keep both as separate series until BES2600 lands upstream, then
collapse — issue #2 acceptance criterion.
Each series directory contains numbered .patch files plus
optionally a 0000-cover-letter.patch for multi-patch series.
Promotion eligibility (per series)
Marked here for the kernel-agent CLI (ka-promote) to pick up.
Markus to update as series mature. Default UNSET means "ask before
including in a build".
| Series | promote_eligible | Notes |
|---|---|---|
debian-copyright-fsf-address |
unset | Debian packaging metadata; not kernel-side |
drop-dpd-file-paths |
unset | |
drop-dpd-file-paths-danctnix |
unset | DanctNIX sibling |
drop-orphan-file-io |
unset | |
drop-orphan-file-io-danctnix |
unset | DanctNIX sibling |
enable-testmode |
unset | |
factory-drop-kernel-write |
unset | |
factory-drop-kernel-write-danctnix |
unset | DanctNIX sibling |
factory-series |
unset | |
factory-thread-dev |
unset | |
lmac-recover-via-mmc-hw-reset |
unset | |
lmac-recover-via-mmc-hw-reset-danctnix |
unset | DanctNIX sibling |
pm-detect-firmware-unsupported |
unset | |
pm-detect-firmware-unsupported-danctnix |
unset | DanctNIX sibling |
pm-gate-on-handshake |
unset | |
pm-state-resync |
unset | |
pm-state-resync-danctnix |
unset | DanctNIX sibling |
pm-timeout-silence |
unset | |
pm-timeout-silence-danctnix |
unset | DanctNIX sibling |
pm-wake-consume-state |
unset | |
pm-wake-consume-state-danctnix |
unset | DanctNIX sibling |
remove-chardev-user-interface |
unset | Cross-ref bes_chardev merge regression (besser #17) |
scan-defer-backoff-tune |
unset | |
scan-defer-backoff-tune-danctnix |
unset | DanctNIX sibling |
scan-defer-on-reject |
unset | |
scan-defer-on-reject-danctnix |
unset | DanctNIX sibling |
staging-prep-series |
unset | 7-patch cover-letter series; upstream-staging-prep work |
staging-prep-series-danctnix |
unset | DanctNIX sibling |
tx-sdio-dma-oob |
unset | |
tx-sdio-dma-oob-danctnix |
unset | DanctNIX sibling |
DKMS-to-in-tree transition path
bes2600-dkms (Mobian fork, in marfrit/bes2600-dkms) is the
out-of-tree shim that ohm currently uses for the BES2600 wifi+BT.
Once these driver/bes2600/ series land in mainline (or at least in
DanctNIX's PineTab2 kernel base):
- ohm's manifest drops the
bes2600-dkmspackage dependency kernel-agentbuilds the in-tree variant via the series listed heremarfrit/bes2600-dkmsrepo gets archived (kept as history)- PineTab2 buyers from then on get bes2600 directly out of the kernel
Track the dropdown in fleet/ohm.yaml (replaces_dkms: bes2600-dkms
once the cumulative series is enough to replace it).
Cumulative-patch generation order
The current single-patch cumulative (0001-bes2600-besser-cumulative-series.patch
in the existing PKGBUILD) is generated in this order on boltzmann:
A, B, C v3, F, G, D, E, C2, c5.x, c6.x, c7, H
This is NOT alphabetical — C2 follows E rather than coming after
C v3. ka-promote MUST honor an explicit series-ordering field
when concatenating, not sort by series name. Field name TBD; suggest
adding apply_order: to fleet/ohm.yaml (issue #5 will surface this
when the cumulative gets regenerated).
References
- Issue:
git.reauktion.de/marfrit/kernel-agent/issues/2 - Source repo:
git.reauktion.de/marfrit/besser/patches/ - Consumer: ohm (
fleet/ohm.yaml) - Related:
bes2600-dkms,linux-pinetab2-danctnix-besserPKGBUILD