aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2011-07-11 11:16:57 +0000
committerDean Camera <dean@fourwalledcubicle.com>2011-07-11 11:16:57 +0000
commitf152ff26c7902a848c798c56adb981861beaf2bf (patch)
tree2ffbab3935629dec6be738f73bf3db46d4a7b4b3 /LUFA
parentc029d72b9497ebf554c9d05ec58d48d7534b8a2f (diff)
downloadlufa-f152ff26c7902a848c798c56adb981861beaf2bf.tar.gz
lufa-f152ff26c7902a848c798c56adb981861beaf2bf.tar.bz2
lufa-f152ff26c7902a848c798c56adb981861beaf2bf.zip
Add missing function attributes to the RingBuffer driver to reduce the chances of invalid usage.
Fix duplicated LED driver functions in the Doxygen documentation.
Diffstat (limited to 'LUFA')
-rw-r--r--LUFA/Drivers/Board/LEDs.h42
-rw-r--r--LUFA/Drivers/Misc/RingBuffer.h12
2 files changed, 32 insertions, 22 deletions
diff --git a/LUFA/Drivers/Board/LEDs.h b/LUFA/Drivers/Board/LEDs.h
index 1e80f8f2f..1e23d7421 100644
--- a/LUFA/Drivers/Board/LEDs.h
+++ b/LUFA/Drivers/Board/LEDs.h
@@ -109,12 +109,12 @@
#if (BOARD == BOARD_NONE)
static inline void LEDs_Init(void) {};
- static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask) {};
- static inline void LEDs_TurnOffLEDs(const uint8_t LEDMask) {};
- static inline void LEDs_SetAllLEDs(const uint8_t LEDMask) {};
- static inline void LEDs_ChangeLEDs(const uint8_t LEDMask, const uint8_t ActiveMask) {};
- static inline void LEDs_ToggleLEDs(const uint8_t LEDMask) {};
- static inline uint8_t LEDs_GetLEDs(void) { return 0; }
+ static inline void LEDs_TurnOnLEDs(const uint_reg_t LEDMask) {};
+ static inline void LEDs_TurnOffLEDs(const uint_reg_t LEDMask) {};
+ static inline void LEDs_SetAllLEDs(const uint_reg_t LEDMask) {};
+ static inline void LEDs_ChangeLEDs(const uint_reg_t LEDMask, const uint_reg_t ActiveMask) {};
+ static inline void LEDs_ToggleLEDs(const uint_reg_t LEDMask) {};
+ static inline uint_reg_t LEDs_GetLEDs(void) { return 0; }
#elif (BOARD == BOARD_USBKEY)
#include "AVR8/USBKEY/LEDs.h"
#elif (BOARD == BOARD_STK525)
@@ -176,20 +176,22 @@
#endif
/* Preprocessor Checks: */
- #if !defined(LEDS_LED1)
- #define LEDS_LED1 0
- #endif
-
- #if !defined(LEDS_LED2)
- #define LEDS_LED2 0
- #endif
-
- #if !defined(LEDS_LED3)
- #define LEDS_LED3 0
- #endif
-
- #if !defined(LEDS_LED4)
- #define LEDS_LED4 0
+ #if !defined(__DOXYGEN__)
+ #if !defined(LEDS_LED1)
+ #define LEDS_LED1 0
+ #endif
+
+ #if !defined(LEDS_LED2)
+ #define LEDS_LED2 0
+ #endif
+
+ #if !defined(LEDS_LED3)
+ #define LEDS_LED3 0
+ #endif
+
+ #if !defined(LEDS_LED4)
+ #define LEDS_LED4 0
+ #endif
#endif
/* Pseudo-Functions for Doxygen: */
diff --git a/LUFA/Drivers/Misc/RingBuffer.h b/LUFA/Drivers/Misc/RingBuffer.h
index 3547c52ef..64587e64c 100644
--- a/LUFA/Drivers/Misc/RingBuffer.h
+++ b/LUFA/Drivers/Misc/RingBuffer.h
@@ -127,6 +127,8 @@
* \param[out] Size Maximum number of bytes that can be stored in the underlying data array.
*/
static inline void RingBuffer_InitBuffer(RingBuffer_t* Buffer, uint8_t* const DataPtr, const uint16_t Size)
+ ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
+ static inline void RingBuffer_InitBuffer(RingBuffer_t* Buffer, uint8_t* const DataPtr, const uint16_t Size)
{
GCC_FORCE_POINTER_ACCESS(Buffer);
@@ -157,6 +159,7 @@
*
* \return Number of bytes currently stored in the buffer.
*/
+ static inline uint16_t RingBuffer_GetCount(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
static inline uint16_t RingBuffer_GetCount(RingBuffer_t* const Buffer)
{
uint16_t Count;
@@ -182,6 +185,7 @@
*
* \return Number of free bytes in the buffer.
*/
+ static inline uint16_t RingBuffer_GetFreeCount(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
static inline uint16_t RingBuffer_GetFreeCount(RingBuffer_t* const Buffer)
{
return (Buffer->Size - RingBuffer_GetCount(Buffer));
@@ -199,6 +203,7 @@
*
* \return Boolean \c true if the buffer contains no free space, false otherwise.
*/
+ static inline bool RingBuffer_IsEmpty(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
static inline bool RingBuffer_IsEmpty(RingBuffer_t* const Buffer)
{
return (RingBuffer_GetCount(Buffer) == 0);
@@ -212,6 +217,7 @@
*
* \return Boolean \c true if the buffer contains no free space, false otherwise.
*/
+ static inline bool RingBuffer_IsFull(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
static inline bool RingBuffer_IsFull(RingBuffer_t* const Buffer)
{
return (RingBuffer_GetCount(Buffer) == Buffer->Size);
@@ -226,8 +232,8 @@
* \param[in,out] Buffer Pointer to a ring buffer structure to insert into.
* \param[in] Data Data element to insert into the buffer.
*/
- static inline void RingBuffer_Insert(RingBuffer_t* Buffer,
- const uint8_t Data)
+ static inline void RingBuffer_Insert(RingBuffer_t* Buffer, const uint8_t Data) ATTR_NON_NULL_PTR_ARG(1);
+ static inline void RingBuffer_Insert(RingBuffer_t* Buffer, const uint8_t Data)
{
GCC_FORCE_POINTER_ACCESS(Buffer);
@@ -254,6 +260,7 @@
*
* \return Next data element stored in the buffer.
*/
+ static inline uint8_t RingBuffer_Remove(RingBuffer_t* Buffer) ATTR_NON_NULL_PTR_ARG(1);
static inline uint8_t RingBuffer_Remove(RingBuffer_t* Buffer)
{
GCC_FORCE_POINTER_ACCESS(Buffer);
@@ -279,6 +286,7 @@
*
* \return Next data element stored in the buffer.
*/
+ static inline uint8_t RingBuffer_Peek(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1);
static inline uint8_t RingBuffer_Peek(RingBuffer_t* const Buffer)
{
return *Buffer->Out;