projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Enable sorting of the member functions in the Doxygen output, so that functions in...
[pub/USBasp.git]
/
LUFA
/
Common
/
Common.h
diff --git
a/LUFA/Common/Common.h
b/LUFA/Common/Common.h
index
b5088d8
..
d2d657a
100644
(file)
--- a/
LUFA/Common/Common.h
+++ b/
LUFA/Common/Common.h
@@
-7,7
+7,7
@@
*/
/*
*/
/*
- Copyright 201
1
Dean Camera (dean [at] fourwalledcubicle [dot] com)
+ Copyright 201
2
Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@
-28,6
+28,13
@@
this software.
*/
this software.
*/
+/** \dir
+ * \brief Common library header files.
+ *
+ * This folder contains header files which are common to all parts of the LUFA library. They may be used freely in
+ * user applications.
+ */
+
/** \file
* \brief Common library convenience headers, macros and functions.
*
/** \file
* \brief Common library convenience headers, macros and functions.
*
@@
-61,16
+68,16
@@
#include <string.h>
#include <stddef.h>
#include <string.h>
#include <stddef.h>
- #if defined(USE_LUFA_CONFIG_HEADER)
- #include "LUFAConfig.h"
- #endif
-
#include "Architectures.h"
#include "BoardTypes.h"
#include "ArchitectureSpecific.h"
#include "CompilerSpecific.h"
#include "Attributes.h"
#include "Architectures.h"
#include "BoardTypes.h"
#include "ArchitectureSpecific.h"
#include "CompilerSpecific.h"
#include "Attributes.h"
+ #if defined(USE_LUFA_CONFIG_HEADER)
+ #include "LUFAConfig.h"
+ #endif
+
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
@@
-89,6
+96,7
@@
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
#include <avr/boot.h>
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
#include <avr/boot.h>
+ #include <math.h>
#include <util/delay.h>
typedef uint8_t uint_reg_t;
#include <util/delay.h>
typedef uint8_t uint_reg_t;
@@
-101,9
+109,10
@@
#include "Endianness.h"
#elif (ARCH == ARCH_UC3)
#include <avr32/io.h>
#include "Endianness.h"
#elif (ARCH == ARCH_UC3)
#include <avr32/io.h>
+ #include <math.h>
// === TODO: Find abstracted way to handle these ===
// === TODO: Find abstracted way to handle these ===
- #define PROGMEM
const
+ #define PROGMEM
#define pgm_read_byte(x) *x
#define memcmp_P(...) memcmp(__VA_ARGS__)
#define memcpy_P(...) memcpy(__VA_ARGS__)
#define pgm_read_byte(x) *x
#define memcmp_P(...) memcmp(__VA_ARGS__)
#define memcpy_P(...) memcpy(__VA_ARGS__)
@@
-119,6
+128,7
@@
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
+ #include <math.h>
#include <util/delay.h>
typedef uint8_t uint_reg_t;
#include <util/delay.h>
typedef uint8_t uint_reg_t;
@@
-151,8
+161,8
@@
/** Convenience macro to determine the larger of two values.
*
/** Convenience macro to determine the larger of two values.
*
- * \
note
This macro should only be used with operands that do not have side effects from being evaluated
- * multiple times.
+ * \
attention
This macro should only be used with operands that do not have side effects from being evaluated
+ *
multiple times.
*
* \param[in] x First value to compare
* \param[in] y First value to compare
*
* \param[in] x First value to compare
* \param[in] y First value to compare
@@
-165,8
+175,8
@@
/** Convenience macro to determine the smaller of two values.
*
/** Convenience macro to determine the smaller of two values.
*
- * \
note
This macro should only be used with operands that do not have side effects from being evaluated
- * multiple times.
+ * \
attention
This macro should only be used with operands that do not have side effects from being evaluated
+ *
multiple times.
*
* \param[in] x First value to compare
* \param[in] y First value to compare
*
* \param[in] x First value to compare
* \param[in] y First value to compare
@@
-210,7
+220,7
@@
*
* \ingroup Group_GlobalInt
*
*
* \ingroup Group_GlobalInt
*
- * \param Name Unique name of the interrupt service routine.
+ * \param
[in]
Name Unique name of the interrupt service routine.
*/
#define ISR(Name, ...) void Name (void) __attribute__((__interrupt__)) __VA_ARGS__; void Name (void)
#endif
*/
#define ISR(Name, ...) void Name (void) __attribute__((__interrupt__)) __VA_ARGS__; void Name (void)
#endif
@@
-256,7
+266,7
@@
while (Milliseconds--)
{
__builtin_mtsr(AVR32_COUNT, 0);
while (Milliseconds--)
{
__builtin_mtsr(AVR32_COUNT, 0);
- while (__builtin_mfsr(AVR32_COUNT) < (F_CPU / 1000));
+ while (
(uint32_t)
__builtin_mfsr(AVR32_COUNT) < (F_CPU / 1000));
}
#elif (ARCH == ARCH_XMEGA)
if (GCC_IS_COMPILE_CONST(Milliseconds))
}
#elif (ARCH == ARCH_XMEGA)
if (GCC_IS_COMPILE_CONST(Milliseconds))
@@
-291,8
+301,6
@@
#elif (ARCH == ARCH_XMEGA)
return SREG;
#endif
#elif (ARCH == ARCH_XMEGA)
return SREG;
#endif
-
- GCC_MEMORY_BARRIER();
}
/** Sets the global interrupt enable state of the microcontroller to the mask passed into the function.
}
/** Sets the global interrupt enable state of the microcontroller to the mask passed into the function.