xref: /linux/include/net/bluetooth/hci_mon.h (revision 22db3cbcf9f91eef848db0986869822b4bf27193)
1cd82e61cSMarcel Holtmann /*
2cd82e61cSMarcel Holtmann    BlueZ - Bluetooth protocol stack for Linux
3cd82e61cSMarcel Holtmann 
4cd82e61cSMarcel Holtmann    Copyright (C) 2011-2012  Intel Corporation
5cd82e61cSMarcel Holtmann 
6cd82e61cSMarcel Holtmann    This program is free software; you can redistribute it and/or modify
7cd82e61cSMarcel Holtmann    it under the terms of the GNU General Public License version 2 as
8cd82e61cSMarcel Holtmann    published by the Free Software Foundation;
9cd82e61cSMarcel Holtmann 
10cd82e61cSMarcel Holtmann    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11cd82e61cSMarcel Holtmann    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12cd82e61cSMarcel Holtmann    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.
13cd82e61cSMarcel Holtmann    IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY
14cd82e61cSMarcel Holtmann    CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
15cd82e61cSMarcel Holtmann    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16cd82e61cSMarcel Holtmann    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17cd82e61cSMarcel Holtmann    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18cd82e61cSMarcel Holtmann 
19cd82e61cSMarcel Holtmann    ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS,
20cd82e61cSMarcel Holtmann    COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS
21cd82e61cSMarcel Holtmann    SOFTWARE IS DISCLAIMED.
22cd82e61cSMarcel Holtmann */
23cd82e61cSMarcel Holtmann 
24cd82e61cSMarcel Holtmann #ifndef __HCI_MON_H
25cd82e61cSMarcel Holtmann #define __HCI_MON_H
26cd82e61cSMarcel Holtmann 
27cd82e61cSMarcel Holtmann struct hci_mon_hdr {
28cd82e61cSMarcel Holtmann 	__le16	opcode;
29cd82e61cSMarcel Holtmann 	__le16	index;
30cd82e61cSMarcel Holtmann 	__le16	len;
31cd82e61cSMarcel Holtmann } __packed;
32cd82e61cSMarcel Holtmann #define HCI_MON_HDR_SIZE 6
33cd82e61cSMarcel Holtmann 
34cd82e61cSMarcel Holtmann #define HCI_MON_NEW_INDEX	0
35cd82e61cSMarcel Holtmann #define HCI_MON_DEL_INDEX	1
36cd82e61cSMarcel Holtmann #define HCI_MON_COMMAND_PKT	2
37cd82e61cSMarcel Holtmann #define HCI_MON_EVENT_PKT	3
38cd82e61cSMarcel Holtmann #define HCI_MON_ACL_TX_PKT	4
39cd82e61cSMarcel Holtmann #define HCI_MON_ACL_RX_PKT	5
40cd82e61cSMarcel Holtmann #define HCI_MON_SCO_TX_PKT	6
41cd82e61cSMarcel Holtmann #define HCI_MON_SCO_RX_PKT	7
42*22db3cbcSMarcel Holtmann #define HCI_MON_OPEN_INDEX	8
43*22db3cbcSMarcel Holtmann #define HCI_MON_CLOSE_INDEX	9
44cd82e61cSMarcel Holtmann 
45cd82e61cSMarcel Holtmann struct hci_mon_new_index {
46cd82e61cSMarcel Holtmann 	__u8		type;
47cd82e61cSMarcel Holtmann 	__u8		bus;
48cd82e61cSMarcel Holtmann 	bdaddr_t	bdaddr;
49cd82e61cSMarcel Holtmann 	char		name[8];
50cd82e61cSMarcel Holtmann } __packed;
51cd82e61cSMarcel Holtmann #define HCI_MON_NEW_INDEX_SIZE 16
52cd82e61cSMarcel Holtmann 
53cd82e61cSMarcel Holtmann #endif /* __HCI_MON_H */
54