USBDesc.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /* Copyright (c) 2011, Peter Barrett
  2. **
  3. ** Permission to use, copy, modify, and/or distribute this software for
  4. ** any purpose with or without fee is hereby granted, provided that the
  5. ** above copyright notice and this permission notice appear in all copies.
  6. **
  7. ** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  8. ** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  9. ** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
  10. ** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
  11. ** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  12. ** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
  13. ** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  14. ** SOFTWARE.
  15. */
  16. #define CDC_ENABLED
  17. // Disable HID, Brainwaves don't need to be mice. -Hubbe 20120929
  18. // #define HID_ENABLED
  19. #ifdef CDC_ENABLED
  20. #define CDC_INTERFACE_COUNT 2
  21. #define CDC_ENPOINT_COUNT 3
  22. #else
  23. #define CDC_INTERFACE_COUNT 0
  24. #define CDC_ENPOINT_COUNT 0
  25. #endif
  26. #ifdef HID_ENABLED
  27. #define HID_INTERFACE_COUNT 1
  28. #define HID_ENPOINT_COUNT 1
  29. #else
  30. #define HID_INTERFACE_COUNT 0
  31. #define HID_ENPOINT_COUNT 0
  32. #endif
  33. #define CDC_ACM_INTERFACE 0 // CDC ACM
  34. #define CDC_DATA_INTERFACE 1 // CDC Data
  35. #define CDC_FIRST_ENDPOINT 1
  36. #define CDC_ENDPOINT_ACM (CDC_FIRST_ENDPOINT) // CDC First
  37. #define CDC_ENDPOINT_OUT (CDC_FIRST_ENDPOINT+1)
  38. #define CDC_ENDPOINT_IN (CDC_FIRST_ENDPOINT+2)
  39. #define HID_INTERFACE (CDC_ACM_INTERFACE + CDC_INTERFACE_COUNT) // HID Interface
  40. #define HID_FIRST_ENDPOINT (CDC_FIRST_ENDPOINT + CDC_ENPOINT_COUNT)
  41. #define HID_ENDPOINT_INT (HID_FIRST_ENDPOINT)
  42. #define INTERFACE_COUNT (MSC_INTERFACE + MSC_INTERFACE_COUNT)
  43. #ifdef CDC_ENABLED
  44. #define CDC_RX CDC_ENDPOINT_OUT
  45. #define CDC_TX CDC_ENDPOINT_IN
  46. #endif
  47. #ifdef HID_ENABLED
  48. #define HID_TX HID_ENDPOINT_INT
  49. #endif
  50. #define IMANUFACTURER 1
  51. #define IPRODUCT 2