patches: replace non-ASCII punctuation with ASCII equivalents
Em-dashes (U+2014), en-dashes (U+2013), and arrow glyphs (U+2192, U+2194) leaked into commit messages and the cover letter. Linux kernel patches are expected to be plain ASCII. Substitute: -- for em-dash - for en-dash -> for rightward arrow <-> for left-right arrow Applied to both staging-prep-series/ (Mobian paths) and staging-prep-series-danctnix/ (drivers/staging/bes2600/ paths). checkpatch.pl --no-tree --strict: 0/0/0 on all 12 patches.
This commit is contained in:
@@ -17,8 +17,8 @@ prefer to apply there and propagate to the danctnix in-tree copy.
|
||||
## Background
|
||||
|
||||
The BES2600 Linux driver descends from the ST-Ericsson CW1200 driver in
|
||||
mainline (`drivers/net/wireless/st/cw1200/`). Same author — Dmitry
|
||||
Tarnyagin; shared WSM host↔firmware protocol plumbing; shared SDIO bus
|
||||
mainline (`drivers/net/wireless/st/cw1200/`). Same author -- Dmitry
|
||||
Tarnyagin; shared WSM host<->firmware protocol plumbing; shared SDIO bus
|
||||
backend. Kconfig ancestry markers survive: `CONFIG_BES2600_USE_STE_EXTENSIONS`
|
||||
(STE = ST-Ericsson), `CONFIG_BES2600_WSM_DEBUG` (WSM). ST-Ericsson was
|
||||
wound down in 2013; Bestechnic (founded 2015) appears to have inherited
|
||||
@@ -32,14 +32,14 @@ preserves dependencies.
|
||||
|
||||
## What the series does
|
||||
|
||||
* 1/6 — Replace `filp_open()` + `kernel_read()` in the factory-
|
||||
* 1/6 -- Replace `filp_open()` + `kernel_read()` in the factory-
|
||||
calibration read path with `request_firmware()`. Repoint the
|
||||
FACTORY_PATH macro to the firmware-class name
|
||||
(`bes2600/bes2600_factory.txt`). Kills a kernel-mainline anti-pattern
|
||||
and the `(NULL device *): read and check /lib/firmware/bes2600_factory.txt
|
||||
error` boot spam.
|
||||
|
||||
* 2/6 — Default `STANDARD_FACTORY_EFUSE_FLAG` from y to n. The shipped
|
||||
* 2/6 -- Default `STANDARD_FACTORY_EFUSE_FLAG` from y to n. The shipped
|
||||
`bes2600_factory.txt` on PineTab2 contains 30 calibration fields; the
|
||||
driver was expecting 31 (including a `##select_efuse_flag` section
|
||||
absent from this firmware). Also unguards the
|
||||
@@ -48,27 +48,27 @@ preserves dependencies.
|
||||
while its definition in `wsm.c` and its call site in `sta.c` were
|
||||
ungated.
|
||||
|
||||
* 3/6 — Thread `struct device *` through `factory_section_read_file()`
|
||||
* 3/6 -- Thread `struct device *` through `factory_section_read_file()`
|
||||
via a module-local setter invoked at SDIO probe. `request_firmware()`
|
||||
now receives a real device pointer; `(NULL device *):` no longer
|
||||
prefixes factory-related diagnostics.
|
||||
|
||||
* 4/6 — Gate the device-end of the low-power transition on successful
|
||||
* 4/6 -- Gate the device-end of the low-power transition on successful
|
||||
per-VIF firmware handshake. Pre-patch: `bes2600_pwr_enter_lp_mode()`
|
||||
called `bes2600_pwr_device_enter_lp_mode()` unconditionally even when
|
||||
`wait_for_completion_timeout()` returned 0. On PineTab2 this recurred
|
||||
every 5–10 s in idle-associated state, flooded dmesg, and cascaded
|
||||
every 5-10 s in idle-associated state, flooded dmesg, and cascaded
|
||||
into `sdio_tx_work` WARN splats. Post-patch: `-ETIMEDOUT` returned
|
||||
cleanly, dmesg silent, SDIO stable.
|
||||
|
||||
* 5/6 — Remove the custom `/dev/bes2600` character-device interface.
|
||||
* 5/6 -- Remove the custom `/dev/bes2600` character-device interface.
|
||||
`file_operations`, open/read/write/release, `bes2600_op_*` command-
|
||||
dispatch table, `bes2600_load_uevent`, cdev registration in the init
|
||||
path — 519 lines deleted. In-kernel accessors (`is_signal_mode`,
|
||||
path -- 519 lines deleted. In-kernel accessors (`is_signal_mode`,
|
||||
`get_fw_type`, etc., 13 call sites) and the `fw_type` module
|
||||
parameter are preserved.
|
||||
|
||||
* 6/6 — Flip `CONFIG_BES2600_TESTMODE` default from n to y. Also fixes
|
||||
* 6/6 -- Flip `CONFIG_BES2600_TESTMODE` default from n to y. Also fixes
|
||||
accumulated bit-rot revealed by enabling the flag: shim macros in
|
||||
`bes_log.h` for the legacy `bes2600_info/err/warn/dbg/err_with_cond`
|
||||
family, `BES2600_DBG_*` constants defined as 0, 3 TSM/roam-delay
|
||||
@@ -83,13 +83,13 @@ applied, verified over 3+ reboots: WiFi associates and passes traffic
|
||||
on both 2.4 GHz (newton / ch11) and 5 GHz (TelekomHotspot@ERGO / ch36).
|
||||
|
||||
Per-patch outcomes in post-reboot dmesg:
|
||||
- 1/6: `read and check /lib/firmware/bes2600_factory.txt error` — gone
|
||||
- 2/6: `bes2600_factory.txt parse fail` / `factory cali data get failed.` — gone
|
||||
- 3/6: `(NULL device *):` prefix on factory lines — gone
|
||||
- 4/6: `wait pm ind timeout` (pre-patch 20–30 msgs / 5 min) — 0 per 5 min;
|
||||
`sdio_tx_work` WARN splat (pre-patch 2+ / 5 min) — 0 per 5 min;
|
||||
`[RX] Receive failure: 4.` — gone
|
||||
- 5/6: `/dev/bes2600` — absent; driver continues to associate
|
||||
- 1/6: `read and check /lib/firmware/bes2600_factory.txt error` -- gone
|
||||
- 2/6: `bes2600_factory.txt parse fail` / `factory cali data get failed.` -- gone
|
||||
- 3/6: `(NULL device *):` prefix on factory lines -- gone
|
||||
- 4/6: `wait pm ind timeout` (pre-patch 20-30 msgs / 5 min) -- 0 per 5 min;
|
||||
`sdio_tx_work` WARN splat (pre-patch 2+ / 5 min) -- 0 per 5 min;
|
||||
`[RX] Receive failure: 4.` -- gone
|
||||
- 5/6: `/dev/bes2600` -- absent; driver continues to associate
|
||||
- 6/6: `iw phy0` lists `testmode` under *Supported commands*
|
||||
|
||||
## Known limitations / out of scope
|
||||
@@ -98,7 +98,7 @@ Per-patch outcomes in post-reboot dmesg:
|
||||
for calibration persistence. Conversion to debugfs/nl80211 is a
|
||||
follow-up.
|
||||
- `bes_chardev.c` still contains DPD-to-file read/write paths (gated by
|
||||
`BES2600_WRITE_DPD_TO_FILE`, off by default — dead code in default
|
||||
`BES2600_WRITE_DPD_TO_FILE`, off by default -- dead code in default
|
||||
builds). Same treatment needed.
|
||||
- `bes_fw.c:587` unconditionally creates
|
||||
`/lib/firmware/bes2002_fw_write.bin` via `filp_open()` for debug
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ inconsistently wrapped in a conditional that keyed on
|
||||
STANDARD_FACTORY_EFUSE_FLAG, but the function definition in wsm.c and
|
||||
the call site in sta.c are ungated. With the flag now defaulting to
|
||||
n, the gcc -Werror=missing-prototypes flag breaks the build. Drop the
|
||||
conditional wrapper around the prototype — the function exists and is
|
||||
conditional wrapper around the prototype -- the function exists and is
|
||||
used regardless of the factory-parse flag.
|
||||
|
||||
Tested-on: PineTab2 (BES2600WM + RK3566) running linux-pinetab2
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ Content-Transfer-Encoding: 8bit
|
||||
The driver implements a mac80211 testmode_cmd operation that dispatches
|
||||
to a set of vendor commands (GET_TX_POWER_LEVEL, GET_TX_POWER_RANGE,
|
||||
SET_SNAP_FRAME, TSM_STATS, GET_ROAM_DELAY, GET_STREAM, etc) plus the
|
||||
BES2600 RF-test path (bes2600_vendor_rf_cmd → firmware
|
||||
BES2600 RF-test path (bes2600_vendor_rf_cmd -> firmware
|
||||
patch_wifi_testMode). The testmode handlers and the .testmode_cmd
|
||||
binding in struct ieee80211_ops are conditionally compiled under
|
||||
CONFIG_BES2600_TESTMODE, which previously defaulted to n.
|
||||
|
||||
@@ -10,7 +10,7 @@ linux-pinetab2 fork). Target hardware is the Pine64 PineTab2 (RK3566
|
||||
+ BES2600WM, SDIO vendor 0xBE57 / device 0x2002).
|
||||
|
||||
The driver descends from the ST-Ericsson CW1200 (drivers/net/wireless/
|
||||
st/cw1200/) — same author, Dmitry Tarnyagin, shared WSM host↔firmware
|
||||
st/cw1200/) -- same author, Dmitry Tarnyagin, shared WSM host<->firmware
|
||||
protocol, shared SDIO bus backend. Kconfig ancestry markers survive in
|
||||
this tree today: CONFIG_BES2600_USE_STE_EXTENSIONS (STE = ST-Ericsson),
|
||||
CONFIG_BES2600_WSM_DEBUG (WSM). ST-Ericsson wound down in 2013;
|
||||
@@ -24,29 +24,29 @@ dependencies.
|
||||
|
||||
## What the series does
|
||||
|
||||
* 1/6 — Replace filp_open() + kernel_read() in the factory-calibration
|
||||
* 1/6 -- Replace filp_open() + kernel_read() in the factory-calibration
|
||||
read path with request_firmware(). Repoint the FACTORY_PATH macro to
|
||||
the firmware-class name (bes2600/bes2600_factory.txt, matching the
|
||||
/lib/firmware/ layout). Kills a kernel-mainline anti-pattern and the
|
||||
'(NULL device *): read and check /lib/firmware/bes2600_factory.txt
|
||||
error' boot spam on PineTab2.
|
||||
|
||||
* 2/6 — Default STANDARD_FACTORY_EFUSE_FLAG from y to n. The shipped
|
||||
* 2/6 -- Default STANDARD_FACTORY_EFUSE_FLAG from y to n. The shipped
|
||||
bes2600_factory.txt on PineTab2 contains 30 calibration fields; the
|
||||
driver was expecting 31 (including a ##select_efuse_flag section
|
||||
absent from this firmware). Also unguards the
|
||||
wsm_save_factory_txt_to_mcu() prototype in wsm.h which was
|
||||
inconsistently wrapped in '#if defined(STANDARD_FACTORY_EFUSE_FLAG)'
|
||||
while its definition in wsm.c and its call site in sta.c were
|
||||
ungated — gcc -Werror=missing-prototypes broke the build with the
|
||||
ungated -- gcc -Werror=missing-prototypes broke the build with the
|
||||
new default until this is fixed.
|
||||
|
||||
* 3/6 — Thread struct device * through factory_section_read_file() via
|
||||
* 3/6 -- Thread struct device * through factory_section_read_file() via
|
||||
a module-local setter invoked at SDIO probe. request_firmware() now
|
||||
receives a real device pointer; '(NULL device *):' no longer prefixes
|
||||
factory-related diagnostics.
|
||||
|
||||
* 4/6 — Gate the device-end of the low-power transition on successful
|
||||
* 4/6 -- Gate the device-end of the low-power transition on successful
|
||||
per-VIF firmware handshake. Pre-patch bes2600_pwr_enter_lp_mode()
|
||||
called bes2600_pwr_device_enter_lp_mode() unconditionally even when
|
||||
wait_for_completion_timeout() returned 0 (firmware never posted the
|
||||
@@ -56,21 +56,21 @@ dependencies.
|
||||
messages. Post-patch: -ETIMEDOUT returned cleanly, dmesg silent,
|
||||
SDIO stable.
|
||||
|
||||
* 5/6 — Remove the custom /dev/bes2600 character-device interface.
|
||||
* 5/6 -- Remove the custom /dev/bes2600 character-device interface.
|
||||
file_operations, open/read/write/release, bes2600_op_*
|
||||
command-dispatch table, bes2600_load_uevent, alloc_chrdev_region /
|
||||
cdev_init / cdev_add / class_create / device_create in the init
|
||||
path, and the matching teardown in bes2600_chrdev_free — 519 lines
|
||||
path, and the matching teardown in bes2600_chrdev_free -- 519 lines
|
||||
deleted. The in-kernel accessor functions (is_signal_mode,
|
||||
get_fw_type, etc., 13 call sites) and the fw_type module parameter
|
||||
are preserved; the userspace interface becomes rfkill + module_param
|
||||
+ (with 6/6) nl80211 testmode.
|
||||
|
||||
* 6/6 — Flip CONFIG_BES2600_TESTMODE default from n to y. The driver
|
||||
* 6/6 -- Flip CONFIG_BES2600_TESTMODE default from n to y. The driver
|
||||
already implements a mac80211 testmode_cmd dispatcher (routing to
|
||||
the firmware's patch_wifi_testMode path), already gated on the flag;
|
||||
CONFIG_NL80211_TESTMODE=y is common on target kernels. Enabling the
|
||||
flag also exposes accumulated bit-rot — ~41 calls to undefined
|
||||
flag also exposes accumulated bit-rot -- ~41 calls to undefined
|
||||
bes2600_info/err/warn/dbg/err_with_cond macros, and 3 TSM/roam-delay
|
||||
helpers with external linkage but no prototype. Add shim macros to
|
||||
bes_log.h rewiring the legacy calls onto the existing bes_info /
|
||||
@@ -88,15 +88,15 @@ CONFIG_NL80211_TESTMODE=y. Driver installed via
|
||||
/lib/modules/<ver>/extra/ and verified loaded via modinfo srcversion.
|
||||
|
||||
Per-patch outcomes in post-reboot dmesg (full-stack applied):
|
||||
- 1/6: 'read and check /lib/firmware/bes2600_factory.txt error' — gone
|
||||
- 1/6: 'read and check /lib/firmware/bes2600_factory.txt error' -- gone
|
||||
- 2/6: 'bes2600_factory.txt parse fail' / 'factory cali data get
|
||||
failed.' — gone
|
||||
- 3/6: '(NULL device *):' prefix on factory lines — gone
|
||||
failed.' -- gone
|
||||
- 3/6: '(NULL device *):' prefix on factory lines -- gone
|
||||
- 4/6: 'bes2600_pwr_enter_lp_mode, wait pm ind timeout' (pre-patch 20-30
|
||||
msgs / 5 min window) — 0 per 5 min; 'sdio_tx_work' WARN splat
|
||||
(pre-patch 2+ / 5 min) — 0 per 5 min; '[RX] Receive failure: 4.' —
|
||||
msgs / 5 min window) -- 0 per 5 min; 'sdio_tx_work' WARN splat
|
||||
(pre-patch 2+ / 5 min) -- 0 per 5 min; '[RX] Receive failure: 4.' --
|
||||
gone
|
||||
- 5/6: /dev/bes2600 — absent; driver continues to associate
|
||||
- 5/6: /dev/bes2600 -- absent; driver continues to associate
|
||||
- 6/6: 'iw phy0' lists 'testmode' under Supported commands; module
|
||||
builds cleanly
|
||||
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ inconsistently wrapped in a conditional that keyed on
|
||||
STANDARD_FACTORY_EFUSE_FLAG, but the function definition in wsm.c and
|
||||
the call site in sta.c are ungated. With the flag now defaulting to
|
||||
n, the gcc -Werror=missing-prototypes flag breaks the build. Drop the
|
||||
conditional wrapper around the prototype — the function exists and is
|
||||
conditional wrapper around the prototype -- the function exists and is
|
||||
used regardless of the factory-parse flag.
|
||||
|
||||
Tested-on: PineTab2 (BES2600WM + RK3566) running linux-pinetab2
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ Content-Transfer-Encoding: 8bit
|
||||
The driver implements a mac80211 testmode_cmd operation that dispatches
|
||||
to a set of vendor commands (GET_TX_POWER_LEVEL, GET_TX_POWER_RANGE,
|
||||
SET_SNAP_FRAME, TSM_STATS, GET_ROAM_DELAY, GET_STREAM, etc) plus the
|
||||
BES2600 RF-test path (bes2600_vendor_rf_cmd → firmware
|
||||
BES2600 RF-test path (bes2600_vendor_rf_cmd -> firmware
|
||||
patch_wifi_testMode). The testmode handlers and the .testmode_cmd
|
||||
binding in struct ieee80211_ops are conditionally compiled under
|
||||
CONFIG_BES2600_TESTMODE, which previously defaulted to n.
|
||||
|
||||
Reference in New Issue
Block a user