hiddev.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*
  2. * Copyright (c) 1999-2000 Vojtech Pavlik
  3. *
  4. * Sponsored by SuSE
  5. */
  6. /*
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  20. *
  21. * Should you need to contact me, the author, you can do so either by
  22. * e-mail - mail your message to <vojtech@suse.cz>, or by paper mail:
  23. * Vojtech Pavlik, Ucitelska 1576, Prague 8, 182 00 Czech Republic
  24. */
  25. #ifndef _HIDDEV_H
  26. #define _HIDDEV_H
  27. #include <uapi/linux/hiddev.h>
  28. /*
  29. * In-kernel definitions.
  30. */
  31. struct hid_device;
  32. struct hid_usage;
  33. struct hid_field;
  34. struct hid_report;
  35. #ifdef CONFIG_USB_HIDDEV
  36. int hiddev_connect(struct hid_device *hid, unsigned int force);
  37. void hiddev_disconnect(struct hid_device *);
  38. void hiddev_hid_event(struct hid_device *hid, struct hid_field *field,
  39. struct hid_usage *usage, __s32 value);
  40. void hiddev_report_event(struct hid_device *hid, struct hid_report *report);
  41. #else
  42. static inline int hiddev_connect(struct hid_device *hid,
  43. unsigned int force)
  44. { return -1; }
  45. static inline void hiddev_disconnect(struct hid_device *hid) { }
  46. static inline void hiddev_hid_event(struct hid_device *hid, struct hid_field *field,
  47. struct hid_usage *usage, __s32 value) { }
  48. static inline void hiddev_report_event(struct hid_device *hid, struct hid_report *report) { }
  49. #endif
  50. #endif