Get rid of the redundant ATTR_NEVER_INLINE macro which translated to the same as...
[pub/USBasp.git] / LUFA / Drivers / Board / AVR8 / XPLAIN / LEDs.h
index d00bbb6..80cf181 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2011.
+     Copyright (C) Dean Camera, 2013.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2011  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2013  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
@@ -18,7 +18,7 @@
   advertising or publicity pertaining to distribution of the
   software without specific, written prior permission.
 
   advertising or publicity pertaining to distribution of the
   software without specific, written prior permission.
 
-  The author disclaim all warranties with regard to this
+  The author disclaims all warranties with regard to this
   software, including all implied warranties of merchantability
   and fitness.  In no event shall the author be liable for any
   special, indirect or consequential damages or any damages
   software, including all implied warranties of merchantability
   and fitness.  In no event shall the author be liable for any
   special, indirect or consequential damages or any damages
@@ -29,7 +29,7 @@
 */
 
 /** \file
 */
 
 /** \file
- *  \brief Board specific LED driver header for the Atmel XPLAIN.
+ *  \brief Board specific LED driver header for the original Atmel XPLAIN.
  *  \copydetails Group_LEDs_XPLAIN
  *
  *  \note This file should not be included directly. It is automatically included as needed by the LEDs driver
  *  \copydetails Group_LEDs_XPLAIN
  *
  *  \note This file should not be included directly. It is automatically included as needed by the LEDs driver
  */
 
 /** \ingroup Group_LEDs
  */
 
 /** \ingroup Group_LEDs
+ *  \defgroup Group_LEDs_XPLAIN_REV1 XPLAIN_REV1
+ *  \brief Board specific LED driver header for the original Atmel XPLAIN, revision 1.
+ *
+ *  See \ref Group_LEDs_XPLAIN for more details.
+ */
+
+/** \ingroup Group_LEDs
  *  \defgroup Group_LEDs_XPLAIN XPLAIN
  *  \defgroup Group_LEDs_XPLAIN XPLAIN
- *  \brief Board specific LED driver header for the Atmel XPLAIN.
+ *  \brief Board specific LED driver header for the original Atmel XPLAIN.
  *
  *  Board specific LED driver header for the Atmel XPLAIN.
  *
  *
  *  Board specific LED driver header for the Atmel XPLAIN.
  *
+ *  <table>
+ *    <tr><th>Name</th><th>Color</th><th>Info</th><th>Active Level</th><th>Port Pin</th></tr>
+ *    <tr><td>LEDS_LED1</td><td>Green</td><td>General Indicator</td><td>Low</td><td>PORTB.6</td></tr>
+ *  </table>
+ *
  *  @{
  */
 
  *  @{
  */
 
                                PORTB |= LEDS_ALL_LEDS;
                        }
 
                                PORTB |= LEDS_ALL_LEDS;
                        }
 
+                       static inline void LEDs_Disable(void)
+                       {
+                               DDRB  &= ~LEDS_ALL_LEDS;
+                               PORTB &= ~LEDS_ALL_LEDS;
+                       }
+
                        static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask)
                        {
                                PORTB &= ~LEDMask;
                        static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask)
                        {
                                PORTB &= ~LEDMask;
 
                        static inline void LEDs_ToggleLEDs(const uint8_t LEDMask)
                        {
 
                        static inline void LEDs_ToggleLEDs(const uint8_t LEDMask)
                        {
-                               PORTB ^= LEDMask;
+                               PINB  = LEDMask;
                        }
 
                        static inline uint8_t LEDs_GetLEDs(void) ATTR_WARN_UNUSED_RESULT;
                        }
 
                        static inline uint8_t LEDs_GetLEDs(void) ATTR_WARN_UNUSED_RESULT;