Hi Frédéric, On Tue, Nov 12, 2024 at 10:31 AM Frédéric Danis <frederic.danis@xxxxxxxxxxxxx> wrote: > > The BCM4349B1 supports 16 bits transparent data on its I2S port. Ok, but what difference does it make if transparent data or transparent 16 bits? > Signed-off-by: Frédéric Danis <frederic.danis@xxxxxxxxxxxxx> > --- > include/net/bluetooth/bluetooth.h | 1 + > net/bluetooth/sco.c | 7 +++++-- > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/include/net/bluetooth/bluetooth.h b/include/net/bluetooth/bluetooth.h > index f66bc85c6411..21e93640c229 100644 > --- a/include/net/bluetooth/bluetooth.h > +++ b/include/net/bluetooth/bluetooth.h > @@ -123,6 +123,7 @@ struct bt_voice { > > #define BT_VOICE_TRANSPARENT 0x0003 > #define BT_VOICE_CVSD_16BIT 0x0060 > +#define BT_VOICE_TRANSPARENT_16BIT 0x0063 > > #define BT_SNDMTU 12 > #define BT_RCVMTU 13 > diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c > index 1b8e468d24cf..baaac4d65a5a 100644 > --- a/net/bluetooth/sco.c > +++ b/net/bluetooth/sco.c > @@ -319,7 +319,8 @@ static int sco_connect(struct sock *sk) > else > type = SCO_LINK; > > - if (sco_pi(sk)->setting == BT_VOICE_TRANSPARENT && > + if ((sco_pi(sk)->setting == BT_VOICE_TRANSPARENT || > + sco_pi(sk)->setting == BT_VOICE_TRANSPARENT_16BIT) && > (!lmp_transp_capable(hdev) || !lmp_esco_capable(hdev))) { > err = -EOPNOTSUPP; > goto unlock; > @@ -922,6 +923,7 @@ static int sco_sock_setsockopt(struct socket *sock, int level, int optname, > > /* Explicitly check for these values */ > if (voice.setting != BT_VOICE_TRANSPARENT && > + voice.setting != BT_VOICE_TRANSPARENT_16BIT && > voice.setting != BT_VOICE_CVSD_16BIT) { > err = -EINVAL; > break; > @@ -935,7 +937,8 @@ static int sco_sock_setsockopt(struct socket *sock, int level, int optname, > break; > } > if (enhanced_sync_conn_capable(hdev) && > - voice.setting == BT_VOICE_TRANSPARENT) > + (voice.setting == BT_VOICE_TRANSPARENT || > + voice.setting == BT_VOICE_TRANSPARENT_16BIT)) > sco_pi(sk)->codec.id = BT_CODEC_TRANSPARENT; > hci_dev_put(hdev); > break; > -- > 2.34.1 > > -- Luiz Augusto von Dentz