mirror of
https://github.com/shenmintao/aic8800d80.git
synced 2026-11-10 16:49:17 +00:00
Keep the product-specific syscfg writes and restore all patch uploads, including patch configuration. Derive the syscfg condition from the current product readback without retaining a loader flag. Update regression checks for full patch uploads on both products and syscfg write failures, and document the reported hardware results and remaining validation.
29 lines
1.7 KiB
Markdown
29 lines
1.7 KiB
Markdown
# Product 0x8820 loader checks
|
|
|
|
Run `python3 tests/issue119-8820/test_loader.py` with a C compiler available.
|
|
The test extracts the actual system configuration, normal-mode upload branch,
|
|
and busy-connect guard and runs them against mocked USB requests. It checks
|
|
that both product `0x8820` and regular D80 devices upload the complete
|
|
adid/patch/extended-patch/patch-table/patch-config layer before starting FMAC.
|
|
Alternating and reprobed devices receive the extra syscfg writes only when
|
|
their current product readback is `0x8820`. The checks also retain the MCU1
|
|
cache fix, propagate read/cache/syscfg write errors, and reject a new connect
|
|
without overwriting an operation already in progress.
|
|
|
|
The [hardware follow-up in PR #119](https://github.com/shenmintao/aic8800d80/pull/119#issuecomment-6468608942)
|
|
corrects the initial FMAC-only hypothesis from #118. On one UGREEN
|
|
`a69c:5723`, chip revision 7, MCU1, product `0x8820` unit running Ubuntu 26.04
|
|
and kernel `7.0.0-14-generic`, the two syscfg writes alone resolve the
|
|
`MM_START` timeout. Skipping the patch layer causes Bluetooth HCI Reset
|
|
(`0x0c03`) to time out; restoring all patch uploads, including patch config,
|
|
preserves Wi-Fi and restores controller initialization and LE discovery.
|
|
The firmware remains the branch's matched V3 set, including its 327,037-byte
|
|
FMAC.
|
|
|
|
The contributor tested the restored-patch variant, rather than this exact
|
|
follow-up commit. The cold-start sequence was replayed through USB
|
|
re-enumeration; physical unplug/replug, reboot of that variant, Bluetooth
|
|
pairing/audio, and other units remain unverified. These mocked checks do not
|
|
establish hardware compatibility or support for every device in issue #79.
|
|
|