Hi Abhishek, On Wed, May 13, 2020 at 08:41:25PM -0700, Abhishek Pandit-Subedi wrote: > WCN3991 supports transparent WBS (host encoded mSBC). Add a flag to the > device match data to show WBS is supported. In general this looks good to me, a few nits inside. > This requires the matching firmware for WCN3991 in linux-firmware: > 1a8b0dc00f77 (qca: Enable transparent WBS for WCN3991) > > Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@xxxxxxxxxxxx> > --- > > drivers/bluetooth/hci_qca.c | 23 +++++++++++++++++------ > 1 file changed, 17 insertions(+), 6 deletions(-) > > diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c > index b3fd07a6f8127..305976c4dcf42 100644 > --- a/drivers/bluetooth/hci_qca.c > +++ b/drivers/bluetooth/hci_qca.c > @@ -75,6 +75,9 @@ enum qca_flags { > QCA_HW_ERROR_EVENT > }; > > +enum qca_driver_flags { > + QCA_DRV_WIDEBAND_SPEECH_SUPPORTED = 0x1, s/0x1/BIT(0)/ > +}; The 'driver'/'DRV' midfix is a bit misleading. WBS support is a device capability, it's not something the driver supports or doesn't. Maybe name it 'qca_capabilities' or similar. > /* HCI_IBS transmit side sleep protocol states */ > enum tx_ibs_states { > @@ -187,10 +190,11 @@ struct qca_vreg { > unsigned int load_uA; > }; > > -struct qca_vreg_data { > +struct qca_device_data { > enum qca_btsoc_type soc_type; > struct qca_vreg *vregs; > size_t num_vregs; > + uint32_t flags; capabilities?