Re: [PATCH v5 11/11] Bluetooth: btintel: Fix the legacy bootloader returns tlv based version

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

 



Hi Marcel,

On Thu, 2021-07-29 at 21:40 +0200, Marcel Holtmann wrote:
> Hi Tedd,
> 
> > From the ThP, it supports both old and TLV based HCI_Intel_Read_Version
> > command after downloading the operational firmware.
> > Starting from th JfP, it supports both old and TLV based
> > HCI_Intel_Read_Version command in the operational firmware and it causes
> > the setup() uses the TLV based setup instead of legacy setup.
> > 
> > So, as a workaround, this patch checks the fw variant from the TLV based
> > version and it uses the legacy HCI_Intel_Read_Version command to get the
> > legacy version information and run the legacy bootloader setup with it.
> > 
> > Signed-off-by: Tedd Ho-Jeong An <tedd.an@xxxxxxxxx>
> > ---
> > drivers/bluetooth/btintel.c | 25 ++++++++++++++++++++++++-
> > 1 file changed, 24 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> > index 57b64d744f0a..f11882d10da7 100644
> > --- a/drivers/bluetooth/btintel.c
> > +++ b/drivers/bluetooth/btintel.c
> > @@ -2254,10 +2254,33 @@ int btintel_setup_combined(struct hci_dev *hdev)
> > 	/* For TLV type device, parse the tlv data */
> > 	btintel_parse_version_tlv(hdev, &ver_tlv, skb);
> > 
> > +	/* Some legacy bootloader devices from JfP supports both old and TLV
> > +	 * based HCI_Intel_Read_Version command. But we don't want to use the
> > +	 * TLV based setup routines for those old bootloader device.
> > +	 * Also, it is not easy to convert TLV based version to the legacy
> > +	 * version format.
> > +	 *
> > +	 * So, as a workaround for those devices, use the legacy
> > +	 * HCI_Intel_Read_Version to get the version information and run the
> > +	 * legacy bootloader setup.
> > +	 */
> 
> why is that again? If possible we should convert them. What information is missing from the TLV
> format that we need?
> 
It needs hw_variant, hw_revision, and fw_revision in order to get the firmware file for legacy
bootloader setup. But new TLV format doesn't provide those values.

Let me check with FW team if those values are wrapped in TLV somehow.


> Regards
> 
> Marcel
> 

Regards,
Tedd




[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