From 4d246a82cbed77cea849ddcbc88d32019665edae Mon Sep 17 00:00:00 2001
From: Dean Camera <dean@fourwalledcubicle.com>
Date: Mon, 1 Feb 2010 12:35:48 +0000
Subject: [PATCH] Fixed incorrect values of USB_CONFIG_ATTR_SELFPOWERED and
 USB_CONFIG_ATTR_REMOTEWAKEUP tokens (thanks to Claus Christensen).

Mark the AVRISP-MKII project descriptors as being both Bus Powered and Device Powered.

Copy over file level documentation of the peripheral drivers to the module level documentation.
---
 LUFA/Doxygen.conf                           | 2 +-
 LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h     | 5 +++++
 LUFA/Drivers/Peripheral/AVRU4U6U7/TWI.h     | 5 +++++
 LUFA/Drivers/USB/HighLevel/StdDescriptors.h | 4 ++--
 LUFA/ManPages/ChangeLog.txt                 | 1 +
 Projects/AVRISP-MKII/Descriptors.c          | 2 +-
 6 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/LUFA/Doxygen.conf b/LUFA/Doxygen.conf
index 3497d3400..5a15bd751 100644
--- a/LUFA/Doxygen.conf
+++ b/LUFA/Doxygen.conf
@@ -496,7 +496,7 @@ SHOW_DIRECTORIES       = YES
 # This will remove the Files entry from the Quick Index and from the
 # Folder Tree View (if specified). The default is YES.
 
-SHOW_FILES             = NO
+SHOW_FILES             = YES
 
 # Set the SHOW_NAMESPACES tag to NO to disable the generation of the
 # Namespaces page.
diff --git a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
index 100f2c104..a7414ec31 100644
--- a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
+++ b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
@@ -39,6 +39,11 @@
 /** \ingroup Group_ADC
  *  @defgroup Group_ADC_AVRU4U6U7 Series U4, U6 and U7 Model ADC Driver
  *
+ *  ADC driver for the AT90USB1287, AT90USB1286, AT90USB647, AT90USB646, ATMEGA16U4 and ATMEGA32U4 AVRs.
+ *
+ *  \note This file should not be included directly. It is automatically included as needed by the ADC driver
+ *        dispatch header located in LUFA/Drivers/Peripheral/ADC.h.
+ *
  *  @{
  */
  
diff --git a/LUFA/Drivers/Peripheral/AVRU4U6U7/TWI.h b/LUFA/Drivers/Peripheral/AVRU4U6U7/TWI.h
index b4e113373..be905fe4e 100644
--- a/LUFA/Drivers/Peripheral/AVRU4U6U7/TWI.h
+++ b/LUFA/Drivers/Peripheral/AVRU4U6U7/TWI.h
@@ -39,6 +39,11 @@
 /** \ingroup Group_TWI
  *  @defgroup Group_TWI_AVRU4U6U7 Series U4, U6 and U7 Model TWI Driver
  *
+ *  Master mode TWI driver for the AT90USB1287, AT90USB1286, AT90USB647, AT90USB646, ATMEGA16U4 and ATMEGA32U4 AVRs.
+ *
+ *  \note This file should not be included directly. It is automatically included as needed by the TWI driver
+ *        dispatch header located in LUFA/Drivers/Peripheral/TWI.h.
+ *
  *  @{
  */
 
diff --git a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
index 008bbb887..404a44f2c 100644
--- a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
+++ b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
@@ -124,14 +124,14 @@
 			 *  descriptor's ConfigAttributes value to indicate that the specified configuration can draw its power
 			 *  from the device's own power source.
 			 */
-			#define USB_CONFIG_ATTR_SELFPOWERED       0xC0
+			#define USB_CONFIG_ATTR_SELFPOWERED       0x40
 
 			/** Can be masked with other configuration descriptor attributes for a \ref USB_Descriptor_Configuration_Header_t
 			 *  descriptor's ConfigAttributes value to indicate that the specified configuration supports the
 			 *  remote wakeup feature of the USB standard, allowing a suspended USB device to wake up the host upon
 			 *  request.
 			 */
-			#define USB_CONFIG_ATTR_REMOTEWAKEUP      0xA0
+			#define USB_CONFIG_ATTR_REMOTEWAKEUP      0x20
 
 			/** Can be masked with other endpoint descriptor attributes for a \ref USB_Descriptor_Endpoint_t descriptor's
 			 *  Attributes value to indicate that the specified endpoint is not synchronized.
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index e5cc7c99f..63ffaecc8 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -50,6 +50,7 @@
   *  - Fixed CDC and RNDIS host demos and class drivers - bidirectional endpoints should use two seperate pipes, not one half-duplex pipe
   *  - Fixed Pipe_IsEndpointBound() not taking the endpoint's direction into account
   *  - Fixed EEPROM and FLASH ISP programming in the AVRISP project
+  *  - Fixed incorrect values of USB_CONFIG_ATTR_SELFPOWERED and USB_CONFIG_ATTR_REMOTEWAKEUP tokens (thanks to Claus Christensen)
   *
   *  \section Sec_ChangeLog091223 Version 091223
   *
diff --git a/Projects/AVRISP-MKII/Descriptors.c b/Projects/AVRISP-MKII/Descriptors.c
index 6ab6092a6..bdc198ad0 100644
--- a/Projects/AVRISP-MKII/Descriptors.c
+++ b/Projects/AVRISP-MKII/Descriptors.c
@@ -81,7 +81,7 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
 			.ConfigurationNumber    = 1,
 			.ConfigurationStrIndex  = NO_DESCRIPTOR,
 				
-			.ConfigAttributes       = USB_CONFIG_ATTR_SELFPOWERED,
+			.ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),
 			
 			.MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)
 		},
-- 
GitLab