Hi Kiran, > Move reading of supported local codecs into a separate init function, > query codecs capabilities and cache the data > > Signed-off-by: Kiran K <kiran.k@xxxxxxxxx> > Signed-off-by: Chethan T N <chethan.tumkur.narayan@xxxxxxxxx> > Signed-off-by: Srivatsa Ravishankar <ravishankar.srivatsa@xxxxxxxxx> > Reported-by: kernel test robot <lkp@xxxxxxxxx> > --- > * changes in v8: > - add comments > - split __u8 codec_id[5] into {__u8 id; __le16 cid, vid } > - address review comment related codec caps structure > > * changes in v7: > - keep codec enumeration call in hci_init instead of having a separate > function > - Remove unused bitmasks defined for LE transports > > * changes in v6: > - fix compiler warning reported for ARCH=arc > > * changes in v5: > - fix review comments > - move code used to read standard/vendor codecs caps into single function > > * changes in v4: > - convert reading of codecs and codecs caps calls from async to sync > > * changes in v3 > move codec enumeration into a new init function > > * changes in v2 > add skb length check before accessing data > > include/net/bluetooth/hci.h | 41 +++++++ > include/net/bluetooth/hci_core.h | 17 +++ > net/bluetooth/hci_core.c | 199 ++++++++++++++++++++++++++++++- > 3 files changed, 253 insertions(+), 4 deletions(-) > > diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h > index c4b0650fb9ae..6cb9340a2d51 100644 > --- a/include/net/bluetooth/hci.h > +++ b/include/net/bluetooth/hci.h > @@ -1307,6 +1307,28 @@ struct hci_rp_read_data_block_size { > } __packed; > > #define HCI_OP_READ_LOCAL_CODECS 0x100b > +struct hci_std_codecs { > + __u8 num; > + __u8 codec[]; > +} __packed; > + > +struct hci_ven_codec { > + /* company id */ > + __le16 cid; > + /* vendor codec id */ > + __le16 vid; > +} __packed; I am pretty sure that I said to use vnd and not ven. The shortcut ven for vendor is not something we used at all. Regards Marcel