|
@@ -750,18 +750,28 @@ void hci_conn_del_sysfs(struct hci_conn *conn);
|
|
|
#define SET_HCIDEV_DEV(hdev, pdev) ((hdev)->dev.parent = (pdev))
|
|
|
|
|
|
/* ----- LMP capabilities ----- */
|
|
|
-#define lmp_rswitch_capable(dev) ((dev)->features[0] & LMP_RSWITCH)
|
|
|
#define lmp_encrypt_capable(dev) ((dev)->features[0] & LMP_ENCRYPT)
|
|
|
+#define lmp_rswitch_capable(dev) ((dev)->features[0] & LMP_RSWITCH)
|
|
|
+#define lmp_hold_capable(dev) ((dev)->features[0] & LMP_HOLD)
|
|
|
#define lmp_sniff_capable(dev) ((dev)->features[0] & LMP_SNIFF)
|
|
|
-#define lmp_sniffsubr_capable(dev) ((dev)->features[5] & LMP_SNIFF_SUBR)
|
|
|
+#define lmp_park_capable(dev) ((dev)->features[1] & LMP_PARK)
|
|
|
+#define lmp_inq_rssi_capable(dev) ((dev)->features[3] & LMP_RSSI_INQ)
|
|
|
#define lmp_esco_capable(dev) ((dev)->features[3] & LMP_ESCO)
|
|
|
+#define lmp_bredr_capable(dev) (!((dev)->features[4] & LMP_NO_BREDR))
|
|
|
+#define lmp_le_capable(dev) ((dev)->features[4] & LMP_LE)
|
|
|
+#define lmp_sniffsubr_capable(dev) ((dev)->features[5] & LMP_SNIFF_SUBR)
|
|
|
+#define lmp_pause_enc_capable(dev) ((dev)->features[5] & LMP_PAUSE_ENC)
|
|
|
+#define lmp_ext_inq_capable(dev) ((dev)->features[6] & LMP_EXT_INQ)
|
|
|
+#define lmp_le_br_capable(dev) ((dev)->features[6] & LMP_SIMUL_LE_BR)
|
|
|
#define lmp_ssp_capable(dev) ((dev)->features[6] & LMP_SIMPLE_PAIR)
|
|
|
#define lmp_no_flush_capable(dev) ((dev)->features[6] & LMP_NO_FLUSH)
|
|
|
-#define lmp_le_capable(dev) ((dev)->features[4] & LMP_LE)
|
|
|
-#define lmp_bredr_capable(dev) (!((dev)->features[4] & LMP_NO_BREDR))
|
|
|
+#define lmp_lsto_capable(dev) ((dev)->features[7] & LMP_LSTO)
|
|
|
+#define lmp_inq_tx_pwr_capable(dev) ((dev)->features[7] & LMP_INQ_TX_PWR)
|
|
|
+#define lmp_ext_feat_capable(dev) ((dev)->features[7] & LMP_EXTFEATURES)
|
|
|
|
|
|
/* ----- Extended LMP capabilities ----- */
|
|
|
#define lmp_host_le_capable(dev) ((dev)->host_features[0] & LMP_HOST_LE)
|
|
|
+#define lmp_host_le_br_capable(dev) ((dev)->host_features[0] & LMP_HOST_LE_BREDR)
|
|
|
|
|
|
/* ----- HCI protocols ----- */
|
|
|
static inline int hci_proto_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
|