From 08eeceeb5fe1fe17d5703123e477dc6fd06af5ff Mon Sep 17 00:00:00 2001
From: Dean Camera <dean@fourwalledcubicle.com>
Date: Fri, 1 Jul 2011 05:30:29 +0000
Subject: [PATCH] Remove custom CDC class descriptor definitions from the CDC
 bootloader, and switch it to use the CDC Class Driver descriptor definitions.

---
 Bootloaders/CDC/Descriptors.c |  6 +++---
 Bootloaders/CDC/Descriptors.h | 40 +++--------------------------------
 2 files changed, 6 insertions(+), 40 deletions(-)

diff --git a/Bootloaders/CDC/Descriptors.c b/Bootloaders/CDC/Descriptors.c
index ee2b0aa1d..7516a7b8f 100644
--- a/Bootloaders/CDC/Descriptors.c
+++ b/Bootloaders/CDC/Descriptors.c
@@ -104,7 +104,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
 
 	.CDC_Functional_Header =
 		{
-			.Header                 = {.Size = sizeof(USB_Descriptor_CDC_FunctionalHeader_t), .Type = DTYPE_CSInterface},
+			.Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalHeader_t), .Type = DTYPE_CSInterface},
 			.Subtype                = 0x00,
 
 			.CDCSpecification       = VERSION_BCD(01.10),
@@ -112,7 +112,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
 
 	.CDC_Functional_ACM =
 		{
-			.Header                 = {.Size = sizeof(USB_Descriptor_CDC_FunctionalACM_t), .Type = DTYPE_CSInterface},
+			.Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalACM_t), .Type = DTYPE_CSInterface},
 			.Subtype                = 0x02,
 
 			.Capabilities           = 0x04,
@@ -120,7 +120,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
 
 	.CDC_Functional_Union =
 		{
-			.Header                 = {.Size = sizeof(USB_Descriptor_CDC_FunctionalUnion_t), .Type = DTYPE_CSInterface},
+			.Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
 			.Subtype                = 0x06,
 
 			.MasterInterfaceNumber  = 0,
diff --git a/Bootloaders/CDC/Descriptors.h b/Bootloaders/CDC/Descriptors.h
index adcac4437..c843bec82 100644
--- a/Bootloaders/CDC/Descriptors.h
+++ b/Bootloaders/CDC/Descriptors.h
@@ -108,40 +108,6 @@
 		#define CDC_NOTIFICATION_EPSIZE        8
 
 	/* Type Defines: */
-		/** Type define for a CDC class-specific functional header descriptor. This indicates to the host that the device
-		 *  contains one or more CDC functional data descriptors, which give the CDC interface's capabilities and configuration.
-		 *  See the CDC class specification for more details.
-		 */
-		typedef struct
-		{
-			USB_Descriptor_Header_t Header; /**< Regular descriptor header containing the descriptor's type and length. */
-			uint8_t                 Subtype; /**< Sub type value used to distinguish between CDC class-specific descriptors. */
-			uint16_t                CDCSpecification; /**< Version number of the CDC specification implemented by the device,
-			                                           *   encoded in BCD format.
-			                                           */
-		} USB_Descriptor_CDC_FunctionalHeader_t;
-
-		/** Type define for a CDC class-specific functional ACM descriptor. This indicates to the host that the CDC interface
-		 *  supports the CDC ACM subclass of the CDC specification. See the CDC class specification for more details.
-		 */
-		typedef struct
-		{
-			USB_Descriptor_Header_t Header; /**< Regular descriptor header containing the descriptor's type and length. */
-			uint8_t                 Subtype; /**< Sub type value used to distinguish between CDC class-specific descriptors. */
-			uint8_t                 Capabilities; /**< Capabilities of the ACM interface, given as a bit mask. */
-		} USB_Descriptor_CDC_FunctionalACM_t;
-
-		/** Type define for a CDC class-specific functional Union descriptor. This indicates to the host that specific
-		 *  CDC control and data interfaces are related. See the CDC class specification for more details.
-		 */
-		typedef struct
-		{
-			USB_Descriptor_Header_t Header; /**< Regular descriptor header containing the descriptor's type and length. */
-			uint8_t                 Subtype; /**< Sub type value used to distinguish between CDC class-specific descriptors. */
-			uint8_t                 MasterInterfaceNumber; /**< Interface number of the CDC Control interface. */
-			uint8_t                 SlaveInterfaceNumber; /**< Interface number of the CDC Data interface. */
-		} USB_Descriptor_CDC_FunctionalUnion_t;
-
 		/** Type define for the device configuration descriptor structure. This must be defined in the
 		 *  application code, as the configuration descriptor contains several sub-descriptors which
 		 *  vary between devices, and which describe the device's usage to the host.
@@ -152,9 +118,9 @@
 			
 			// CDC Control Interface
 			USB_Descriptor_Interface_t               CDC_CCI_Interface;
-			USB_Descriptor_CDC_FunctionalHeader_t    CDC_Functional_Header;
-			USB_Descriptor_CDC_FunctionalACM_t       CDC_Functional_ACM;
-			USB_Descriptor_CDC_FunctionalUnion_t     CDC_Functional_Union;
+			USB_CDC_Descriptor_FunctionalHeader_t    CDC_Functional_Header;
+			USB_CDC_Descriptor_FunctionalACM_t       CDC_Functional_ACM;
+			USB_CDC_Descriptor_FunctionalUnion_t     CDC_Functional_Union;
 			USB_Descriptor_Endpoint_t                CDC_NotificationEndpoint;
 			
 			// CDC Data Interface
-- 
GitLab