When the device unexpectedly restarts during previous firmware
download process, it can cause mt79xx firmware status to be
abnormal in the next attempt. In this case, a reset should be
performed to ensure everything starts afresh.
These changes include:
1. Optimizing the handling after the download function retry
is exhausted, a reset should be performed.
2. Another download firmware command also needs to check status
, and if an unexpected status occurs, trigger a reset.
3. Adding a flag "BTMTK_FIRMWARE_DL_RETRY": if download firmware
process enters the reset mechanism, this flag will be set.
After a successful setup, the flag will be cleared.
If the flag is already set, no further reset attempts will be
made to avoid endless reset retries.
Chris Lu (3):
Bluetooth: btmtk: improve mt79xx firmware setup retry flow
Bluetooth: btmtk: add status check in mt79xx firmware setup
Bluetooth: btmtk: Add reset mechanism if downloading firmware failed
drivers/bluetooth/btmtk.c | 21 +++++++++++++++++++--
drivers/bluetooth/btmtk.h | 1 +
2 files changed, 20 insertions(+), 2 deletions(-)
--
2.45.2