RE: [PATCH v1] Bluetooth: btintel: Fix boot address
From: K, Kiran <hidden>
Date: 2021-08-31 12:57:21
HI Marcel,
-----Original Message----- From: Marcel Holtmann <marcel@holtmann.org> Sent: Monday, August 30, 2021 8:38 PM To: K, Kiran <redacted> Cc: open list:BLUETOOTH SUBSYSTEM <redacted>; Srivatsa, Ravishankar [off-list ref]; Tumkur Narayan, Chethan [off-list ref]; An, Tedd [off-list ref]; Von Dentz, Luiz [off-list ref] Subject: Re: [PATCH v1] Bluetooth: btintel: Fix boot address Hi Kiran,quoted
Cache Boot address present in firmware file which is later used Intel_Soft_Reset command to bring controller from boot mode to operational mode. Signed-off-by: Kiran K <redacted> --- drivers/bluetooth/btintel.c | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-)diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c index f1705b46fc88..80d6dd7ae51a 100644 --- a/drivers/bluetooth/btintel.c +++ b/drivers/bluetooth/btintel.c@@ -1037,8 +1037,9 @@ static bool btintel_firmware_version(structhci_dev *hdev, params = (void *)(fw_ptr + sizeof(*cmd)); - bt_dev_info(hdev, "Boot Address: 0x%x", - le32_to_cpu(params->boot_addr)); + *boot_addr = le32_to_cpu(params->boot_addr); + + bt_dev_info(hdev, "Boot Address: 0x%x",*boot_addr);quoted
so this hunk looks good and is described in the commit message.quoted
bt_dev_info(hdev, "Firmware Version: %u-%u.%u", params->fw_build_num, params- fw_build_ww, @@ -1071,9 +1072,6@@ int btintel_download_firmware(struct hci_dev *hdev,/* Skip version checking */ break; default: - /* Skip reading firmware file version in bootloader mode */ - if (ver->fw_variant == 0x06) - break; /* Skip download if firmware has the same version */ if (btintel_firmware_version(hdev, ver->fw_build_num, @@-1114,19quoted
+1112,16 @@ static int btintel_download_fw_tlv(struct hci_dev *hdev, int err; u32 css_header_ver; - /* Skip reading firmware file version in bootloader mode */ - if (ver->img_type != 0x01) { - /* Skip download if firmware has the same version */ - if (btintel_firmware_version(hdev, ver->min_fw_build_nn, - ver->min_fw_build_cw, - ver->min_fw_build_yy, - fw, boot_param)) { - bt_dev_info(hdev, "Firmware already loaded"); - /* Return -EALREADY to indicate that firmware has - * already been loaded. - */ - return -EALREADY; - } + /* Skip download if firmware has the same version */ + if (btintel_firmware_version(hdev, ver->min_fw_build_nn, + ver->min_fw_build_cw, + ver->min_fw_build_yy, + fw, boot_param)) { + bt_dev_info(hdev, "Firmware already loaded"); + /* Return -EALREADY to indicate that firmware has + * already been loaded. + */ + return -EALREADY; }This part however isn’t.
Ack. I have separated the patches with proper commit message and sent an updated version.
Regards Marcel
Thanks, Kiran