hidp.h
上传用户:detong
上传日期:2022-06-22
资源大小:20675k
文件大小:2k
源码类别:

系统编程

开发平台:

Unix_Linux

  1. /*
  2.  *
  3.  *  BlueZ - Bluetooth protocol stack for Linux
  4.  *
  5.  *  Copyright (C) 2003-2008  Marcel Holtmann <marcel@holtmann.org>
  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. #ifndef __HIDP_H
  24. #define __HIDP_H
  25. #ifdef __cplusplus
  26. extern "C" {
  27. #endif
  28. /* HIDP defaults */
  29. #define HIDP_MINIMUM_MTU 48
  30. #define HIDP_DEFAULT_MTU 48
  31. /* HIDP ioctl defines */
  32. #define HIDPCONNADD _IOW('H', 200, int)
  33. #define HIDPCONNDEL _IOW('H', 201, int)
  34. #define HIDPGETCONNLIST _IOR('H', 210, int)
  35. #define HIDPGETCONNINFO _IOR('H', 211, int)
  36. #define HIDP_VIRTUAL_CABLE_UNPLUG 0
  37. #define HIDP_BOOT_PROTOCOL_MODE 1
  38. #define HIDP_BLUETOOTH_VENDOR_ID 9
  39. struct hidp_connadd_req {
  40. int ctrl_sock; /* Connected control socket */
  41. int intr_sock; /* Connected interrupt socket */
  42. uint16_t parser; /* Parser version */
  43. uint16_t rd_size; /* Report descriptor size */
  44. uint8_t *rd_data; /* Report descriptor data */
  45. uint8_t  country;
  46. uint8_t  subclass;
  47. uint16_t vendor;
  48. uint16_t product;
  49. uint16_t version;
  50. uint32_t flags;
  51. uint32_t idle_to;
  52. char name[128]; /* Device name */
  53. };
  54. struct hidp_conndel_req {
  55. bdaddr_t bdaddr;
  56. uint32_t flags;
  57. };
  58. struct hidp_conninfo {
  59. bdaddr_t bdaddr;
  60. uint32_t flags;
  61. uint16_t state;
  62. uint16_t vendor;
  63. uint16_t product;
  64. uint16_t version;
  65. char name[128];
  66. };
  67. struct hidp_connlist_req {
  68. uint32_t cnum;
  69. struct hidp_conninfo *ci;
  70. };
  71. #ifdef __cplusplus
  72. }
  73. #endif
  74. #endif /* __HIDP_H */