e580126d84
Sets up the BES2600 mainlining work tree with: - README: project overview, hardware target, driver lineage (CW1200 -> Bestechnic -> arjan-vlek -> Mobian/danctnix), patch series status, repo map, build/deploy workflow. - patches/: c1 patch generated by git format-patch from marfrit/bes2600-dkms branch bes2600/factory-request-firmware (checkpatch.pl --no-tree --strict: 0 errors / 0 warnings / 0 checks). - scripts/: build-bes2600-on-ohm.sh, deploy-c1-to-ohm.sh, backup-ohm-kernel.sh - reproducible build + deploy + backup. - fw-analysis/: per-blob strings.txt + fnnames.txt extracted from the 4 firmware blobs pulled from ohm 2026-04-21. Source binaries NOT committed (Bestechnic-proprietary). - notes/: observed-bugs.md (4 known bug surfaces with file:line + patch-series cross-reference), source-map.md (every public driver source variant + their canonical role). Companion work tree: marfrit/bes2600-dkms (Mobian DKMS fork) at git.reauktion.de. Signed-off-by: Markus Fritsche <fritsche.markus@gmail.com>
3.9 KiB
3.9 KiB
BES2600 driver source map
Inventory of every public driver source variant we found (2026-04-21), their relationships, and where each fits in the patch workflow.
The trees
TuxThePenguin0 — pre-removal Android-provenance snapshot
- URL:
gitlab.com/TuxThePenguin0/bes2600 - Files: 53, flat layout (no subdir)
- HEAD:
5316ef0 Merge branch 'master' into 'master'(2023-07-14) - Provenance markers (Android-only files):
bes2600_cfgvendor.c/.h— Android nl80211 vendor-cmd HAL interfacebes2600_driver_mode.h— Android normal/factory/cali mode switchbes2600_log.c/.h— Android-style ALOGx logger
- Use: reference for "what was originally shipped before community cleanup"
arjan-vlek — historical home (sources removed)
- URL:
gitlab.com/arjanvlek/bes2600 - master tip:
3230fbd Simplify README.md(2024-10) — README only - Sources removed in
e5055a3 "Removed sources from main branch"(2024-10) - Pre-removal tip:
a184728 Merge branch 'checkpatch-fixes' into 'master'(same SHA as TuxThePenguin0's history point)
Mobian DKMS — active maintained, primary PR target
- URL upstream:
salsa.debian.org/Mobian-team/devices/bes2600-dkms - Our fork:
git.reauktion.de/marfrit/bes2600-dkms - Default branch:
mobian - Files: 61 (Debian packaging layout:
Makefile.dkmsat root +bes2600/*source +debian/) - HEAD:
fe73571 d/control: Fix packagename of fw dependency(2025-12) - Adds
Kconfig,Makefile,bes_pwr.c,itp.c,bes_log.h,bes_nl80211_testmode_msg.hover TuxThePenguin0 - Drops Android-provenance files (cfgvendor, driver_mode, ALOG-style logger)
- PR mechanism: salsa.debian.org merge requests
danctnix in-kernel
- URL:
codeberg.org/DanctNIX/linux-pinetab2 - Tag:
v6.19.10-danctnix1matches the running kernel on ohm - Path:
drivers/staging/bes2600/(54 files) - Adds
bes2600_btuart.c(Dang Huynh, 2025) +h4_recv.h(Intel mainline copy) +wifi_testmode_cmd.c - Same factory.c / bes_pwr.c / bes2600_sdio.c content as Mobian (verified 0-hunk diffs)
- Use: build target for in-kernel deployment via
/lib/modules/<ver>/extra/
CW1200 mainline — ancestor
- URL:
github.com/torvalds/linux/tree/master/drivers/net/wireless/st/cw1200 - 27 files, mainline-quality staging-cleaned
- Same author (Dmitry Tarnyagin / ST-Ericsson)
- Reference for upstream patterns; some BES2600 bugs may already be fixed in CW1200
OpenHarmony device_soc_bestechnic — Chinese-ecosystem reference
- URL:
gitee.com/openharmony/device_soc_bestechnic - Apache-2.0 (CANNOT direct-copy to GPL kernel)
- LiteOS-M + HDF framework, not Linux driver
- Use: register-level reference, firmware interaction protocol docs
Firmware mirrors (binary blobs only)
github.com/Herrie82/bes2600-firmware— 2 blobs (boot + sdio main), v0.3.5_2023.0209gitlab.com/pine64-org/bes2600-firmware— same blobs- On ohm: 5 files at
/lib/firmware/bes2600/(addsbtrf+nosignalvariants +bes2600_factory.txt)
Filename-level set diff
43 driver C/H files common across TuxThePenguin0 + Mobian + danctnix (the CW1200-descended shared core).
| File | Status |
|---|---|
bes2600_cfgvendor.c/.h |
TuxThePenguin0 only (Android HAL) |
bes2600_driver_mode.h |
TuxThePenguin0 only |
bes2600_log.c/.h |
TuxThePenguin0 (renamed → bes_log.h in Mobian + danctnix) |
dkms.conf, Kconfig |
Mobian only |
bes2600_btuart.c, h4_recv.h |
danctnix only (BT integrated in same dir) |
Workflow
| Goal | Tree | Branch | PR via |
|---|---|---|---|
| Per-patch dev | marfrit/bes2600-dkms |
bes2600/<name> |
salsa MR to upstream Mobian |
| Live test on ohm | ~/bes2600-build/ (tar from danctnix tree, builds against linux-pinetab2-headers) |
none | install to /lib/modules/<ver>/extra/ |
| Eventual mainline | (rewrite as drivers/staging/bes2600/) | staging-bes2600 |
linux-wireless mailing list RFC |