1 /* $NetBSD: bt_hci.h,v 1.1 2003/01/11 05:44:08 dsainty Exp $ */
2
3 /*
4 * Copyright (c) 2003 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by David Sainty <David.Sainty@dtsp.co.nz>
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * 3. All advertising materials mentioning features or use of this software
19 * must display the following acknowledgement:
20 * This product includes software developed by the NetBSD
21 * Foundation, Inc. and its contributors.
22 * 4. Neither the name of The NetBSD Foundation nor the names of its
23 * contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission.
25 *
26 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
27 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
28 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
30 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 * POSSIBILITY OF SUCH DAMAGE.
37 */
38
39 /*
40 * Constants and structures defined by the Bluetooth specification of
41 * the HCI protocol.
42 */
43
44 #ifndef _NETBT_BT_HCI_H_
45 #define _NETBT_BT_HCI_H_
46
47 /* Event codes */
48
49 /*
50 * Note: Names chosen to match FreeBSD, but without the NG prefix.
51 * All taken from spec.
52 */
53
54 #define BT_HCI_EVENT_INQUIRY_COMPL 0x01
55 #define BT_HCI_EVENT_INQUIRY_RESULT 0x02
56 #define BT_HCI_EVENT_CON_COMPL 0x03
57 #define BT_HCI_EVENT_CON_REQ 0x04
58 #define BT_HCI_EVENT_DISCON_COMPL 0x05
59 #define BT_HCI_EVENT_AUTH_COMPL 0x06
60 #define BT_HCI_EVENT_REMOTE_NAME_REQ_COMPL 0x07
61 #define BT_HCI_EVENT_ENCRYPTION_CHANGE 0x08
62 #define BT_HCI_EVENT_CHANGE_CON_LINK_KEY_COMPL 0x09
63 #define BT_HCI_EVENT_MASTER_LINK_KEY_COMPL 0x0a
64 #define BT_HCI_EVENT_READ_REMOTE_FEATURES_COMPL 0x0b
65 #define BT_HCI_EVENT_READ_REMOTE_VER_INFO_COMPL 0x0c
66 #define BT_HCI_EVENT_QOS_SETUP_COMPL 0x0d
67 #define BT_HCI_EVENT_COMMAND_COMPL 0x0e
68 #define BT_HCI_EVENT_COMMAND_STATUS 0x0f
69 #define BT_HCI_EVENT_HARDWARE_ERROR 0x10
70 #define BT_HCI_EVENT_FLUSH_OCCUR 0x11
71 #define BT_HCI_EVENT_ROLE_CHANGE 0x12
72 #define BT_HCI_EVENT_NUM_COMPL_PKTS 0x13
73 #define BT_HCI_EVENT_MODE_CHANGE 0x14
74 #define BT_HCI_EVENT_RETURN_LINK_KEYS 0x15
75 #define BT_HCI_EVENT_PIN_CODE_REQ 0x16
76 #define BT_HCI_EVENT_LINK_KEY_REQ 0x17
77 #define BT_HCI_EVENT_LINK_KEY_NOTIFICATION 0x18
78 #define BT_HCI_EVENT_LOOPBACK_COMMAND 0x19
79 #define BT_HCI_EVENT_DATA_BUFFER_OVERFLOW 0x1a
80 #define BT_HCI_EVENT_MAX_SLOT_CHANGE 0x1b
81 #define BT_HCI_EVENT_READ_CLOCK_OFFSET_COMPL 0x1c
82 #define BT_HCI_EVENT_CON_PKT_TYPE_CHANGED 0x1d
83 #define BT_HCI_EVENT_QOS_VIOLATION 0x1e
84 #define BT_HCI_EVENT_PAGE_SCAN_MODE_CHANGE 0x1f
85 #define BT_HCI_EVENT_PAGE_SCAN_REP_MODE_CHANGE 0x20
86 #define BT_HCI_EVENT_BT_LOGO 0xfe
87 #define BT_HCI_EVENT_VENDOR 0xff
88
89
90 /* Mask constants */
91 #define BT_HCI_EVMSK_ALL 0x00000000ffffffff
92 #define BT_HCI_EVMSK_NONE 0x0000000000000000
93
94 #define BT_HCI_EVMSK_INQUIRY_COMPL 0x0000000000000001
95 #define BT_HCI_EVMSK_INQUIRY_RESULT 0x0000000000000002
96 #define BT_HCI_EVMSK_CON_COMPL 0x0000000000000004
97 #define BT_HCI_EVMSK_CON_REQ 0x0000000000000008
98 #define BT_HCI_EVMSK_DISCON_COMPL 0x0000000000000010
99 #define BT_HCI_EVMSK_AUTH_COMPL 0x0000000000000020
100 #define BT_HCI_EVMSK_REMOTE_NAME_REQ_COMPL 0x0000000000000040
101 #define BT_HCI_EVMSK_ENCRYPTION_CHANGE 0x0000000000000080
102 #define BT_HCI_EVMSK_CHANGE_CON_LINK_KEY_COMPL 0x0000000000000100
103 #define BT_HCI_EVMSK_MASTER_LINK_KEY_COMPL 0x0000000000000200
104 #define BT_HCI_EVMSK_READ_REMOTE_FEATURES_COMPL 0x0000000000000400
105 #define BT_HCI_EVMSK_READ_REMOTE_VER_INFO_COMPL 0x0000000000000800
106 #define BT_HCI_EVMSK_QOS_SETUP_COMPL 0x0000000000001000
107 #define BT_HCI_EVMSK_COMMAND_COMPL 0x0000000000002000
108 #define BT_HCI_EVMSK_COMMAND_STATUS 0x0000000000004000
109 #define BT_HCI_EVMSK_HARDWARE_ERROR 0x0000000000008000
110 #define BT_HCI_EVMSK_FLUSH_OCCUR 0x0000000000010000
111 #define BT_HCI_EVMSK_ROLE_CHANGE 0x0000000000020000
112 #define BT_HCI_EVMSK_NUM_COMPL_PKTS 0x0000000000040000
113 #define BT_HCI_EVMSK_MODE_CHANGE 0x0000000000080000
114 #define BT_HCI_EVMSK_RETURN_LINK_KEYS 0x0000000000100000
115 #define BT_HCI_EVMSK_PIN_CODE_REQ 0x0000000000200000
116 #define BT_HCI_EVMSK_LINK_KEY_REQ 0x0000000000400000
117 #define BT_HCI_EVMSK_LINK_KEY_NOTIFICATION 0x0000000000800000
118 #define BT_HCI_EVMSK_LOOPBACK_COMMAND 0x0000000001000000
119 #define BT_HCI_EVMSK_DATA_BUFFER_OVERFLOW 0x0000000002000000
120 #define BT_HCI_EVMSK_MAX_SLOT_CHANGE 0x0000000004000000
121 #define BT_HCI_EVMSK_READ_CLOCK_OFFSET_COMPL 0x0000000008000000
122 #define BT_HCI_EVMSK_CON_PKT_TYPE_CHANGED 0x0000000010000000
123 #define BT_HCI_EVMSK_QOS_VIOLATION 0x0000000020000000
124 #define BT_HCI_EVMSK_PAGE_SCAN_MODE_CHANGE 0x0000000040000000
125 #define BT_HCI_EVMSK_PAGE_SCAN_REP_MODE_CHANGE 0x0000000080000000
126
127 #endif /* _NETBT_BT_HCI_H_ */
Cache object: 65464898f13f40090922d46b2d4e3ca4
|