Hi Mark, > When the firmware hang or command no response, driver can reset the > bluetooth mcu via USB to recovery it. The reset steps as follows. > > 1. Cancel USB transfer requests before reset. > 2. It use speicific USB HW Register to reset Bluetooth MCU, at the > same time, the USB Endpoint0 still keep alive. > 3. Poll the USB HW register until reset is completed by Endpoint0. > 4. To recovery unexpected USB state and behavior during resetting the > Bluetooth MCU, the driver need to reset the USB device for MT7921. > 5. After the reset is completed, the Bluetooth MCU need to re-setup, > such as download patch, power-on sequence and etc. > > Signed-off-by: mark-yw.chen <mark-yw.chen@xxxxxxxxxxxx> > Reviewed-by: Michael Sun <michaelfsun@xxxxxxxxxx> > Reviewed-by: Archie Pusaka <apusaka@xxxxxxxxxxxx> > --- > drivers/bluetooth/btusb.c | 129 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 129 insertions(+) patch has been applied to bluetooth-next tree. Regards Marcel