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