aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/bluetooth
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@nokia.com>2011-03-28 07:07:23 -0400
committerGustavo F. Padovan <padovan@profusion.mobi>2011-03-31 13:22:58 -0400
commit80a1e1dbf62a08984d4c1bfb5a4bca38c3e1664f (patch)
treeb57c691a346e05ea76c7df70f23dabd4e05221f6 /include/net/bluetooth
parente90165be9a4d6a1e8fa632fcae00a5294abd3981 (diff)
Bluetooth: Add local Extended Inquiry Response (EIR) support
This patch adds automated creation of the local EIR data based on what 16-bit UUIDs are registered and what the device name is. This should cover the majority use cases, however things like 32/128-bit UUIDs, TX power and Device ID will need to be added later to be on par with what bluetoothd is capable of doing (without the Management interface). Signed-off-by: Johan Hedberg <johan.hedberg@nokia.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Diffstat (limited to 'include/net/bluetooth')
-rw-r--r--include/net/bluetooth/hci.h8
-rw-r--r--include/net/bluetooth/hci_core.h1
2 files changed, 9 insertions, 0 deletions
diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h
index b989a8c3e01a..6846ec02dcb0 100644
--- a/include/net/bluetooth/hci.h
+++ b/include/net/bluetooth/hci.h
@@ -614,6 +614,14 @@ struct hci_cp_host_buffer_size {
614 614
615#define HCI_OP_WRITE_INQUIRY_MODE 0x0c45 615#define HCI_OP_WRITE_INQUIRY_MODE 0x0c45
616 616
617#define HCI_MAX_EIR_LENGTH 240
618
619#define HCI_OP_WRITE_EIR 0x0c52
620struct hci_cp_write_eir {
621 uint8_t fec;
622 uint8_t data[HCI_MAX_EIR_LENGTH];
623} __packed;
624
617#define HCI_OP_READ_SSP_MODE 0x0c55 625#define HCI_OP_READ_SSP_MODE 0x0c55
618struct hci_rp_read_ssp_mode { 626struct hci_rp_read_ssp_mode {
619 __u8 status; 627 __u8 status;
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index 87bff518b54b..3b2f09df279a 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -102,6 +102,7 @@ struct hci_dev {
102 __u8 dev_type; 102 __u8 dev_type;
103 bdaddr_t bdaddr; 103 bdaddr_t bdaddr;
104 __u8 dev_name[HCI_MAX_NAME_LENGTH]; 104 __u8 dev_name[HCI_MAX_NAME_LENGTH];
105 __u8 eir[HCI_MAX_EIR_LENGTH];
105 __u8 dev_class[3]; 106 __u8 dev_class[3];
106 __u8 major_class; 107 __u8 major_class;
107 __u8 minor_class; 108 __u8 minor_class;