LUFAConfig.h 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. /*
  2. LUFA Library
  3. Copyright (C) Dean Camera, 2018.
  4. dean [at] fourwalledcubicle [dot] com
  5. www.lufa-lib.org
  6. */
  7. /*
  8. Copyright 2018 Dean Camera (dean [at] fourwalledcubicle [dot] com)
  9. Permission to use, copy, modify, distribute, and sell this
  10. software and its documentation for any purpose is hereby granted
  11. without fee, provided that the above copyright notice appear in
  12. all copies and that both that the copyright notice and this
  13. permission notice and warranty disclaimer appear in supporting
  14. documentation, and that the name of the author not be used in
  15. advertising or publicity pertaining to distribution of the
  16. software without specific, written prior permission.
  17. The author disclaims all warranties with regard to this
  18. software, including all implied warranties of merchantability
  19. and fitness. In no event shall the author be liable for any
  20. special, indirect or consequential damages or any damages
  21. whatsoever resulting from loss of use, data or profits, whether
  22. in an action of contract, negligence or other tortious action,
  23. arising out of or in connection with the use or performance of
  24. this software.
  25. */
  26. /** \file
  27. * \brief LUFA Library Configuration Header File (Template)
  28. *
  29. * This is a header file which can be used to configure LUFA's
  30. * compile time options, as an alternative to the compile time
  31. * constants supplied through a makefile. To use this configuration
  32. * header, copy this into your project's root directory and supply
  33. * the \c USE_LUFA_CONFIG_HEADER token to the compiler so that it is
  34. * defined in all compiled source files.
  35. *
  36. * For information on what each token does, refer to the LUFA
  37. * manual section "Summary of Compile Tokens".
  38. */
  39. #ifndef __LUFA_CONFIG_H__
  40. #define __LUFA_CONFIG_H__
  41. #if (ARCH == ARCH_AVR8)
  42. /* Non-USB Related Configuration Tokens: */
  43. // #define DISABLE_TERMINAL_CODES
  44. /* USB Class Driver Related Tokens: */
  45. // #define HID_HOST_BOOT_PROTOCOL_ONLY
  46. // #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
  47. // #define HID_USAGE_STACK_DEPTH {Insert Value Here}
  48. // #define HID_MAX_COLLECTIONS {Insert Value Here}
  49. // #define HID_MAX_REPORTITEMS {Insert Value Here}
  50. // #define HID_MAX_REPORT_IDS {Insert Value Here}
  51. // #define NO_CLASS_DRIVER_AUTOFLUSH
  52. /* General USB Driver Related Tokens: */
  53. // #define ORDERED_EP_CONFIG
  54. // #define USE_STATIC_OPTIONS {Insert Value Here}
  55. // #define USB_DEVICE_ONLY
  56. // #define USB_HOST_ONLY
  57. // #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
  58. // #define NO_LIMITED_CONTROLLER_CONNECT
  59. // #define NO_SOF_EVENTS
  60. /* USB Device Mode Driver Related Tokens: */
  61. // #define USE_RAM_DESCRIPTORS
  62. // #define USE_FLASH_DESCRIPTORS
  63. // #define USE_EEPROM_DESCRIPTORS
  64. // #define NO_INTERNAL_SERIAL
  65. // #define FIXED_CONTROL_ENDPOINT_SIZE {Insert Value Here}
  66. // #define DEVICE_STATE_AS_GPIOR {Insert Value Here}
  67. // #define FIXED_NUM_CONFIGURATIONS {Insert Value Here}
  68. // #define CONTROL_ONLY_DEVICE
  69. // #define INTERRUPT_CONTROL_ENDPOINT
  70. // #define NO_DEVICE_REMOTE_WAKEUP
  71. // #define NO_DEVICE_SELF_POWER
  72. /* USB Host Mode Driver Related Tokens: */
  73. // #define HOST_STATE_AS_GPIOR {Insert Value Here}
  74. // #define USB_HOST_TIMEOUT_MS {Insert Value Here}
  75. // #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
  76. // #define NO_AUTO_VBUS_MANAGEMENT
  77. // #define INVERTED_VBUS_ENABLE_LINE
  78. #elif (ARCH == ARCH_XMEGA)
  79. /* Non-USB Related Configuration Tokens: */
  80. // #define DISABLE_TERMINAL_CODES
  81. /* USB Class Driver Related Tokens: */
  82. // #define HID_HOST_BOOT_PROTOCOL_ONLY
  83. // #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
  84. // #define HID_USAGE_STACK_DEPTH {Insert Value Here}
  85. // #define HID_MAX_COLLECTIONS {Insert Value Here}
  86. // #define HID_MAX_REPORTITEMS {Insert Value Here}
  87. // #define HID_MAX_REPORT_IDS {Insert Value Here}
  88. // #define NO_CLASS_DRIVER_AUTOFLUSH
  89. /* General USB Driver Related Tokens: */
  90. // #define USE_STATIC_OPTIONS {Insert Value Here}
  91. // #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
  92. // #define NO_LIMITED_CONTROLLER_CONNECT
  93. // #define NO_SOF_EVENTS
  94. /* USB Device Mode Driver Related Tokens: */
  95. // #define USE_RAM_DESCRIPTORS
  96. // #define USE_FLASH_DESCRIPTORS
  97. // #define USE_EEPROM_DESCRIPTORS
  98. // #define NO_INTERNAL_SERIAL
  99. // #define FIXED_CONTROL_ENDPOINT_SIZE {Insert Value Here}
  100. // #define DEVICE_STATE_AS_GPIOR {Insert Value Here}
  101. // #define FIXED_NUM_CONFIGURATIONS {Insert Value Here}
  102. // #define CONTROL_ONLY_DEVICE
  103. // #define MAX_ENDPOINT_INDEX {Insert Value Here}
  104. // #define NO_DEVICE_REMOTE_WAKEUP
  105. // #define NO_DEVICE_SELF_POWER
  106. #elif (ARCH == ARCH_UC3)
  107. /* Non-USB Related Configuration Tokens: */
  108. // #define DISABLE_TERMINAL_CODES
  109. /* USB Class Driver Related Tokens: */
  110. // #define HID_HOST_BOOT_PROTOCOL_ONLY
  111. // #define HID_STATETABLE_STACK_DEPTH {Insert Value Here}
  112. // #define HID_USAGE_STACK_DEPTH {Insert Value Here}
  113. // #define HID_MAX_COLLECTIONS {Insert Value Here}
  114. // #define HID_MAX_REPORTITEMS {Insert Value Here}
  115. // #define HID_MAX_REPORT_IDS {Insert Value Here}
  116. // #define NO_CLASS_DRIVER_AUTOFLUSH
  117. /* General USB Driver Related Tokens: */
  118. // #define ORDERED_EP_CONFIG
  119. // #define USE_STATIC_OPTIONS {Insert Value Here}
  120. // #define USB_DEVICE_ONLY
  121. // #define USB_HOST_ONLY
  122. // #define USB_STREAM_TIMEOUT_MS {Insert Value Here}
  123. // #define NO_SOF_EVENTS
  124. /* USB Device Mode Driver Related Tokens: */
  125. // #define NO_INTERNAL_SERIAL
  126. // #define FIXED_CONTROL_ENDPOINT_SIZE {Insert Value Here}
  127. // #define FIXED_NUM_CONFIGURATIONS {Insert Value Here}
  128. // #define CONTROL_ONLY_DEVICE
  129. // #define INTERRUPT_CONTROL_ENDPOINT
  130. // #define NO_DEVICE_REMOTE_WAKEUP
  131. // #define NO_DEVICE_SELF_POWER
  132. /* USB Host Mode Driver Related Tokens: */
  133. // #define USB_HOST_TIMEOUT_MS {Insert Value Here}
  134. // #define HOST_DEVICE_SETTLE_DELAY_MS {Insert Value Here}
  135. // #define NO_AUTO_VBUS_MANAGEMENT
  136. // #define INVERTED_VBUS_ENABLE_LINE
  137. #else
  138. #error Unsupported architecture for this LUFA configuration file.
  139. #endif
  140. #endif