mirror of
https://github.com/shenmintao/aic8800d80.git
synced 2026-09-26 17:44:16 +00:00
88 lines
2.8 KiB
Markdown
88 lines
2.8 KiB
Markdown
# Unified Wi-Fi, Bluetooth, and ZLP branch test
|
|
|
|
This branch tests replacing the separate `main` and `bluetooth` branches with
|
|
one driver and installer. The Wi-Fi driver and firmware were already identical
|
|
on both branches. This test unifies their installer, migration, diagnostics,
|
|
packaging, and documentation, and adds the device-scoped ZLP fix from issue
|
|
#63 as a third DKMS module.
|
|
|
|
The expected architecture is:
|
|
|
|
- `aic_load_fw` initializes every supported adapter and uploads firmware.
|
|
- `aic8800_fdrv` handles Wi-Fi.
|
|
- A combo adapter exposes a Bluetooth HCI USB interface after initialization;
|
|
the standard Linux `btusb` driver binds through normal USB device matching.
|
|
- A Wi-Fi-only adapter exposes no HCI interface and does not need `btusb`.
|
|
- The retired custom `aic_btusb` module is never installed or used.
|
|
- USB device `368b:8d81` autoloads `aic_zlp_quirk`, which adds
|
|
`URB_ZERO_PACKET` only to its Bluetooth ACL bulk OUT transfers.
|
|
- The distribution's original `btusb.ko` is never replaced.
|
|
|
|
The installer deliberately does not force-load `btusb` and does not globally
|
|
unblock Bluetooth through rfkill.
|
|
|
|
## Install
|
|
|
|
```bash
|
|
git fetch origin
|
|
git switch test/unified-wifi-bt-zlp
|
|
git pull --ff-only
|
|
sudo ./install.sh
|
|
sudo reboot
|
|
```
|
|
|
|
## Test a Wi-Fi-only adapter
|
|
|
|
Confirm that:
|
|
|
|
1. The Wi-Fi interface is created.
|
|
2. Scanning, association, DHCP, and real traffic work.
|
|
3. No `aic_btusb` module is loaded.
|
|
4. The absence of `btusb` or an HCI controller is treated as normal.
|
|
|
|
## Test a Wi-Fi/Bluetooth combo adapter
|
|
|
|
Confirm that:
|
|
|
|
1. Wi-Fi scanning, association, DHCP, and real traffic work.
|
|
2. `aic_load_fw` uploads the firmware before the HCI interface is used.
|
|
3. The Bluetooth USB interface is bound to the standard `btusb` driver.
|
|
4. `bluetoothctl` can power on, scan, pair, and exchange real traffic.
|
|
5. No `aic_btusb` module, alias, soft dependency, or udev binding rule remains.
|
|
|
|
## Test the `368b:8d81` ZLP path
|
|
|
|
In addition to the combo-adapter checks, confirm that:
|
|
|
|
1. `aic_zlp_quirk` loads automatically and system `btusb` owns interfaces 0/1.
|
|
2. `hook` reports `btusb:alloc_bulk_urb` or `usb_submit_urb`.
|
|
3. The `injections` counter increases during Bluetooth audio traffic.
|
|
4. AAC playback remains connected for at least one hour.
|
|
5. Wi-Fi scan, association, and traffic remain unaffected during the test.
|
|
|
|
## Collect results
|
|
|
|
```bash
|
|
git rev-parse --short HEAD
|
|
lsusb
|
|
lsusb -t
|
|
lsmod | grep -E 'aic|btusb|bluetooth'
|
|
iw dev
|
|
bluetoothctl list
|
|
cat /sys/module/aic_zlp_quirk/parameters/{hook,injections} 2>/dev/null || true
|
|
sudo ./diagnose_bt.sh | tee unified-wifi-bt-diagnostic.log
|
|
sudo journalctl -k -b --no-pager | tee unified-wifi-bt-kernel.log
|
|
```
|
|
|
|
Please attach both logs and identify whether the tested adapter is Wi-Fi-only
|
|
or a combo device.
|
|
|
|
## Roll back during testing
|
|
|
|
```bash
|
|
git switch main
|
|
git pull --ff-only
|
|
sudo ./install.sh
|
|
sudo reboot
|
|
```
|