uzbek-plus/logs/b8/b8d/B8D-RESULT.md
q dddc11e57b B8: Wi-Fi (WCNSS/Pronto + wcn36xx + hostapd test AP) and persistent B8F cache
B8A audit, B8B Pronto remoteproc (fixed wcnss_mem 0x8b600000), B8C stock NV
(fixes Pronto startup watchdog), B8D cfg80211/mac80211/wcn36xx -> phy0/wlan0,
B8E wlan0 up + WPA2/CCMP test AP, B8F eMMC cache 857c9c30 with aurora-wifi
autostart: 3/3 class-A cold boots, AP up 76-94 s after power-on, LTE unaffected.
PSK, NV and PSK-bearing images are not published.
2026-10-02 22:55:20 +03:00

5.9 KiB
Raw Blame History

B8D — минимальный Linux Wi-Fi stack: wcn36xx → phy0 → wlan0 (RAM test, wlan0 не поднимался)

Дата: 2026-10-03. Прогон c1: cold power-on с RESET → lk1st fastboot → fastboot boot b8/b8d/out/aurora-b8d.img (1c28d0a4…). eMMC/B7C cache/MPSS/DT/NV/Iris не менялись. Без подключения к сетям, без scan, без AP/hostapd/DHCP/NAT.

Сборка

Kernel: дерево /home/q/aurora-kbuild/out-b8d от out-b8b, фрагмент linux/aurora-b8d.config. Фактический diff .config (linux/ramboot-b8d.config.diff): WLAN, CFG80211, MAC80211, WLAN_VENDOR_ATH, WCN36XX = y (явно); CFG80211_DEFAULT_PS, CFG80211_CRDA_SUPPORT, CFG80211_REQUIRE_SIGNED_REGDB, CFG80211_USE_KERNEL_REGDB_KEYS (defaults); MAC80211_HAS_RC, MAC80211_RC_MINSTREL, RC_DEFAULT_MINSTREL, RC_DEFAULT="minstrel_ht" (defaults); CRYPTO_LIB_ARC4, SYSTEM_DATA_VERIFICATION (select); WLAN_VENDOR_* (только меню, без драйверов). CRYPTO AES/CCM/GCM/CMAC уже были. RFKILL уже был =y. QCOM_WCNSS_PIL, QCOM_WCNSS_CTRL сохранены. Набор = JZ02 (там WCN36XX=m). Image.gz 98bdefc1…, image_size 0x1760000.

DTB = B8B без изменений (cc74b57d). initramfs = B8C (B7C + NV c6b71825) + iw 6.17-r0, libnl-3/libnl-genl-3 3.11.0-r0 (Alpine v3.24 aarch64; index C: == JZ02 /lib/apk/db/installed, бинарники sha256 == JZ02). Скрипт b8/b8d/build-b8d.sh.

Результат c1

Критерий PASS Результат
LTE baseline START OK in 77.8s, bearer, ping OK
/firmware + NV wcnss.mdt загружен, NV-ошибок 0
Pronto stable running с t=135.5 до ручного stop t=595 (~7.7 мин), crash/watchdog/fatal = 0 на всех 6 замерах
wcn36xx probe t=136.18 wcn36xx: mac address: <MAC> (через 24 мс после WCNSS Version 1.5 1.2); ошибок wcn36xx 0
phy0 /sys/class/ieee80211/phy0 → …/WCNSS_CTRL…/a204000.remoteproc:smd-edge:wcnss:wifi/ieee80211/phy0
wlan0 wlan0 drv=wcn36xx, managed, DOWN (как и требовалось), iw dev: phy#0 / wlan0 / type managed
iw phy см. ниже — реальные возможности, только 2.4 GHz
MAC <MAC>, addr_assign_type=0 (permanent, из DT local-mac-address)
rfkill rfkill0 phy0 wlan soft=0 hard=0
LTE/bearer ping wwan0 непрерывно ~8 мин: 491/491, без потерь; после stop MM connected/LTE, BEARER_CONNECTED
watchdog/recovery нет
eMMC writes w=0 s=0

B8D = PASS.

iw phy (phy0)

  • interface modes: IBSS, managed, AP, AP/VLAN, monitor; interface combinations не поддерживаются (одна vif).
  • Band 1 (2.4 GHz) only: HT20/HT40, SGI20/40, RX Greenfield, L-SIG TXOP, MCS 0–7 (1×1), HT max 72 Mbps, AMPDU 64K; каналы 1–11 (20 dBm), 12–14 no IR (regdomain world).
  • ciphers: WEP40/104, TKIP, CCMP-128. WoWLAN magic packet / GTK rekey. Device supports SAE with AUTHENTICATE.
  • 5 GHz band нет. Не считать это независимым доказательством WCN3620: wcn36xx решает про 5 GHz по compatible Iris из DT.

rpmsg/SMD pronto

WCNSS_CTRL (qcom_wcnss_ctrl), WLAN_CTRL (без rpmsg-драйвера: wcn36xx открывает его через wcnss_ctrl), APPS_RIVA_CTRL/DATA, APPS_RIVA_BT_ACL/CMD, APPS_RIVA_ANT_CMD/DATA, APPS_FM, IPCRTR (qrtr), sys_mon (sysmon). Как в B8C.

Сравнение с JZ02 (read-only)

JZ02 Aurora B8D
WCNSS FW Version 1.5 1.2 Version 1.5 1.2
probe wcn36xx: mac address: <MAC> сразу после WCNSS_CTRL wcn36xx: mac address: <MAC> через 24 мс после WCNSS_CTRL
MAC источник lk2nd DT, 02: locally administered то же (lk1st/lk2nd из eMMC serial <EMMC_SERIAL>)
regdb failed to load regulatory.db то же
FW WLAN/RF version WCN v2.0 RadioPhy vUnknown with 19.2MHz XO, API 1.5.1.2 не получено — печатается при ifup (wlan0 up), который в B8D запрещён
wlan0 up, regdomain RU down

Замечания / открытые вопросы

  1. cfg80211: failed to load regulatory.db — regdomain world 00 (каналы 12–13 no-IR). Для AP в RU понадобится regulatory.db (+ подписи; REQUIRE_SIGNED_REGDB=y) или явная настройка — вопрос следующего этапа.
  2. Строка FW WCN v2.0 … XO (и подтверждение XO 19.2 MHz/Iris) появится только при ip link set wlan0 up — не делалось.
  3. MAC: стабильный и детерминированный (из серийника eMMC), но locally administered 02:…; стоковый Android использовал <MAC> (источник не установлен — вероятно, стоковый prima/NV). Пока это не блокер.
  4. rmtfs writes_logged 0→1 при работе WCNSS — третий раз подряд (B8B/B8C/B8D), только RAM-буфер, eMMC 0.
  5. stop → timeout waiting for ssctl service (как B8B/B8C), WCNSS offline, LTE не задет.

Цепочка после B8D

hardware → DT → remoteproc → wcnss.mdt → WCNSS_CTRL → NV → wcn36xx probe → phy0 → wlan0 (managed, down)   PASS
→ ifup / FW start / scan / AP — не делалось (ждёт GO)

Файлы

c1/ — host-actions, pre/post (вкл. wifi/rfkill/iw reg/dmesg80211), start, iw-phy.txt, mon-1..6, stop, ping.log, dmesg-pre-stop.full, dmesg.full, uart.log; c1.console. Скрипты b8/b8d/build-b8d.sh, b8/b8d/b8d-boot.sh; b8/b8d/dl/ (apk + APK-SHA256SUMS + APKINDEX); b8/b8d/out/ (SHA256SUMS, config-b8d). linux/aurora-b8d.config, linux/ramboot-b8d.config.diff.