RE: [PATCH v1] Bluetooth: btintel: Fix boot address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



HI Marcel,

> -----Original Message-----
> From: Marcel Holtmann <marcel@xxxxxxxxxxxx>
> Sent: Monday, August 30, 2021 8:38 PM
> To: K, Kiran <kiran.k@xxxxxxxxx>
> Cc: open list:BLUETOOTH SUBSYSTEM <linux-bluetooth@xxxxxxxxxxxxxxx>;
> Srivatsa, Ravishankar <ravishankar.srivatsa@xxxxxxxxx>; Tumkur Narayan,
> Chethan <chethan.tumkur.narayan@xxxxxxxxx>; An, Tedd
> <tedd.an@xxxxxxxxx>; Von Dentz, Luiz <luiz.von.dentz@xxxxxxxxx>
> Subject: Re: [PATCH v1] Bluetooth: btintel: Fix boot address
> 
> Hi Kiran,
> 
> > 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 <kiran.k@xxxxxxxxx>
> > ---
> > 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(struct
> > hci_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);
> >
> 
> so this hunk looks good and is described in the commit message.
> 
> > 			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,19
> > +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





[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux