Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5075b972 authored by Jaganath Kanakkassery's avatar Jaganath Kanakkassery Committed by Marcel Holtmann
Browse files

Bluetooth: Add defines for BREDR pkt_type and LE PHYs



This also add macros for checking LMP support for different
pkt_types

Signed-off-by: default avatarJaganath Kanakkassery <jaganathx.kanakkassery@intel.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 6decb5b4
Loading
Loading
Loading
Loading
+14 −0
Original line number Original line Diff line number Diff line
@@ -291,6 +291,14 @@ enum {
#define HCI_DH3		0x0800
#define HCI_DH3		0x0800
#define HCI_DH5		0x8000
#define HCI_DH5		0x8000


/* HCI packet types inverted masks */
#define HCI_2DH1	0x0002
#define HCI_3DH1	0x0004
#define HCI_2DH3	0x0100
#define HCI_3DH3	0x0200
#define HCI_2DH5	0x1000
#define HCI_3DH5	0x2000

#define HCI_HV1		0x0020
#define HCI_HV1		0x0020
#define HCI_HV2		0x0040
#define HCI_HV2		0x0040
#define HCI_HV3		0x0080
#define HCI_HV3		0x0080
@@ -354,6 +362,8 @@ enum {
#define LMP_PCONTROL	0x04
#define LMP_PCONTROL	0x04
#define LMP_TRANSPARENT	0x08
#define LMP_TRANSPARENT	0x08


#define LMP_EDR_2M		0x02
#define LMP_EDR_3M		0x04
#define LMP_RSSI_INQ	0x40
#define LMP_RSSI_INQ	0x40
#define LMP_ESCO	0x80
#define LMP_ESCO	0x80


@@ -361,7 +371,9 @@ enum {
#define LMP_EV5		0x02
#define LMP_EV5		0x02
#define LMP_NO_BREDR	0x20
#define LMP_NO_BREDR	0x20
#define LMP_LE		0x40
#define LMP_LE		0x40
#define LMP_EDR_3SLOT	0x80


#define LMP_EDR_5SLOT	0x01
#define LMP_SNIFF_SUBR	0x02
#define LMP_SNIFF_SUBR	0x02
#define LMP_PAUSE_ENC	0x04
#define LMP_PAUSE_ENC	0x04
#define LMP_EDR_ESCO_2M	0x20
#define LMP_EDR_ESCO_2M	0x20
@@ -399,6 +411,8 @@ enum {
#define HCI_LE_PING			0x10
#define HCI_LE_PING			0x10
#define HCI_LE_DATA_LEN_EXT		0x20
#define HCI_LE_DATA_LEN_EXT		0x20
#define HCI_LE_EXT_SCAN_POLICY		0x80
#define HCI_LE_EXT_SCAN_POLICY		0x80
#define HCI_LE_PHY_2M			0x01
#define HCI_LE_PHY_CODED		0x08
#define HCI_LE_CHAN_SEL_ALG2		0x40
#define HCI_LE_CHAN_SEL_ALG2		0x40


/* Connection modes */
/* Connection modes */
+4 −0
Original line number Original line Diff line number Diff line
@@ -1141,6 +1141,10 @@ void hci_conn_del_sysfs(struct hci_conn *conn);
#define lmp_inq_tx_pwr_capable(dev) ((dev)->features[0][7] & LMP_INQ_TX_PWR)
#define lmp_inq_tx_pwr_capable(dev) ((dev)->features[0][7] & LMP_INQ_TX_PWR)
#define lmp_ext_feat_capable(dev)  ((dev)->features[0][7] & LMP_EXTFEATURES)
#define lmp_ext_feat_capable(dev)  ((dev)->features[0][7] & LMP_EXTFEATURES)
#define lmp_transp_capable(dev)    ((dev)->features[0][2] & LMP_TRANSPARENT)
#define lmp_transp_capable(dev)    ((dev)->features[0][2] & LMP_TRANSPARENT)
#define lmp_edr_2m_capable(dev)    ((dev)->features[0][3] & LMP_EDR_2M)
#define lmp_edr_3m_capable(dev)    ((dev)->features[0][3] & LMP_EDR_3M)
#define lmp_edr_3slot_capable(dev) ((dev)->features[0][4] & LMP_EDR_3SLOT)
#define lmp_edr_5slot_capable(dev) ((dev)->features[0][5] & LMP_EDR_5SLOT)


/* ----- Extended LMP capabilities ----- */
/* ----- Extended LMP capabilities ----- */
#define lmp_csb_master_capable(dev) ((dev)->features[2][0] & LMP_CSB_MASTER)
#define lmp_csb_master_capable(dev) ((dev)->features[2][0] & LMP_CSB_MASTER)