bluetooth.h revision 40d3651f0ad7f3e25950ff7124547438bef57be7
1aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project/****************************************************************************
2aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ****************************************************************************
3aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***
4aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***   This header was automatically generated from a Bluez header
5aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***   of the same name, to make information necessary for userspace to
6aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***   call into the kernel available to Android. It contains only constants,
7aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***   structures, and macros generated from the original header, and thus,
8aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***   contains no copyrightable information.
9aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ***
1040d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***   To edit the content of this header, modify the corresponding
1140d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***   source file (e.g. under external/kernel-headers/original/) then
1240d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***   run bionic/libc/kernel/tools/update_all.py
1340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***
1440d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***   Any manual change here will be lost the next time this script will
1540d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***   be run. You've been warned!
1640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh ***
17aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ****************************************************************************
18aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project ****************************************************************************/
19aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#ifndef __BLUETOOTH_H
20aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define __BLUETOOTH_H
21aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#ifdef __cplusplus
22aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#endif
2340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#include <stdio.h>
25aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#include <stdint.h>
26aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#include <string.h>
27aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#include <endian.h>
2840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#include <byteswap.h>
30aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#ifndef AF_BLUETOOTH
31aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define AF_BLUETOOTH 31
32aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define PF_BLUETOOTH AF_BLUETOOTH
3340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#endif
35aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_L2CAP 0
36aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_HCI 1
37aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_SCO 2
3840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_RFCOMM 3
40aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_BNEP 4
41aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_CMTP 5
42aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_HIDP 6
4340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BTPROTO_AVDTP 7
45aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define SOL_HCI 0
46aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define SOL_L2CAP 6
47aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define SOL_SCO 17
4840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define SOL_RFCOMM 18
50059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#ifndef SOL_BLUETOOTH
51059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define SOL_BLUETOOTH 274
52059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#endif
5340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_SECURITY 4
5540d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganeshstruct bt_security {
5640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh uint8_t level;
5740d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh};
5840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_SECURITY_SDP 0
60059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_SECURITY_LOW 1
61059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_SECURITY_MEDIUM 2
62059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_SECURITY_HIGH 3
6340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64059176782b8bdd8f54896181697793c583a4befeJaikumar Ganesh#define BT_DEFER_SETUP 7
6540d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh#define BT_FLUSHABLE 8
6640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh#define BT_FLUSHABLE_OFF 0
6740d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh#define BT_FLUSHABLE_ON 1
6840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
6940d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh#define BT_POWER 9
7040d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganeshstruct bt_power {
7140d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh uint8_t force_active;
7240d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh};
7340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
7440d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganeshenum {
7540d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_CONNECTED = 1,
7640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_OPEN,
7740d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_BOUND,
7840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
7940d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_LISTEN,
8040d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_CONNECT,
8140d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_CONNECT2,
8240d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_CONFIG,
8340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
8440d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_DISCONN,
8540d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh BT_CLOSED
8640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh};
87aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#if __BYTE_ORDER == __LITTLE_ENDIAN
8840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define htobs(d) (d)
90aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define htobl(d) (d)
91aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define btohs(d) (d)
92aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define btohl(d) (d)
9340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#elif __BYTE_ORDER == __BIG_ENDIAN
95aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define htobs(d) bswap_16(d)
96aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define htobl(d) bswap_32(d)
97aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define btohs(d) bswap_16(d)
9840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define btohl(d) bswap_32(d)
100aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#else
101aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#error "Unknown byte order"
102aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#endif
10340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define bt_get_unaligned(ptr)  ({   struct __attribute__((packed)) {   typeof(*(ptr)) __v;   } *__p = (void *) (ptr);   __p->__v;  })
105aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define bt_put_unaligned(val, ptr)  do {   struct __attribute__((packed)) {   typeof(*(ptr)) __v;   } *__p = (void *) (ptr);   __p->__v = (val);  } while(0)
10640d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganeshtypedef struct {
10740d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh uint8_t b[6];
10840d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
10940d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh} __attribute__((packed)) bdaddr_t;
110aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BDADDR_ANY (&(bdaddr_t) {{0, 0, 0, 0, 0, 0}})
111aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BDADDR_ALL (&(bdaddr_t) {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}})
112aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#define BDADDR_LOCAL (&(bdaddr_t) {{0, 0, 0, 0xff, 0xff, 0xff}})
11340d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#ifdef __cplusplus
115aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#endif
116aca2845d2be375190b3738672b25997516cbb48dThe Android Open Source Project#endif
11740d3651f0ad7f3e25950ff7124547438bef57be7Jaikumar Ganesh
118