mirror of https://gitee.com/openkylin/linux.git
Bluetooth: btusb: Enable Intel events even if already in operational mode
In case the controller is already in operation mode, the Intel specific events will not be enabled. Fix this by jumping to a common finish section that will allow setting final details for the controller. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
145373cb1b
commit
7fd673bcda
|
@ -2334,7 +2334,7 @@ static int btusb_setup_intel_new(struct hci_dev *hdev)
|
|||
if (ver.fw_variant == 0x23) {
|
||||
clear_bit(BTUSB_BOOTLOADER, &data->flags);
|
||||
btintel_check_bdaddr(hdev);
|
||||
return 0;
|
||||
goto finish;
|
||||
}
|
||||
|
||||
/* If the device is not in bootloader mode, then the only possible
|
||||
|
@ -2534,6 +2534,14 @@ static int btusb_setup_intel_new(struct hci_dev *hdev)
|
|||
*/
|
||||
btintel_load_ddc_config(hdev, fwname);
|
||||
|
||||
/* Read the Intel version information after loading the FW */
|
||||
err = btintel_read_version(hdev, &ver);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
btintel_version_info(hdev, &ver);
|
||||
|
||||
finish:
|
||||
/* Set the event mask for Intel specific vendor events. This enables
|
||||
* a few extra events that are useful during general operation. It
|
||||
* does not enable any debugging related events.
|
||||
|
@ -2543,13 +2551,6 @@ static int btusb_setup_intel_new(struct hci_dev *hdev)
|
|||
*/
|
||||
btintel_set_event_mask(hdev, false);
|
||||
|
||||
/* Read the Intel version information after loading the FW */
|
||||
err = btintel_read_version(hdev, &ver);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
btintel_version_info(hdev, &ver);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue