Minor documentation enhancements.
[pub/USBasp.git] / Demos / Device / ClassDriver / KeyboardMouse / Descriptors.c
index 2783809..1f24116 100644 (file)
@@ -8,7 +8,6 @@
 
 /*
   Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
 /*
   Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] com)
-  Copyright 2010  Denver Gingerich (denver [at] ossguy [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
@@ -131,7 +130,7 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
                
        .VendorID               = 0x03EB,
        .ProductID              = 0x204D,
                
        .VendorID               = 0x03EB,
        .ProductID              = 0x204D,
-       .ReleaseNumber          = 0x0000,
+       .ReleaseNumber          = VERSION_BCD(00.01),
                
        .ManufacturerStrIndex   = 0x01,
        .ProductStrIndex        = 0x02,
                
        .ManufacturerStrIndex   = 0x01,
        .ProductStrIndex        = 0x02,
@@ -173,19 +172,19 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                                
                        .Class                  = 0x03,
                        .SubClass               = 0x01,
                                
                        .Class                  = 0x03,
                        .SubClass               = 0x01,
-                       .Protocol               = HID_BOOT_KEYBOARD_PROTOCOL,
+                       .Protocol               = HID_BOOTP_KeyboardBootProtocol,
                                
                        .InterfaceStrIndex      = NO_DESCRIPTOR
                },
 
        .HID1_KeyboardHID = 
                {  
                                
                        .InterfaceStrIndex      = NO_DESCRIPTOR
                },
 
        .HID1_KeyboardHID = 
                {  
-                       .Header                 = {.Size = sizeof(USB_HID_Descriptor_t), .Type = DTYPE_HID},
+                       .Header                 = {.Size = sizeof(USB_HID_Descriptor_HID_t), .Type = HID_DTYPE_HID},
                        
                        .HIDSpec                = VERSION_BCD(01.11),
                        .CountryCode            = 0x00,
                        .TotalReportDescriptors = 1,
                        
                        .HIDSpec                = VERSION_BCD(01.11),
                        .CountryCode            = 0x00,
                        .TotalReportDescriptors = 1,
-                       .HIDReportType          = DTYPE_Report,
+                       .HIDReportType          = HID_DTYPE_Report,
                        .HIDReportLength        = sizeof(KeyboardReport)
                },
                
                        .HIDReportLength        = sizeof(KeyboardReport)
                },
                
@@ -210,19 +209,19 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                                
                        .Class                  = 0x03,
                        .SubClass               = 0x01,
                                
                        .Class                  = 0x03,
                        .SubClass               = 0x01,
-                       .Protocol               = HID_BOOT_MOUSE_PROTOCOL,
+                       .Protocol               = HID_BOOTP_MouseBootProtocol,
                                
                        .InterfaceStrIndex      = NO_DESCRIPTOR
                },
 
        .HID2_MouseHID = 
                {  
                                
                        .InterfaceStrIndex      = NO_DESCRIPTOR
                },
 
        .HID2_MouseHID = 
                {  
-                       .Header                 = {.Size = sizeof(USB_HID_Descriptor_t), .Type = DTYPE_HID},
+                       .Header                 = {.Size = sizeof(USB_HID_Descriptor_HID_t), .Type = HID_DTYPE_HID},
                        
                        .HIDSpec                = VERSION_BCD(01.11),
                        .CountryCode            = 0x00,
                        .TotalReportDescriptors = 1,
                        
                        .HIDSpec                = VERSION_BCD(01.11),
                        .CountryCode            = 0x00,
                        .TotalReportDescriptors = 1,
-                       .HIDReportType          = DTYPE_Report,
+                       .HIDReportType          = HID_DTYPE_Report,
                        .HIDReportLength        = sizeof(MouseReport)
                },
                
                        .HIDReportLength        = sizeof(MouseReport)
                },
                
@@ -276,63 +275,65 @@ USB_Descriptor_String_t PROGMEM ProductString =
  *  is called so that the descriptor details can be passed back and the appropriate descriptor sent back to the
  *  USB host.
  */
  *  is called so that the descriptor details can be passed back and the appropriate descriptor sent back to the
  *  USB host.
  */
-uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress)
+uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
+                                    const uint8_t wIndex,
+                                    const void** const DescriptorAddress)
 {
        const uint8_t  DescriptorType   = (wValue >> 8);
        const uint8_t  DescriptorNumber = (wValue & 0xFF);
 
 {
        const uint8_t  DescriptorType   = (wValue >> 8);
        const uint8_t  DescriptorNumber = (wValue & 0xFF);
 
-       void*    Address = NULL;
-       uint16_t Size    = NO_DESCRIPTOR;
+       const void* Address = NULL;
+       uint16_t    Size    = NO_DESCRIPTOR;
 
        switch (DescriptorType)
        {
                case DTYPE_Device: 
 
        switch (DescriptorType)
        {
                case DTYPE_Device: 
-                       Address = (void*)&DeviceDescriptor;
+                       Address = &DeviceDescriptor;
                        Size    = sizeof(USB_Descriptor_Device_t);
                        break;
                case DTYPE_Configuration: 
                        Size    = sizeof(USB_Descriptor_Device_t);
                        break;
                case DTYPE_Configuration: 
-                       Address = (void*)&ConfigurationDescriptor;
+                       Address = &ConfigurationDescriptor;
                        Size    = sizeof(USB_Descriptor_Configuration_t);
                        break;
                case DTYPE_String: 
                        switch (DescriptorNumber)
                        {
                                case 0x00: 
                        Size    = sizeof(USB_Descriptor_Configuration_t);
                        break;
                case DTYPE_String: 
                        switch (DescriptorNumber)
                        {
                                case 0x00: 
-                                       Address = (void*)&LanguageString;
+                                       Address = &LanguageString;
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);
                                        break;
                                case 0x01: 
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);
                                        break;
                                case 0x01: 
-                                       Address = (void*)&ManufacturerString;
+                                       Address = &ManufacturerString;
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);
                                        break;
                                case 0x02: 
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);
                                        break;
                                case 0x02: 
-                                       Address = (void*)&ProductString;
+                                       Address = &ProductString;
                                        Size    = pgm_read_byte(&ProductString.Header.Size);
                                        break;
                        }
                        
                        break;
                                        Size    = pgm_read_byte(&ProductString.Header.Size);
                                        break;
                        }
                        
                        break;
-               case DTYPE_HID: 
+               case HID_DTYPE_HID: 
                        if (!(wIndex))
                        {
                        if (!(wIndex))
                        {
-                               Address = (void*)&ConfigurationDescriptor.HID1_KeyboardHID;
-                               Size    = sizeof(USB_HID_Descriptor_t);
+                               Address = &ConfigurationDescriptor.HID1_KeyboardHID;
+                               Size    = sizeof(USB_HID_Descriptor_HID_t);
                        }
                        else
                        {
                        }
                        else
                        {
-                               Address = (void*)&ConfigurationDescriptor.HID2_MouseHID;
-                               Size    = sizeof(USB_HID_Descriptor_t);                 
+                               Address = &ConfigurationDescriptor.HID2_MouseHID;
+                               Size    = sizeof(USB_HID_Descriptor_HID_t);                     
                        }
                        break;
                        }
                        break;
-               case DTYPE_Report: 
+               case HID_DTYPE_Report: 
                        if (!(wIndex))
                        {
                        if (!(wIndex))
                        {
-                               Address = (void*)&KeyboardReport;
+                               Address = &KeyboardReport;
                                Size    = sizeof(KeyboardReport);
                        }
                        else
                        {                       
                                Size    = sizeof(KeyboardReport);
                        }
                        else
                        {                       
-                               Address = (void*)&MouseReport;
+                               Address = &MouseReport;
                                Size    = sizeof(MouseReport);
                        }
                        
                                Size    = sizeof(MouseReport);
                        }