Bluetooth: Remove unnecessary bt_dev_esco struct
This information should be part of the main BR/EDR context struct, rather than there being a separate member in struct bt_dev. If/when the needed ESCO information grows we can consider having a separate struct, but even then it should be part of the main BR/EDR struct instead of sitting directly in bt_dev. Change-Id: I3edf120606ea6c6974f515bba90de2b25fc6fac6 Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
97f0241c07
commit
d1bb961bcf
3 changed files with 15 additions and 19 deletions
|
@ -412,14 +412,14 @@ struct bt_conn *bt_conn_add_sco(const bt_addr_t *peer, int link_type)
|
|||
|
||||
if (link_type == BT_HCI_SCO) {
|
||||
if (BT_FEAT_LMP_ESCO_CAPABLE(bt_dev.features)) {
|
||||
sco_conn->sco.pkt_type = (bt_dev.esco.pkt_type &
|
||||
sco_conn->sco.pkt_type = (bt_dev.br.esco_pkt_type &
|
||||
ESCO_PKT_MASK);
|
||||
} else {
|
||||
sco_conn->sco.pkt_type = (bt_dev.esco.pkt_type &
|
||||
sco_conn->sco.pkt_type = (bt_dev.br.esco_pkt_type &
|
||||
SCO_PKT_MASK);
|
||||
}
|
||||
} else if (link_type == BT_HCI_ESCO) {
|
||||
sco_conn->sco.pkt_type = (bt_dev.esco.pkt_type &
|
||||
sco_conn->sco.pkt_type = (bt_dev.br.esco_pkt_type &
|
||||
~EDR_ESCO_PKT_MASK);
|
||||
}
|
||||
|
||||
|
|
|
@ -3145,36 +3145,36 @@ void device_supported_pkt_type(void)
|
|||
{
|
||||
/* Device supported features and sco packet types */
|
||||
if (BT_FEAT_HV2_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_HV2);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_HV2);
|
||||
}
|
||||
|
||||
if (BT_FEAT_HV3_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_HV3);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_HV3);
|
||||
}
|
||||
|
||||
if (BT_FEAT_LMP_ESCO_CAPABLE(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_EV3);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_EV3);
|
||||
}
|
||||
|
||||
if (BT_FEAT_EV4_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_EV4);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_EV4);
|
||||
}
|
||||
|
||||
if (BT_FEAT_EV5_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_EV5);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_EV5);
|
||||
}
|
||||
|
||||
if (BT_FEAT_2EV3_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_2EV3);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_2EV3);
|
||||
}
|
||||
|
||||
if (BT_FEAT_3EV3_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_3EV3);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_3EV3);
|
||||
}
|
||||
|
||||
if (BT_FEAT_3SLOT_PKT(bt_dev.features)) {
|
||||
bt_dev.esco.pkt_type |= (HCI_PKT_TYPE_ESCO_2EV5 |
|
||||
HCI_PKT_TYPE_ESCO_3EV5);
|
||||
bt_dev.br.esco_pkt_type |= (HCI_PKT_TYPE_ESCO_2EV5 |
|
||||
HCI_PKT_TYPE_ESCO_3EV5);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -66,14 +66,11 @@ struct bt_dev_le {
|
|||
};
|
||||
|
||||
#if defined(CONFIG_BLUETOOTH_BREDR)
|
||||
struct bt_dev_esco {
|
||||
u16_t pkt_type;
|
||||
};
|
||||
|
||||
struct bt_dev_br {
|
||||
/* Max controller's acceptable ACL packet length */
|
||||
u16_t mtu;
|
||||
struct k_sem pkts;
|
||||
u16_t mtu;
|
||||
struct k_sem pkts;
|
||||
u16_t esco_pkt_type;
|
||||
};
|
||||
#endif
|
||||
|
||||
|
@ -108,7 +105,6 @@ struct bt_dev {
|
|||
#if defined(CONFIG_BLUETOOTH_BREDR)
|
||||
/* BR/EDR controller specific features */
|
||||
struct bt_dev_br br;
|
||||
struct bt_dev_esco esco;
|
||||
#endif
|
||||
|
||||
/* Number of commands controller can accept */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue