CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
orangepi-xunlong

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

GitHub Repository: orangepi-xunlong/orangepi-build
Path: blob/next/external/cache/sources/hcitools/lib/bluetooth/hidp.h
Views: 3960
1
/*
2
*
3
* BlueZ - Bluetooth protocol stack for Linux
4
*
5
* Copyright (C) 2003-2010 Marcel Holtmann <[email protected]>
6
*
7
*
8
* This program is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2 of the License, or
11
* (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
*
22
*/
23
24
#ifndef __HIDP_H
25
#define __HIDP_H
26
27
#ifdef __cplusplus
28
extern "C" {
29
#endif
30
31
/* HIDP defaults */
32
#define HIDP_MINIMUM_MTU 48
33
#define HIDP_DEFAULT_MTU 48
34
35
/* HIDP ioctl defines */
36
#define HIDPCONNADD _IOW('H', 200, int)
37
#define HIDPCONNDEL _IOW('H', 201, int)
38
#define HIDPGETCONNLIST _IOR('H', 210, int)
39
#define HIDPGETCONNINFO _IOR('H', 211, int)
40
41
#define HIDP_VIRTUAL_CABLE_UNPLUG 0
42
#define HIDP_BOOT_PROTOCOL_MODE 1
43
#define HIDP_BLUETOOTH_VENDOR_ID 9
44
45
struct hidp_connadd_req {
46
int ctrl_sock; /* Connected control socket */
47
int intr_sock; /* Connected interrupt socket */
48
uint16_t parser; /* Parser version */
49
uint16_t rd_size; /* Report descriptor size */
50
uint8_t *rd_data; /* Report descriptor data */
51
uint8_t country;
52
uint8_t subclass;
53
uint16_t vendor;
54
uint16_t product;
55
uint16_t version;
56
uint32_t flags;
57
uint32_t idle_to;
58
char name[128]; /* Device name */
59
};
60
61
struct hidp_conndel_req {
62
bdaddr_t bdaddr;
63
uint32_t flags;
64
};
65
66
struct hidp_conninfo {
67
bdaddr_t bdaddr;
68
uint32_t flags;
69
uint16_t state;
70
uint16_t vendor;
71
uint16_t product;
72
uint16_t version;
73
char name[128];
74
};
75
76
struct hidp_connlist_req {
77
uint32_t cnum;
78
struct hidp_conninfo *ci;
79
};
80
81
#ifdef __cplusplus
82
}
83
#endif
84
85
#endif /* __HIDP_H */
86
87