Add LUFA-111009-BETA tag.
[pub/USBasp.git] / Demos / Device / Incomplete / Sideshow / Descriptors.c
index 6860ac4..33ddfaf 100644 (file)
@@ -1,21 +1,21 @@
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2010.
-              
+     Copyright (C) Dean Camera, 2011.
+
   dean [at] fourwalledcubicle [dot] com
-      www.fourwalledcubicle.com
+           www.lufa-lib.org
 */
 
 /*
-  Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2011  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
-  Permission to use, copy, modify, distribute, and sell this 
+  Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
-  without fee, provided that the above copyright notice appear in 
+  without fee, provided that the above copyright notice appear in
   all copies and that both that the copyright notice and this
-  permission notice and warranty disclaimer appear in supporting 
-  documentation, and that the name of the author not be used in 
-  advertising or publicity pertaining to distribution of the 
+  permission notice and warranty disclaimer appear in supporting
+  documentation, and that the name of the author not be used in
+  advertising or publicity pertaining to distribution of the
   software without specific, written prior permission.
 
   The author disclaim all warranties with regard to this
 
 #include "Descriptors.h"
 
-USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
+const USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
 {
        Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},
-               
+
        USBSpecification:       VERSION_BCD(01.10),
        Class:                  0x00,
        SubClass:               0x00,
        Protocol:               0x00,
-                               
+
        Endpoint0Size:          8,
-               
+
        VendorID:               0x03EB,
        ProductID:              0x2040,
        ReleaseNumber:          VERSION_BCD(00.01),
-               
+
        ManufacturerStrIndex:   0x01,
        ProductStrIndex:        0x02,
        SerialNumStrIndex:      0x03,
-               
+
        NumberOfConfigurations: 1
 };
-       
-USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
+
+const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
 {
        .Config =
                {
@@ -60,28 +60,28 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
 
                        TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),
                        TotalInterfaces:        1,
-                               
+
                        ConfigurationNumber:    1,
                        ConfigurationStrIndex:  NO_DESCRIPTOR,
-                               
+
                        ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),
-                       
+
                        MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)
                },
-               
+
        .SSHOW_Interface =
                {
                        Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},
 
                        InterfaceNumber:        0,
                        AlternateSetting:       0,
-                       
+
                        TotalEndpoints:         2,
-                               
+
                        Class:                  0xFF,
                        SubClass:               0x00,
                        Protocol:               0x00,
-                               
+
                        InterfaceStrIndex:      NO_DESCRIPTOR
                },
 
@@ -89,7 +89,7 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},
 
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | SIDESHOW_IN_EPNUM),
+                       EndpointAddress:        (ENDPOINT_DIR_IN | SIDESHOW_IN_EPNUM),
                        Attributes:             EP_TYPE_BULK,
                        EndpointSize:           SIDESHOW_IO_EPSIZE,
                        PollingIntervalMS:      0x00
@@ -99,56 +99,56 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},
 
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | SIDESHOW_OUT_EPNUM),
+                       EndpointAddress:        (ENDPOINT_DIR_OUT | SIDESHOW_OUT_EPNUM),
                        Attributes:             EP_TYPE_BULK,
                        EndpointSize:           SIDESHOW_IO_EPSIZE,
                        PollingIntervalMS:      0x00
                }
 };
 
-USB_Descriptor_String_t PROGMEM LanguageString =
+const USB_Descriptor_String_t PROGMEM LanguageString =
 {
        Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},
-               
+
        UnicodeString:          {LANGUAGE_ID_ENG}
 };
 
-USB_Descriptor_String_t PROGMEM ManufacturerString =
+const USB_Descriptor_String_t PROGMEM ManufacturerString =
 {
        Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},
-               
+
        UnicodeString:          L"Dean Camera"
 };
 
-USB_Descriptor_String_t PROGMEM ProductString =
+const USB_Descriptor_String_t PROGMEM ProductString =
 {
        Header:                 {Size: USB_STRING_LEN(22), Type: DTYPE_String},
-               
+
        UnicodeString:          L"LUFA Sideshow Demo"
 };
 
-USB_Descriptor_String_t PROGMEM SerialNumberString =
+const USB_Descriptor_String_t PROGMEM SerialNumberString =
 {
        Header:                 {Size: USB_STRING_LEN(12), Type: DTYPE_String},
-               
+
        UnicodeString:          L"000000000000"
 };
 
-USB_OSDescriptor_t PROGMEM OSDescriptorString =
+const USB_OSDescriptor_t PROGMEM OSDescriptorString =
 {
        Header:                 {Size: sizeof(USB_OSDescriptor_t), Type: DTYPE_String},
-       
+
        Signature:              L"MSFT100",
        VendorCode:             REQ_GetOSFeatureDescriptor
 };
 
-USB_OSCompatibleIDDescriptor_t PROGMEM DevCompatIDs =
+const USB_OSCompatibleIDDescriptor_t PROGMEM DevCompatIDs =
 {
        TotalLength:            sizeof(USB_OSCompatibleIDDescriptor_t),
        Version:                0x0100,
        Index:                  EXTENDED_COMPAT_ID_DESCRIPTOR,
        TotalSections:          1,
-       
+
        SideshowCompatID:       {FirstInterfaceNumber: 0x00,
                                 CompatibleID: "SIDESHW",
                                 SubCompatibleID: "UNIV1"}
@@ -201,11 +201,11 @@ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
                                        Size    = pgm_read_byte(&OSDescriptorString.Header.Size);
                                        break;
                        }
-                       
+
                        break;
        }
-       
-       *DescriptorAddress = Address;           
+
+       *DescriptorAddress = Address;
        return Size;
 }
 
@@ -230,3 +230,4 @@ uint16_t USB_GetOSFeatureDescriptor(const uint16_t wValue,
        *DescriptorAddress = Address;
        return Size;
 }
+