Update UC3 platform driver support to use the bitmasks defined in the header files...
[pub/USBasp.git] / LUFA / Drivers / USB / Core / USBController.h
index 475aeb1..290ed9f 100644 (file)
 */\r
 \r
 /** \file\r
 */\r
 \r
 /** \file\r
- *  \brief USB low level USB controller definitions.\r
- *\r
- *  This file contains structures, function prototypes and macros related to the low level configuration of the\r
- *  USB controller, to start, stop and reset the USB library core.\r
+ *  \brief Common USB Controller definitions for all architectures.\r
+ *  \copydetails Group_USBManagement\r
  *\r
  *  \note This file should not be included directly. It is automatically included as needed by the USB driver\r
  *        dispatch header located in LUFA/Drivers/USB/USB.h.\r
  *\r
  *  \note This file should not be included directly. It is automatically included as needed by the USB driver\r
  *        dispatch header located in LUFA/Drivers/USB/USB.h.\r
@@ -40,6 +38,7 @@
 \r
 /** \ingroup Group_USB\r
  *  \defgroup Group_USBManagement USB Interface Management\r
 \r
 /** \ingroup Group_USB\r
  *  \defgroup Group_USBManagement USB Interface Management\r
+ *  \brief USB Controller definitions for general USB controller management.\r
  *\r
  *  Functions, macros, variables, enums and types related to the setup and management of the USB interface.\r
  *\r
  *\r
  *  Functions, macros, variables, enums and types related to the setup and management of the USB interface.\r
  *\r
 \r
        /* Includes: */\r
                #include "../../../Common/Common.h"\r
 \r
        /* Includes: */\r
                #include "../../../Common/Common.h"\r
+               #include "USBMode.h"            \r
 \r
 \r
-               #if (ARCH == ARCH_AVR8)\r
-                       #include "AVR8/USBController.h"\r
+       /* Enable C linkage for C++ Compilers: */\r
+               #if defined(__cplusplus)\r
+                       extern "C" {\r
                #endif\r
 \r
        /* Preprocessor Checks and Defines: */\r
                #endif\r
 \r
        /* Preprocessor Checks and Defines: */\r
                        #error Do not include this file directly. Include LUFA/Drivers/USB/USB.h instead.\r
                #endif\r
 \r
                        #error Do not include this file directly. Include LUFA/Drivers/USB/USB.h instead.\r
                #endif\r
 \r
+       /* Architecture Includes: */\r
+               #if (ARCH == ARCH_AVR8)\r
+                       #include "AVR8/USBController_AVR8.h"\r
+               #elif (ARCH == ARCH_UC3)\r
+                       #include "UC3/USBController_UC3.h"\r
+               #elif (ARCH == ARCH_XMEGA)\r
+                       #include "XMEGA/USBController_XMEGA.h"  \r
+               #endif\r
+\r
+       /* Disable C linkage for C++ Compilers: */\r
+               #if defined(__cplusplus)\r
+                       }\r
+               #endif\r
+\r
 #endif\r
 \r
 /** @} */\r
 #endif\r
 \r
 /** @} */\r