Add code to start the USBB Generic Clock from the user-specified master clock source...
[pub/USBasp.git] / LUFA / Common / Common.h
index 4efa27e..355391b 100644 (file)
                #include "BoardTypes.h"
                
        /* Architecture specific utility includes: */
-               #if (ARCH == ARCH_AVR8)
+               #if defined(__DOXYGEN__)
+                       /** Type define for an unsigned integer the same width as the selected architecture's machine register. */
+                       typedef MACHINE_REG_t uint_reg_t;
+               #elif (ARCH == ARCH_AVR8)
                        #include <avr/io.h>
                        #include <avr/interrupt.h>
                        #include <avr/pgmspace.h>
                        #include <util/atomic.h>
                        #include <util/delay.h>
                        
-                       typedef uint8_t uintN_t;
-                       typedef int8_t  intN_t;
+                       typedef uint8_t uint_reg_t;
                #elif (ARCH == ARCH_UC3B)
                        #include <avr32/io.h>
 
-                       typedef uint32_t uintN_t;
-                       typedef int32_t  intN_t;
+                       typedef uint32_t uint_reg_t;
+                       
+                       // TODO
+                       #define EEMEM
+                       #define PROGMEM                  const
+                       #define ISR(Name)                void Name (void)
+                       #define ATOMIC_BLOCK(x)          if (1)
+                       #define ATOMIC_RESTORESTATE
+                       #define pgm_read_byte(x)         *x
+                       #define eeprom_read_byte(x)      *x
+                       #define eeprom_update_byte(x, y) *x = y
+                       #define eeprom_write_byte(x, y)  *x = y
+                       #define _delay_ms(x)
+                       #define memcmp_P(...)            memcmp(__VA_ARGS__)
+                       #define memcpy_P(...)            memcpy(__VA_ARGS__)
                        
                        #warning The UC3B architecture support is currently experimental and incomplete!
                #endif