/* Public Interface - May be used in end-application: */\r
/* Macros: */\r
#if defined(USE_SINGLE_DEVICE_CONFIGURATION)\r
- #define TOTAL_NUM_CONFIGURATIONS 1\r
+ #define FIXED_NUM_CONFIGURATIONS 1\r
#endif\r
\r
/* Enums: */\r
*/\r
extern uint8_t USB_ConfigurationNumber;\r
\r
- /** Indicates if the host is currently allowing the device to issue remote wakeup events. If this\r
- * flag is cleared, the device should not issue remote wakeup events to the host.\r
- *\r
- * \note This variable should be treated as read-only in the user application, and never manually\r
- * changed in value.\r
- *\r
- * \ingroup Group_Device\r
- */\r
- extern bool USB_RemoteWakeupEnabled;\r
+ #if !defined(NO_DEVICE_REMOTE_WAKEUP)\r
+ /** Indicates if the host is currently allowing the device to issue remote wakeup events. If this\r
+ * flag is cleared, the device should not issue remote wakeup events to the host.\r
+ *\r
+ * \note This variable should be treated as read-only in the user application, and never manually\r
+ * changed in value.\r
+ *\r
+ * \note To reduce FLASH usage of the compiled applications where Remote Wakeup is not supported,\r
+ * this global and the underlying management code can be disabled by defining the \r
+ * NO_DEVICE_REMOTE_WAKEUP token in the project makefile and passing it to the compiler via\r
+ * the -D switch.\r
+ *\r
+ * \ingroup Group_Device\r
+ */\r
+ extern bool USB_RemoteWakeupEnabled;\r
+ #endif\r
\r
- /** Indicates if the device is currently being powered by its own power supply, rather than being\r
- * powered by the host's USB supply. This flag should remain cleared if the device does not\r
- * support self powered mode, as indicated in the device descriptors.\r
- *\r
- * \ingroup Group_Device\r
- */\r
- extern bool USB_CurrentlySelfPowered;\r
+ #if !defined(NO_DEVICE_SELF_POWER)\r
+ /** Indicates if the device is currently being powered by its own power supply, rather than being\r
+ * powered by the host's USB supply. This flag should remain cleared if the device does not\r
+ * support self powered mode, as indicated in the device descriptors.\r
+ *\r
+ * \ingroup Group_Device\r
+ */\r
+ extern bool USB_CurrentlySelfPowered;\r
+ #endif\r
\r
/* Private Interface - For use in library only: */\r
#if !defined(__DOXYGEN__)\r
#endif\r
\r
/* Function Prototypes: */\r
- void USB_Device_ProcessControlPacket(void);\r
+ void USB_Device_ProcessControlRequest(void);\r
\r
#if defined(INCLUDE_FROM_DEVCHAPTER9_C)\r
static void USB_Device_SetAddress(void);\r
static void USB_Device_ClearSetFeature(void);\r
\r
#if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))\r
+ static char USB_Device_NibbleToASCII(uint8_t Nibble) ATTR_ALWAYS_INLINE;\r
static void USB_Device_GetInternalSerialDescriptor(void);\r
#endif \r
#endif\r