Changed over all deprecated GCC structure tag initializers to the standardized C99...
authorDean Camera <dean@fourwalledcubicle.com>
Mon, 20 Apr 2009 11:21:36 +0000 (11:21 +0000)
committerDean Camera <dean@fourwalledcubicle.com>
Mon, 20 Apr 2009 11:21:36 +0000 (11:21 +0000)
55 files changed:
Bootloaders/CDC/BootloaderCDC.c
Bootloaders/CDC/Descriptors.c
Bootloaders/DFU/BootloaderDFU.c
Bootloaders/DFU/Descriptors.c
Bootloaders/TeensyHID/Descriptors.c
Demos/Device/AudioInput/AudioInput.c
Demos/Device/AudioInput/Descriptors.c
Demos/Device/AudioOutput/AudioOutput.c
Demos/Device/AudioOutput/Descriptors.c
Demos/Device/CDC/CDC.c
Demos/Device/CDC/Descriptors.c
Demos/Device/DualCDC/Descriptors.c
Demos/Device/DualCDC/DualCDC.c
Demos/Device/GenericHID/Descriptors.c
Demos/Device/GenericHID/GenericHID.c
Demos/Device/Joystick/Descriptors.c
Demos/Device/Joystick/Joystick.c
Demos/Device/Keyboard/Descriptors.c
Demos/Device/Keyboard/Keyboard.c
Demos/Device/KeyboardMouse/Descriptors.c
Demos/Device/KeyboardMouse/KeyboardMouse.c
Demos/Device/MIDI/Descriptors.c
Demos/Device/MIDI/MIDI.c
Demos/Device/MassStorage/Descriptors.c
Demos/Device/MassStorage/MassStorage.c
Demos/Device/MassStorage/SCSI.c
Demos/Device/Mouse/Descriptors.c
Demos/Device/Mouse/Mouse.c
Demos/Device/RNDISEthernet/Descriptors.c
Demos/Device/RNDISEthernet/RNDISEthernet.c
Demos/Device/USBtoSerial/Descriptors.c
Demos/Device/USBtoSerial/USBtoSerial.c
Demos/Host/CDCHost/CDCHost.c
Demos/Host/GenericHIDHost/GenericHIDHost.c
Demos/Host/KeyboardHost/KeyboardHost.c
Demos/Host/KeyboardHostWithParser/HIDReport.c
Demos/Host/KeyboardHostWithParser/KeyboardHostWithParser.c
Demos/Host/MassStorageHost/MassStorageHost.c
Demos/Host/MassStorageHost/MassStoreCommands.c
Demos/Host/MouseHost/MouseHost.c
Demos/Host/MouseHostWithParser/HIDReport.c
Demos/Host/MouseHostWithParser/MouseHostWithParser.c
Demos/Host/StillImageHost/StillImageCommands.c
Demos/Host/StillImageHost/StillImageHost.c
Demos/OTG/TestApp/Descriptors.c
Demos/OTG/TestApp/TestApp.c
LUFA/ChangeLog.txt
LUFA/Drivers/USB/Class/ConfigDescriptor.c
LUFA/Drivers/USB/HighLevel/USBTask.c
LUFA/Drivers/USB/LowLevel/Pipe.h
LUFA/MemoryAllocator/DynAlloc.c
LUFA/MigrationInformation.txt
LUFA/Scheduler/Scheduler.h
Projects/Magstripe/Descriptors.c
Projects/Magstripe/Magstripe.c

index cb2672c..9cdb776 100644 (file)
  *  current encoding options, including baud rate, character format, parity mode and total number of \r
  *  bits in each data chunk.\r
  */\r
  *  current encoding options, including baud rate, character format, parity mode and total number of \r
  *  bits in each data chunk.\r
  */\r
-CDC_Line_Coding_t LineCoding = { BaudRateBPS: 9600,\r
-                                 CharFormat:  OneStopBit,\r
-                                 ParityType:  Parity_None,\r
-                                 DataBits:    8            };\r
+CDC_Line_Coding_t LineCoding = { .BaudRateBPS = 9600,\r
+                                 .CharFormat  = OneStopBit,\r
+                                 .ParityType  = Parity_None,\r
+                                 .DataBits    = 8            };\r
 \r
 /** Current address counter. This stores the current address of the FLASH or EEPROM as set by the host,\r
  *  and is used when reading or writing to the AVRs memory (either FLASH or EEPROM depending on the issued\r
 \r
 /** Current address counter. This stores the current address of the FLASH or EEPROM as set by the host,\r
  *  and is used when reading or writing to the AVRs memory (either FLASH or EEPROM depending on the issued\r
index bfa66a7..e9787cf 100644 (file)
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x02,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x02,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          FIXED_CONTROL_ENDPOINT_SIZE,\r
+       .Endpoint0Size          = FIXED_CONTROL_ENDPOINT_SIZE,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x204A,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x204A,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   NO_DESCRIPTOR,\r
-       ProductStrIndex:        0x01,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = NO_DESCRIPTOR,\r
+       .ProductStrIndex        = 0x01,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in SRAM memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in SRAM memory, describes the usage\r
@@ -71,113 +71,113 @@ USB_Descriptor_Device_t DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        2,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 2,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       CCI_Interface:\r
+       .CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_IntHeader:\r
+       .CDC_Functional_IntHeader = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x10, 0x01}\r
+                       .Data                   = {0x10, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_CallManagement:\r
+       .CDC_Functional_CallManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x03, 0x01}\r
+                       .Data                   = {0x03, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_AbstractControlManagement:\r
+       .CDC_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x06}\r
+                       .Data                   = {0x06}\r
                },\r
                \r
                },\r
                \r
-       CDC_Functional_Union:\r
+       .CDC_Functional_Union = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x01}\r
+                       .Data                   = {0x00, 0x01}\r
                },      \r
 \r
                },      \r
 \r
-       ManagementEndpoint:\r
+       .ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                },\r
 \r
                },\r
 \r
-       DCI_Interface:\r
+       .DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       DataOutEndpoint:\r
+       .DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       DataInEndpoint:\r
+       .DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -187,9 +187,9 @@ USB_Descriptor_Configuration_t ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -198,9 +198,9 @@ USB_Descriptor_String_t LanguageString =
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(15), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(15), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"AVR CDC Bootloader"\r
+       .UnicodeString          = L"AVR CDC Bootloader"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
index f358016..00c1ea5 100644 (file)
@@ -225,7 +225,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
                                                {\r
                                                        uint16_t Words[2];\r
                                                        uint32_t Long;\r
                                                {\r
                                                        uint16_t Words[2];\r
                                                        uint32_t Long;\r
-                                               } CurrFlashAddress                 = {Words: {StartAddr, Flash64KBPage}};\r
+                                               } CurrFlashAddress                 = {.Words = {StartAddr, Flash64KBPage}};\r
                                                \r
                                                uint32_t CurrFlashPageStartAddress = CurrFlashAddress.Long;\r
                                                uint8_t  WordsInFlashPage          = 0;\r
                                                \r
                                                uint32_t CurrFlashPageStartAddress = CurrFlashAddress.Long;\r
                                                uint8_t  WordsInFlashPage          = 0;\r
@@ -336,7 +336,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
                                        {\r
                                                uint16_t Words[2];\r
                                                uint32_t Long;\r
                                        {\r
                                                uint16_t Words[2];\r
                                                uint32_t Long;\r
-                                       } CurrFlashAddress = {Words: {StartAddr, Flash64KBPage}};\r
+                                       } CurrFlashAddress = {.Words = {StartAddr, Flash64KBPage}};\r
 \r
                                        while (WordsRemaining--)\r
                                        {\r
 \r
                                        while (WordsRemaining--)\r
                                        {\r
@@ -531,8 +531,8 @@ static void LoadStartEndAddresses(void)
        {\r
                uint8_t  Bytes[2];\r
                uint16_t Word;\r
        {\r
                uint8_t  Bytes[2];\r
                uint16_t Word;\r
-       } Address[2] = {{Bytes: {SentCommand.Data[2], SentCommand.Data[1]}},\r
-                       {Bytes: {SentCommand.Data[4], SentCommand.Data[3]}}};\r
+       } Address[2] = {{.Bytes = {SentCommand.Data[2], SentCommand.Data[1]}},\r
+                       {.Bytes = {SentCommand.Data[4], SentCommand.Data[3]}}};\r
                \r
        /* Load in the start and ending read addresses from the sent data packet */\r
        StartAddr = Address[0].Word;\r
                \r
        /* Load in the start and ending read addresses from the sent data packet */\r
        StartAddr = Address[0].Word;\r
@@ -557,7 +557,7 @@ static void ProcessMemProgCommand(void)
                        {\r
                                uint16_t Words[2];\r
                                uint32_t Long;\r
                        {\r
                                uint16_t Words[2];\r
                                uint32_t Long;\r
-                       } CurrFlashAddress = {Words: {StartAddr, Flash64KBPage}};\r
+                       } CurrFlashAddress = {.Words = {StartAddr, Flash64KBPage}};\r
                        \r
                        /* Erase the current page's temp buffer */\r
                        boot_page_erase(CurrFlashAddress.Long);\r
                        \r
                        /* Erase the current page's temp buffer */\r
                        boot_page_erase(CurrFlashAddress.Long);\r
@@ -639,7 +639,7 @@ static void ProcessWriteCommand(void)
                                {\r
                                        uint8_t  Bytes[2];\r
                                        AppPtr_t FuncPtr;\r
                                {\r
                                        uint8_t  Bytes[2];\r
                                        AppPtr_t FuncPtr;\r
-                               } Address = {Bytes: {SentCommand.Data[4], SentCommand.Data[3]}};\r
+                               } Address = {.Bytes = {SentCommand.Data[4], SentCommand.Data[3]}};\r
 \r
                                AppStartPtr = Address.FuncPtr;\r
                                \r
 \r
                                AppStartPtr = Address.FuncPtr;\r
                                \r
index 1313118..3e8978a 100644 (file)
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          FIXED_CONTROL_ENDPOINT_SIZE,\r
+       .Endpoint0Size          = FIXED_CONTROL_ENDPOINT_SIZE,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              PRODUCT_ID_CODE,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = PRODUCT_ID_CODE,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   NO_DESCRIPTOR,\r
-       ProductStrIndex:        0x01,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = NO_DESCRIPTOR,\r
+       .ProductStrIndex        = 0x01,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,47 +71,47 @@ USB_Descriptor_Device_t DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize:   sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:          1,\r
+                       .TotalConfigurationSize   = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces          = 1,\r
 \r
 \r
-                       ConfigurationNumber:      1,\r
-                       ConfigurationStrIndex:    NO_DESCRIPTOR,\r
+                       .ConfigurationNumber      = 1,\r
+                       .ConfigurationStrIndex    = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:         (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes         = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:      USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption      = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       DFUInterface:\r
+       .DFUInterface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         0,\r
+                       .TotalEndpoints         = 0,\r
                                \r
                                \r
-                       Class:                  0xFE,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x02,\r
+                       .Class                  = 0xFE,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x02,\r
 \r
 \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
                \r
                },\r
                \r
-       DFUFunctional:\r
+       .DFUFunctional = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_DFU_Functional_Descriptor_t), Type: DTYPE_DFUFunctional},\r
+                       .Header                 = {.Size = sizeof(USB_DFU_Functional_Descriptor_t), .Type = DTYPE_DFUFunctional},\r
                        \r
                        \r
-                       Attributes:             (ATTR_CAN_UPLOAD | ATTR_CAN_DOWNLOAD),\r
+                       .Attributes             = (ATTR_CAN_UPLOAD | ATTR_CAN_DOWNLOAD),\r
 \r
 \r
-                       DetatchTimeout:         0x0000,\r
-                       TransferSize:           0x0c00,\r
+                       .DetatchTimeout         = 0x0000,\r
+                       .TransferSize           = 0x0c00,\r
                \r
                \r
-                       DFUSpecification:       VERSION_BCD(01.01)\r
+                       .DFUSpecification       = VERSION_BCD(01.01)\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -121,9 +121,9 @@ USB_Descriptor_Configuration_t ConfigurationDescriptor =
  */ \r
 USB_Descriptor_String_t LanguageString =\r
 {\r
  */ \r
 USB_Descriptor_String_t LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -132,9 +132,9 @@ USB_Descriptor_String_t LanguageString =
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(18), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"AVR DFU Bootloader"\r
+       .UnicodeString          = L"AVR DFU Bootloader"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -157,11 +157,11 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        if (!(DescriptorNumber))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                        if (!(DescriptorNumber))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(LanguageString);\r
index d17f4cf..68b9c43 100644 (file)
@@ -64,24 +64,24 @@ USB_Descriptor_HIDReport_Datatype_t HIDReport[] =
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x16C0,\r
-       ProductID:              0x0478,\r
-       ReleaseNumber:          0x0010,\r
+       .VendorID               = 0x16C0,\r
+       .ProductID              = 0x0478,\r
+       .ReleaseNumber          = 0x0010,\r
                \r
                \r
-       ManufacturerStrIndex:   NO_DESCRIPTOR,\r
-       ProductStrIndex:        0x01,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = NO_DESCRIPTOR,\r
+       .ProductStrIndex        = 0x01,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -91,56 +91,56 @@ USB_Descriptor_Device_t DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       HIDDescriptor:\r
+       .HIDDescriptor = \r
                {  \r
                {  \r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                        \r
                        \r
-                       HIDSpec:                VERSION_BCD(01.11),\r
-                       CountryCode:            0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:          DTYPE_Report,\r
-                       HIDReportLength:        sizeof(HIDReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(HIDReport)\r
                },\r
                \r
                },\r
                \r
-       HIDEndpoint:\r
+       .HIDEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | HID_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           HID_EPSIZE,\r
-                       PollingIntervalMS:      0x40\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | HID_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = HID_EPSIZE,\r
+                       .PollingIntervalMS      = 0x40\r
                },\r
 };\r
 \r
                },\r
 };\r
 \r
@@ -150,9 +150,9 @@ USB_Descriptor_Configuration_t ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -161,9 +161,9 @@ USB_Descriptor_String_t LanguageString =
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(21), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(21), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"AVR Teensy Bootloader"\r
+       .UnicodeString          = L"AVR Teensy Bootloader"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
index c016694..ade3aa5 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Audio_Task       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Audio_Task       , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
index 95b2906..eb9b32a 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(02.00),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(02.00),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2047,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2047,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,164 +71,164 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize:   sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:          2,\r
+                       .TotalConfigurationSize   = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces          = 2,\r
 \r
 \r
-                       ConfigurationNumber:      1,\r
-                       ConfigurationStrIndex:    NO_DESCRIPTOR,\r
+                       .ConfigurationNumber      = 1,\r
+                       .ConfigurationStrIndex    = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:         (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes         = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:      USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption      = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       AudioControlInterface:\r
+       .AudioControlInterface = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          0,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 0,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           0,\r
+                       .TotalEndpoints           = 0,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x01,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x01,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR                 \r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR                       \r
                },\r
        \r
                },\r
        \r
-       AudioControlInterface_SPC:\r
+       .AudioControlInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_AC_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_Header,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_AC_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_Header,\r
                        \r
                        \r
-                       ACSpecification:          VERSION_BCD(01.00),\r
-                       TotalLength:              (sizeof(USB_AudioInterface_AC_t) +\r
-                                                  sizeof(USB_AudioInputTerminal_t) +\r
-                                                                          sizeof(USB_AudioOutputTerminal_t)),\r
+                       .ACSpecification          = VERSION_BCD(01.00),\r
+                       .TotalLength              = (sizeof(USB_AudioInterface_AC_t) +\r
+                                                    sizeof(USB_AudioInputTerminal_t) +\r
+                                                                            sizeof(USB_AudioOutputTerminal_t)),\r
                        \r
                        \r
-                       InCollection:             1,\r
-                       InterfaceNumbers:         {1},                  \r
+                       .InCollection             = 1,\r
+                       .InterfaceNumbers         = {1},                        \r
                },\r
 \r
                },\r
 \r
-       InputTerminal:\r
+       .InputTerminal = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInputTerminal_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_InputTerminal,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInputTerminal_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_InputTerminal,\r
                \r
                \r
-                       TerminalID:               0x01,\r
-                       TerminalType:             TERMINAL_IN_MIC,\r
-                       AssociatedOutputTerminal: 0x00,\r
+                       .TerminalID               = 0x01,\r
+                       .TerminalType             = TERMINAL_IN_MIC,\r
+                       .AssociatedOutputTerminal = 0x00,\r
                        \r
                        \r
-                       TotalChannels:            1,\r
-                       ChannelConfig:            0,\r
+                       .TotalChannels            = 1,\r
+                       .ChannelConfig            = 0,\r
                        \r
                        \r
-                       ChannelStrIndex:          NO_DESCRIPTOR,\r
-                       TerminalStrIndex:         NO_DESCRIPTOR\r
+                       .ChannelStrIndex          = NO_DESCRIPTOR,\r
+                       .TerminalStrIndex         = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       OutputTerminal:\r
+       .OutputTerminal = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioOutputTerminal_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_OutputTerminal,\r
+                       .Header                   = {.Size = sizeof(USB_AudioOutputTerminal_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_OutputTerminal,\r
                \r
                \r
-                       TerminalID:               0x02,\r
-                       TerminalType:             TERMINAL_STREAMING,\r
-                       AssociatedInputTerminal:  0x00,\r
+                       .TerminalID               = 0x02,\r
+                       .TerminalType             = TERMINAL_STREAMING,\r
+                       .AssociatedInputTerminal  = 0x00,\r
                        \r
                        \r
-                       SourceID:                 0x01,\r
+                       .SourceID                 = 0x01,\r
                        \r
                        \r
-                       TerminalStrIndex:         NO_DESCRIPTOR                 \r
+                       .TerminalStrIndex         = NO_DESCRIPTOR                       \r
                },\r
 \r
                },\r
 \r
-       AudioStreamInterface_Alt0:\r
+       .AudioStreamInterface_Alt0 = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          1,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 1,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           0,\r
+                       .TotalEndpoints           = 0,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x02,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x02,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR\r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       AudioStreamInterface_Alt1:\r
+       .AudioStreamInterface_Alt1 = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          1,\r
-                       AlternateSetting:         1,\r
+                       .InterfaceNumber          = 1,\r
+                       .AlternateSetting         = 1,\r
                        \r
                        \r
-                       TotalEndpoints:           1,\r
+                       .TotalEndpoints           = 1,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x02,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x02,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR\r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR\r
                },\r
                \r
                },\r
                \r
-       AudioStreamInterface_SPC:\r
+       .AudioStreamInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_AS_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_AS_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_General,\r
                        \r
                        \r
-                       TerminalLink:             0x02,\r
+                       .TerminalLink             = 0x02,\r
                        \r
                        \r
-                       FrameDelay:               1,\r
-                       AudioFormat:              0x0001\r
+                       .FrameDelay               = 1,\r
+                       .AudioFormat              = 0x0001\r
                },\r
                \r
                },\r
                \r
-       AudioFormat:\r
+       .AudioFormat = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioFormat_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_Format,\r
+                       .Header                   = {.Size = sizeof(USB_AudioFormat_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_Format,\r
 \r
 \r
-                       FormatType:               0x01,\r
-                       Channels:                 0x01,\r
+                       .FormatType               = 0x01,\r
+                       .Channels                 = 0x01,\r
                        \r
                        \r
-                       SubFrameSize:             0x02,\r
-                       BitResolution:            16,\r
-                       SampleFrequencyType:      (sizeof(ConfigurationDescriptor.AudioFormat.SampleFrequencies) / sizeof(AudioSampleFreq_t)),\r
+                       .SubFrameSize             = 0x02,\r
+                       .BitResolution            = 16,\r
+                       .SampleFrequencyType      = (sizeof(ConfigurationDescriptor.AudioFormat.SampleFrequencies) / sizeof(AudioSampleFreq_t)),\r
                \r
                \r
-                       SampleFrequencies:        {SAMPLE_FREQ(AUDIO_SAMPLE_FREQUENCY)}\r
+                       .SampleFrequencies        = {SAMPLE_FREQ(AUDIO_SAMPLE_FREQUENCY)}\r
                },\r
        \r
                },\r
        \r
-       AudioEndpoint:\r
+       .AudioEndpoint = \r
                {\r
                {\r
-                       Endpoint:\r
+                       .Endpoint = \r
                                {\r
                                {\r
-                                       Header:              {Size: sizeof(USB_AudioStreamEndpoint_Std_t), Type: DTYPE_Endpoint},\r
+                                       .Header              = {.Size = sizeof(USB_AudioStreamEndpoint_Std_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                                       EndpointAddress:     (ENDPOINT_DESCRIPTOR_DIR_IN | AUDIO_STREAM_EPNUM),\r
-                                       Attributes:          (EP_TYPE_ISOCHRONOUS | ENDPOINT_ATTR_SYNC | ENDPOINT_USAGE_DATA),\r
-                                       EndpointSize:        AUDIO_STREAM_EPSIZE,\r
-                                       PollingIntervalMS:   1\r
+                                       .EndpointAddress     = (ENDPOINT_DESCRIPTOR_DIR_IN | AUDIO_STREAM_EPNUM),\r
+                                       .Attributes          = (EP_TYPE_ISOCHRONOUS | ENDPOINT_ATTR_SYNC | ENDPOINT_USAGE_DATA),\r
+                                       .EndpointSize        = AUDIO_STREAM_EPSIZE,\r
+                                       .PollingIntervalMS   = 1\r
                                },\r
                        \r
                                },\r
                        \r
-                       Refresh:                  0,\r
-                       SyncEndpointNumber:       0\r
+                       .Refresh                  = 0,\r
+                       .SyncEndpointNumber       = 0\r
                },\r
                \r
                },\r
                \r
-       AudioEndpoint_SPC:\r
+       .AudioEndpoint_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioStreamEndpoint_Spc_t), Type: DTYPE_AudioEndpoint},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_AudioStreamEndpoint_Spc_t), .Type = DTYPE_AudioEndpoint},\r
+                       .Subtype                  = DSUBTYPE_General,\r
                        \r
                        \r
-                       Attributes:               0x00,\r
+                       .Attributes               = 0x00,\r
                        \r
                        \r
-                       LockDelayUnits:           0x00,\r
-                       LockDelay:                0x0000\r
+                       .LockDelayUnits           = 0x00,\r
+                       .LockDelay                = 0x0000\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -238,9 +238,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -249,9 +249,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -260,9 +260,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(18), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Audio In Demo"\r
+       .UnicodeString          = L"LUFA Audio In Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -285,22 +285,22 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index fcd8812..aae0168 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Audio_Task       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Audio_Task       , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
index 30af5e8..99b6802 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(02.00),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(02.00),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2046,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2046,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,164 +71,164 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize:   sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:          2,\r
+                       .TotalConfigurationSize   = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces          = 2,\r
 \r
 \r
-                       ConfigurationNumber:      1,\r
-                       ConfigurationStrIndex:    NO_DESCRIPTOR,\r
+                       .ConfigurationNumber      = 1,\r
+                       .ConfigurationStrIndex    = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:         (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes         = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:      USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption      = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       AudioControlInterface:\r
+       .AudioControlInterface = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          0,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 0,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           0,\r
+                       .TotalEndpoints           = 0,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x01,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x01,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR                 \r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR                       \r
                },\r
        \r
                },\r
        \r
-       AudioControlInterface_SPC:\r
+       .AudioControlInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_AC_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_Header,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_AC_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_Header,\r
                        \r
                        \r
-                       ACSpecification:          VERSION_BCD(01.00),\r
-                       TotalLength:              (sizeof(USB_AudioInterface_AC_t) +\r
+                       .ACSpecification          = VERSION_BCD(01.00),\r
+                       .TotalLength              = (sizeof(USB_AudioInterface_AC_t) +\r
                                                   sizeof(USB_AudioInputTerminal_t) +\r
                                                                           sizeof(USB_AudioOutputTerminal_t)),\r
                        \r
                                                   sizeof(USB_AudioInputTerminal_t) +\r
                                                                           sizeof(USB_AudioOutputTerminal_t)),\r
                        \r
-                       InCollection:             1,\r
-                       InterfaceNumbers:         {1},                  \r
+                       .InCollection             = 1,\r
+                       .InterfaceNumbers         = {1},                        \r
                },\r
 \r
                },\r
 \r
-       InputTerminal:\r
+       .InputTerminal = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInputTerminal_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_InputTerminal,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInputTerminal_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_InputTerminal,\r
                \r
                \r
-                       TerminalID:               0x01,\r
-                       TerminalType:             TERMINAL_STREAMING,\r
-                       AssociatedOutputTerminal: 0x00,\r
+                       .TerminalID               = 0x01,\r
+                       .TerminalType             = TERMINAL_STREAMING,\r
+                       .AssociatedOutputTerminal = 0x00,\r
                        \r
                        \r
-                       TotalChannels:            2,\r
-                       ChannelConfig:            (CHANNEL_LEFT_FRONT | CHANNEL_RIGHT_FRONT),\r
+                       .TotalChannels            = 2,\r
+                       .ChannelConfig            = (CHANNEL_LEFT_FRONT | CHANNEL_RIGHT_FRONT),\r
                        \r
                        \r
-                       ChannelStrIndex:          NO_DESCRIPTOR,\r
-                       TerminalStrIndex:         NO_DESCRIPTOR\r
+                       .ChannelStrIndex          = NO_DESCRIPTOR,\r
+                       .TerminalStrIndex         = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       OutputTerminal:\r
+       .OutputTerminal = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioOutputTerminal_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_OutputTerminal,\r
+                       .Header                   = {.Size = sizeof(USB_AudioOutputTerminal_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_OutputTerminal,\r
                \r
                \r
-                       TerminalID:               0x02,\r
-                       TerminalType:             TERMINAL_OUT_SPEAKER,\r
-                       AssociatedInputTerminal:  0x00,\r
+                       .TerminalID               = 0x02,\r
+                       .TerminalType             = TERMINAL_OUT_SPEAKER,\r
+                       .AssociatedInputTerminal  = 0x00,\r
                        \r
                        \r
-                       SourceID:                 0x01,\r
+                       .SourceID                 = 0x01,\r
                        \r
                        \r
-                       TerminalStrIndex:         NO_DESCRIPTOR                 \r
+                       .TerminalStrIndex         = NO_DESCRIPTOR                       \r
                },\r
 \r
                },\r
 \r
-       AudioStreamInterface_Alt0:\r
+       .AudioStreamInterface_Alt0 = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          1,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 1,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           0,\r
+                       .TotalEndpoints           = 0,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x02,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x02,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR\r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       AudioStreamInterface_Alt1:\r
+       .AudioStreamInterface_Alt1 = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          1,\r
-                       AlternateSetting:         1,\r
+                       .InterfaceNumber          = 1,\r
+                       .AlternateSetting         = 1,\r
                        \r
                        \r
-                       TotalEndpoints:           1,\r
+                       .TotalEndpoints           = 1,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x02,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x02,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR\r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR\r
                },\r
                \r
                },\r
                \r
-       AudioStreamInterface_SPC:\r
+       .AudioStreamInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_AS_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_AS_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_General,\r
                        \r
                        \r
-                       TerminalLink:             0x01,\r
+                       .TerminalLink             = 0x01,\r
                        \r
                        \r
-                       FrameDelay:               1,\r
-                       AudioFormat:              0x0001\r
+                       .FrameDelay               = 1,\r
+                       .AudioFormat              = 0x0001\r
                },\r
                \r
                },\r
                \r
-       AudioFormat:\r
+       .AudioFormat = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioFormat_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_Format,\r
+                       .Header                   = {.Size = sizeof(USB_AudioFormat_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_Format,\r
 \r
 \r
-                       FormatType:               0x01,\r
-                       Channels:                 0x02,\r
+                       .FormatType               = 0x01,\r
+                       .Channels                 = 0x02,\r
                        \r
                        \r
-                       SubFrameSize:             0x02,\r
-                       BitResolution:            16,\r
+                       .SubFrameSize             = 0x02,\r
+                       .BitResolution            = 16,\r
 \r
 \r
-                       SampleFrequencyType:      (sizeof(ConfigurationDescriptor.AudioFormat.SampleFrequencies) / sizeof(AudioSampleFreq_t)),          \r
-                       SampleFrequencies:        {SAMPLE_FREQ(AUDIO_SAMPLE_FREQUENCY)}\r
+                       .SampleFrequencyType      = (sizeof(ConfigurationDescriptor.AudioFormat.SampleFrequencies) / sizeof(AudioSampleFreq_t)),                \r
+                       .SampleFrequencies        = {SAMPLE_FREQ(AUDIO_SAMPLE_FREQUENCY)}\r
                },\r
        \r
                },\r
        \r
-       AudioEndpoint:\r
+       .AudioEndpoint = \r
                {\r
                {\r
-                       Endpoint:\r
+                       .Endpoint = \r
                                {\r
                                {\r
-                                       Header:              {Size: sizeof(USB_AudioStreamEndpoint_Std_t), Type: DTYPE_Endpoint},\r
+                                       .Header              = {.Size = sizeof(USB_AudioStreamEndpoint_Std_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                                       EndpointAddress:     (ENDPOINT_DESCRIPTOR_DIR_OUT | AUDIO_STREAM_EPNUM),\r
-                                       Attributes:          (EP_TYPE_ISOCHRONOUS | ENDPOINT_ATTR_SYNC | ENDPOINT_USAGE_DATA),\r
-                                       EndpointSize:        AUDIO_STREAM_EPSIZE,\r
-                                       PollingIntervalMS:   1\r
+                                       .EndpointAddress     = (ENDPOINT_DESCRIPTOR_DIR_OUT | AUDIO_STREAM_EPNUM),\r
+                                       .Attributes          = (EP_TYPE_ISOCHRONOUS | ENDPOINT_ATTR_SYNC | ENDPOINT_USAGE_DATA),\r
+                                       .EndpointSize        = AUDIO_STREAM_EPSIZE,\r
+                                       .PollingIntervalMS   = 1\r
                                },\r
                        \r
                                },\r
                        \r
-                       Refresh:                  0,\r
-                       SyncEndpointNumber:       0\r
+                       .Refresh                  = 0,\r
+                       .SyncEndpointNumber       = 0\r
                },\r
                \r
                },\r
                \r
-       AudioEndpoint_SPC:\r
+       .AudioEndpoint_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioStreamEndpoint_Spc_t), Type: DTYPE_AudioEndpoint},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_AudioStreamEndpoint_Spc_t), .Type = DTYPE_AudioEndpoint},\r
+                       .Subtype                  = DSUBTYPE_General,\r
                        \r
                        \r
-                       Attributes:               EP_ACCEPTS_SMALL_PACKETS,\r
+                       .Attributes               = EP_ACCEPTS_SMALL_PACKETS,\r
                        \r
                        \r
-                       LockDelayUnits:           0x00,\r
-                       LockDelay:                0x0000\r
+                       .LockDelayUnits           = 0x00,\r
+                       .LockDelay                = 0x0000\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -238,9 +238,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -249,9 +249,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -260,9 +260,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(19), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(19), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Audio Out Demo"\r
+       .UnicodeString          = L"LUFA Audio Out Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -289,18 +289,18 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                                case 0x00:\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                        switch (DescriptorNumber)\r
                        {\r
                                case 0x00:\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index 29bc003..4c51fc6 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: CDC_Task             , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = CDC_Task             , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Globals: */\r
 };\r
 \r
 /* Globals: */\r
@@ -52,10 +52,10 @@ TASK_LIST
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
-CDC_Line_Coding_t LineCoding = { BaudRateBPS: 9600,\r
-                                 CharFormat:  OneStopBit,\r
-                                 ParityType:  Parity_None,\r
-                                 DataBits:    8            };\r
+CDC_Line_Coding_t LineCoding = { .BaudRateBPS = 9600,\r
+                                 .CharFormat  = OneStopBit,\r
+                                 .ParityType  = Parity_None,\r
+                                 .DataBits    = 8            };\r
 \r
 /** String to print through the virtual serial port when the joystick is pressed upwards. */\r
 char JoystickUpString[]      = "Joystick Up\r\n";\r
 \r
 /** String to print through the virtual serial port when the joystick is pressed upwards. */\r
 char JoystickUpString[]      = "Joystick Up\r\n";\r
@@ -256,11 +256,11 @@ TASK(CDC_Task)
        */\r
        USB_Notification_Header_t Notification = (USB_Notification_Header_t)\r
                {\r
        */\r
        USB_Notification_Header_t Notification = (USB_Notification_Header_t)\r
                {\r
-                       NotificationType: (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                       Notification:     NOTIF_SerialState,\r
-                       wValue:           0,\r
-                       wIndex:           0,\r
-                       wLength:          sizeof(uint16_t),\r
+                       .NotificationType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                       .Notification     = NOTIF_SerialState,\r
+                       .wValue           = 0,\r
+                       .wIndex           = 0,\r
+                       .wLength          = sizeof(uint16_t),\r
                };\r
                \r
        uint16_t LineStateMask;\r
                };\r
                \r
        uint16_t LineStateMask;\r
index 869dc5d..41b6e4d 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x02,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x02,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2044,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2044,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,113 +71,113 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        2,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 2,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       CCI_Interface:\r
+       .CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_IntHeader:\r
+       .CDC_Functional_IntHeader = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x01, 0x10}\r
+                       .Data                   = {0x01, 0x10}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_CallManagement:\r
+       .CDC_Functional_CallManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x03, 0x01}\r
+                       .Data                   = {0x03, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_AbstractControlManagement:\r
+       .CDC_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x06}\r
+                       .Data                   = {0x06}\r
                },\r
                \r
                },\r
                \r
-       CDC_Functional_Union:\r
+       .CDC_Functional_Union = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x01}\r
+                       .Data                   = {0x00, 0x01}\r
                },\r
 \r
                },\r
 \r
-       ManagementEndpoint:\r
+       .ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0xFF\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0xFF\r
                },\r
 \r
                },\r
 \r
-       DCI_Interface:\r
+       .DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       DataOutEndpoint:\r
+       .DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       DataInEndpoint:\r
+       .DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -187,9 +187,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -198,9 +198,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -209,9 +209,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(13), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(13), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA CDC Demo"\r
+       .UnicodeString          = L"LUFA CDC Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -234,22 +234,22 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index 91ae50e..e5d7ee2 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0xEF,\r
-       SubClass:               0x02,\r
-       Protocol:               0x01,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0xEF,\r
+       .SubClass               = 0x02,\r
+       .Protocol               = 0x01,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x204E,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x204E,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,235 +71,235 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        4,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 4,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       IAD1:\r
+       .IAD1 = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_Association_t), Type: DTYPE_InterfaceAssociation},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},\r
 \r
 \r
-                       FirstInterfaceIndex:   0,\r
-                       TotalInterfaces:        2,\r
+                       .FirstInterfaceIndex    = 0,\r
+                       .TotalInterfaces        = 2,\r
 \r
 \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
 \r
 \r
-                       IADStrIndex:            NO_DESCRIPTOR\r
+                       .IADStrIndex            = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC1_CCI_Interface:\r
+       .CDC1_CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC1_Functional_IntHeader:\r
+       .CDC1_Functional_IntHeader = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x01, 0x10}\r
+                       .Data                   = {0x01, 0x10}\r
                },\r
 \r
                },\r
 \r
-       CDC1_Functional_CallManagement:\r
+       .CDC1_Functional_CallManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x03, 0x01}\r
+                       .Data                   = {0x03, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC1_Functional_AbstractControlManagement:\r
+       .CDC1_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x06}\r
+                       .Data                   = {0x06}\r
                },\r
                \r
                },\r
                \r
-       CDC1_Functional_Union:\r
+       .CDC1_Functional_Union = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x01}\r
+                       .Data                   = {0x00, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC1_ManagementEndpoint:\r
+       .CDC1_ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0xFF\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0xFF\r
                },\r
 \r
                },\r
 \r
-       CDC1_DCI_Interface:\r
+       .CDC1_DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC1_DataOutEndpoint:\r
+       .CDC1_DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC1_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC1_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       CDC1_DataInEndpoint:\r
+       .CDC1_DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_TX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
 \r
                },\r
 \r
-       IAD2:\r
+       .IAD2 = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_Association_t), Type: DTYPE_InterfaceAssociation},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},\r
 \r
 \r
-                       FirstInterfaceIndex:    2,\r
-                       TotalInterfaces:        2,\r
+                       .FirstInterfaceIndex    = 2,\r
+                       .TotalInterfaces        = 2,\r
 \r
 \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
 \r
 \r
-                       IADStrIndex:            NO_DESCRIPTOR\r
+                       .IADStrIndex            = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC2_CCI_Interface:\r
+       .CDC2_CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        2,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 2,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC2_Functional_IntHeader:\r
+       .CDC2_Functional_IntHeader = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x01, 0x10}\r
+                       .Data                   = {0x01, 0x10}\r
                },\r
 \r
                },\r
 \r
-       CDC2_Functional_CallManagement:\r
+       .CDC2_Functional_CallManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x03, 0x03}\r
+                       .Data                   = {0x03, 0x03}\r
                },\r
 \r
                },\r
 \r
-       CDC2_Functional_AbstractControlManagement:\r
+       .CDC2_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x06}\r
+                       .Data                   = {0x06}\r
                },\r
                \r
                },\r
                \r
-       CDC2_Functional_Union:\r
+       .CDC2_Functional_Union = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x02, 0x03}\r
+                       .Data                   = {0x02, 0x03}\r
                },\r
 \r
                },\r
 \r
-       CDC2_ManagementEndpoint:\r
+       .CDC2_ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0xFF\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0xFF\r
                },\r
 \r
                },\r
 \r
-       CDC2_DCI_Interface:\r
+       .CDC2_DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        3,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 3,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC2_DataOutEndpoint:\r
+       .CDC2_DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC2_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC2_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       CDC2_DataInEndpoint:\r
+       .CDC2_DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_TX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -309,9 +309,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -320,9 +320,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -331,9 +331,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(13), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(13), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Dual CDC Demo"\r
+       .UnicodeString          = L"LUFA Dual CDC Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -356,22 +356,22 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index 56eebb3..69d26c4 100644 (file)
@@ -39,9 +39,9 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: CDC1_Task            , TaskStatus: TASK_STOP },\r
-       { Task: CDC2_Task            , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = CDC1_Task            , .TaskStatus = TASK_STOP },\r
+       { .Task = CDC2_Task            , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Globals: */\r
 };\r
 \r
 /* Globals: */\r
@@ -53,10 +53,10 @@ TASK_LIST
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
-CDC_Line_Coding_t LineCoding1 = { BaudRateBPS: 9600,\r
-                                  CharFormat:  OneStopBit,\r
-                                  ParityType:  Parity_None,\r
-                                  DataBits:    8            };\r
+CDC_Line_Coding_t LineCoding1 = { .BaudRateBPS = 9600,\r
+                                  .CharFormat  = OneStopBit,\r
+                                  .ParityType  = Parity_None,\r
+                                  .DataBits    = 8            };\r
 \r
 /** Contains the current baud rate and other settings of the second virtual serial port. While this demo does not use\r
  *  the physical USART and thus does not use these settings, they must still be retained and returned to the host\r
 \r
 /** Contains the current baud rate and other settings of the second virtual serial port. While this demo does not use\r
  *  the physical USART and thus does not use these settings, they must still be retained and returned to the host\r
@@ -66,10 +66,10 @@ CDC_Line_Coding_t LineCoding1 = { BaudRateBPS: 9600,
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
  *  It is possible to completely ignore these value or use other settings as the host is completely unaware of the physical\r
  *  serial link characteristics and instead sends and receives data in endpoint streams.\r
  */\r
-CDC_Line_Coding_t LineCoding2 = { BaudRateBPS: 9600,\r
-                                  CharFormat:  OneStopBit,\r
-                                  ParityType:  Parity_None,\r
-                                  DataBits:    8            };\r
+CDC_Line_Coding_t LineCoding2 = { .BaudRateBPS = 9600,\r
+                                  .CharFormat  = OneStopBit,\r
+                                  .ParityType  = Parity_None,\r
+                                  .DataBits    = 8            };\r
                                                                  \r
 /** String to print through the first virtual serial port when the joystick is pressed upwards. */\r
 char JoystickUpString[]      = "Joystick Up\r\n";\r
                                                                  \r
 /** String to print through the first virtual serial port when the joystick is pressed upwards. */\r
 char JoystickUpString[]      = "Joystick Up\r\n";\r
index 0c3fac7..9b87a04 100644 (file)
@@ -70,24 +70,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM GenericReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x204F,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x204F,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -97,66 +97,66 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       GenericHID:\r
+       .GenericHID = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                                                                         \r
                                                                         \r
-                       HIDSpec:                        VERSION_BCD(01.11),\r
-                       CountryCode:                    0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:                  DTYPE_Report,\r
-                       HIDReportLength:        sizeof(GenericReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(GenericReport)\r
                },\r
 \r
                },\r
 \r
-       GenericINEndpoint:\r
+       .GenericINEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | GENERIC_IN_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           GENERIC_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | GENERIC_IN_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = GENERIC_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                },\r
 \r
                },\r
 \r
-       GenericOUTEndpoint:\r
+       .GenericOUTEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | GENERIC_OUT_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           GENERIC_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | GENERIC_OUT_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = GENERIC_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -166,9 +166,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -177,9 +177,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -188,9 +188,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(13), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(21), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA HID Demo"\r
+       .UnicodeString          = L"LUFA Generic HID Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -213,33 +213,33 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
-               case DTYPE_HID:\r
+               case DTYPE_HID: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.GenericHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.GenericHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
-               case DTYPE_Report:\r
+               case DTYPE_Report: \r
                        Address = DESCRIPTOR_ADDRESS(GenericReport);\r
                        Size    = sizeof(GenericReport);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(GenericReport);\r
                        Size    = sizeof(GenericReport);\r
                        break;\r
index a9ecfa7..a0d4f15 100644 (file)
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
-       { Task: USB_HID_Report       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_HID_Report       , .TaskStatus = TASK_STOP },\r
        #endif\r
 };\r
 \r
        #endif\r
 };\r
 \r
index 788596e..81071a6 100644 (file)
@@ -80,24 +80,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM JoystickReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2043,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2043,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -107,56 +107,56 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       JoystickHID:\r
+       .JoystickHID = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                                                                         \r
                                                                         \r
-                       HIDSpec:                        VERSION_BCD(01.11),\r
-                       CountryCode:                    0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:                  DTYPE_Report,\r
-                       HIDReportLength:        sizeof(JoystickReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(JoystickReport)\r
                },\r
 \r
                },\r
 \r
-       JoystickEndpoint:\r
+       .JoystickEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | JOYSTICK_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           JOYSTICK_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | JOYSTICK_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = JOYSTICK_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                }       \r
 };\r
 \r
                }       \r
 };\r
 \r
@@ -166,9 +166,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -177,9 +177,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -188,9 +188,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(18), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Joystick Demo"\r
+       .UnicodeString          = L"LUFA Joystick Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -213,33 +213,33 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
-               case DTYPE_HID:\r
+               case DTYPE_HID: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.JoystickHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.JoystickHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
-               case DTYPE_Report:\r
+               case DTYPE_Report: \r
                        Address = DESCRIPTOR_ADDRESS(JoystickReport);\r
                        Size    = sizeof(JoystickReport);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(JoystickReport);\r
                        Size    = sizeof(JoystickReport);\r
                        break;\r
index c5d90e7..60eef54 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Joystick_Report  , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Joystick_Report  , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
index 722b658..1c99813 100644 (file)
@@ -87,24 +87,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2042,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2042,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -114,66 +114,66 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       KeyboardHID:\r
+       .KeyboardHID = \r
                {  \r
                {  \r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                        \r
                        \r
-                       HIDSpec:                VERSION_BCD(01.11),\r
-                       CountryCode:            0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:          DTYPE_Report,\r
-                       HIDReportLength:        sizeof(KeyboardReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(KeyboardReport)\r
                },\r
                \r
                },\r
                \r
-       KeyboardEndpoint:\r
+       .KeyboardEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           KEYBOARD_EPSIZE,\r
-                       PollingIntervalMS:      0x04\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = KEYBOARD_EPSIZE,\r
+                       .PollingIntervalMS      = 0x04\r
                },\r
 \r
                },\r
 \r
-       KeyboardLEDsEndpoint:\r
+       .KeyboardLEDsEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | KEYBOARD_LEDS_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           KEYBOARD_EPSIZE,\r
-                       PollingIntervalMS:      0x04\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | KEYBOARD_LEDS_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = KEYBOARD_EPSIZE,\r
+                       .PollingIntervalMS      = 0x04\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -183,9 +183,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -194,9 +194,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(16), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(16), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Denver Gingerich"\r
+       .UnicodeString          = L"Denver Gingerich"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -205,9 +205,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(18), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Keyboard Demo"\r
+       .UnicodeString          = L"LUFA Keyboard Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -226,37 +226,37 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
 \r
        switch (DescriptorType)\r
        {\r
 \r
        switch (DescriptorType)\r
        {\r
-               case DTYPE_Device:\r
+               case DTYPE_Device: \r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
-               case DTYPE_HID:\r
+               case DTYPE_HID: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.KeyboardHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.KeyboardHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
-               case DTYPE_Report:\r
+               case DTYPE_Report: \r
                        Address = DESCRIPTOR_ADDRESS(KeyboardReport);\r
                        Size    = sizeof(KeyboardReport);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(KeyboardReport);\r
                        Size    = sizeof(KeyboardReport);\r
                        break;\r
index 8c4157a..f0e0186 100644 (file)
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
-       { Task: USB_Keyboard_Report  , TaskStatus: TASK_STOP },\r
+       { .Task = USB_Keyboard_Report  , .TaskStatus = TASK_STOP },\r
        #endif\r
 };\r
 \r
        #endif\r
 };\r
 \r
index 39c1d4a..b5bc15a 100644 (file)
@@ -120,24 +120,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x204D,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x204D,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -147,103 +147,103 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        2,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 2,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       KeyboardInterface:\r
+       .KeyboardInterface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       KeyboardHID:\r
+       .KeyboardHID = \r
                {  \r
                {  \r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                        \r
                        \r
-                       HIDSpec:                VERSION_BCD(01.11),\r
-                       CountryCode:            0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:          DTYPE_Report,\r
-                       HIDReportLength:        sizeof(KeyboardReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(KeyboardReport)\r
                },\r
                \r
                },\r
                \r
-       KeyboardInEndpoint:\r
+       .KeyboardInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_IN_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           HID_EPSIZE,\r
-                       PollingIntervalMS:      0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_IN_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = HID_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                },\r
 \r
                },\r
 \r
-       KeyboardOutEndpoint:\r
+       .KeyboardOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | KEYBOARD_OUT_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           HID_EPSIZE,\r
-                       PollingIntervalMS:      0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | KEYBOARD_OUT_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = HID_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                },\r
 \r
                },\r
 \r
-       MouseInterface:\r
+       .MouseInterface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x01,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x01,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x02,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x02,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       MouseHID:\r
+       .MouseHID = \r
                {  \r
                {  \r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                        \r
                        \r
-                       HIDSpec:                VERSION_BCD(01.11),\r
-                       CountryCode:            0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:          DTYPE_Report,\r
-                       HIDReportLength:        sizeof(MouseReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(MouseReport)\r
                },\r
                \r
                },\r
                \r
-       MouseInEndpoint:\r
+       .MouseInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | MOUSE_IN_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           HID_EPSIZE,\r
-                       PollingIntervalMS:      0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | MOUSE_IN_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = HID_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -253,9 +253,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -264,9 +264,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -275,9 +275,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(28), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(28), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Mouse and Keyboard Demo"\r
+       .UnicodeString          = L"LUFA Mouse and Keyboard Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -296,33 +296,33 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
 \r
        switch (DescriptorType)\r
        {\r
 \r
        switch (DescriptorType)\r
        {\r
-               case DTYPE_Device:\r
+               case DTYPE_Device: \r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                        }\r
                        \r
                        break;\r
-               case DTYPE_HID:\r
+               case DTYPE_HID: \r
                        if (!(wIndex))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.KeyboardHID);\r
                        if (!(wIndex))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.KeyboardHID);\r
@@ -334,7 +334,7 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                                Size    = sizeof(USB_Descriptor_HID_t);                 \r
                        }\r
                        break;\r
                                Size    = sizeof(USB_Descriptor_HID_t);                 \r
                        }\r
                        break;\r
-               case DTYPE_Report:\r
+               case DTYPE_Report: \r
                        if (!(wIndex))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(KeyboardReport);\r
                        if (!(wIndex))\r
                        {\r
                                Address = DESCRIPTOR_ADDRESS(KeyboardReport);\r
index 71e23ab..957b9b3 100644 (file)
@@ -40,9 +40,9 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask               , TaskStatus: TASK_STOP },\r
-       { Task: USB_Mouse                 , TaskStatus: TASK_RUN },\r
-       { Task: USB_Keyboard              , TaskStatus: TASK_RUN },\r
+       { .Task = USB_USBTask               , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Mouse                 , .TaskStatus = TASK_RUN  },\r
+       { .Task = USB_Keyboard              , .TaskStatus = TASK_RUN  },\r
 };\r
 \r
 /* Global Variables */\r
 };\r
 \r
 /* Global Variables */\r
index 81f5748..4150223 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2048,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2048,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,175 +71,175 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize:   sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:          2,\r
+                       .TotalConfigurationSize   = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces          = 2,\r
 \r
 \r
-                       ConfigurationNumber:      1,\r
-                       ConfigurationStrIndex:    NO_DESCRIPTOR,\r
+                       .ConfigurationNumber      = 1,\r
+                       .ConfigurationStrIndex    = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:         (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes         = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:      USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption      = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       AudioControlInterface:\r
+       .AudioControlInterface = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          0,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 0,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           0,\r
+                       .TotalEndpoints           = 0,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x01,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x01,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR                 \r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR                       \r
                },\r
        \r
                },\r
        \r
-       AudioControlInterface_SPC:\r
+       .AudioControlInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_AC_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_Header,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_AC_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_Header,\r
                        \r
                        \r
-                       ACSpecification:          VERSION_BCD(01.00),\r
-                       TotalLength:              sizeof(USB_AudioInterface_AC_t),\r
+                       .ACSpecification          = VERSION_BCD(01.00),\r
+                       .TotalLength              = sizeof(USB_AudioInterface_AC_t),\r
                        \r
                        \r
-                       InCollection:             1,\r
-                       InterfaceNumbers:         {1},                  \r
+                       .InCollection             = 1,\r
+                       .InterfaceNumbers         = {1},                        \r
                },\r
 \r
                },\r
 \r
-       AudioStreamInterface:\r
+       .AudioStreamInterface = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                   = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:          1,\r
-                       AlternateSetting:         0,\r
+                       .InterfaceNumber          = 1,\r
+                       .AlternateSetting         = 0,\r
                        \r
                        \r
-                       TotalEndpoints:           2,\r
+                       .TotalEndpoints           = 2,\r
                                \r
                                \r
-                       Class:                    0x01,\r
-                       SubClass:                 0x03,\r
-                       Protocol:                 0x00,\r
+                       .Class                    = 0x01,\r
+                       .SubClass                 = 0x03,\r
+                       .Protocol                 = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:        NO_DESCRIPTOR\r
+                       .InterfaceStrIndex        = NO_DESCRIPTOR\r
                },\r
                \r
                },\r
                \r
-       AudioStreamInterface_SPC:\r
+       .AudioStreamInterface_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_AudioInterface_MIDI_AS_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_AudioInterface_MIDI_AS_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_General,\r
 \r
 \r
-                       AudioSpecification:       VERSION_BCD(01.00),\r
+                       .AudioSpecification       = VERSION_BCD(01.00),\r
                        \r
                        \r
-                       TotalLength:              (sizeof(USB_Descriptor_Configuration_t) - offsetof(USB_Descriptor_Configuration_t, AudioStreamInterface_SPC))\r
+                       .TotalLength              = (sizeof(USB_Descriptor_Configuration_t) - offsetof(USB_Descriptor_Configuration_t, AudioStreamInterface_SPC))\r
                },\r
 \r
                },\r
 \r
-       MIDI_In_Jack_Emb:\r
+       .MIDI_In_Jack_Emb = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_In_Jack_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_InputJack,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_In_Jack_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_InputJack,\r
                        \r
                        \r
-                       JackType:                 JACKTYPE_EMBEDDED,\r
-                       JackID:                   0x01,\r
+                       .JackType                 = JACKTYPE_EMBEDDED,\r
+                       .JackID                   = 0x01,\r
                        \r
                        \r
-                       JackStrIndex:             NO_DESCRIPTOR\r
+                       .JackStrIndex             = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       MIDI_In_Jack_Ext:\r
+       .MIDI_In_Jack_Ext = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_In_Jack_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_InputJack,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_In_Jack_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_InputJack,\r
                        \r
                        \r
-                       JackType:                 JACKTYPE_EXTERNAL,\r
-                       JackID:                   0x02,\r
+                       .JackType                 = JACKTYPE_EXTERNAL,\r
+                       .JackID                   = 0x02,\r
                        \r
                        \r
-                       JackStrIndex:             NO_DESCRIPTOR\r
+                       .JackStrIndex             = NO_DESCRIPTOR\r
                },\r
                \r
                },\r
                \r
-       MIDI_Out_Jack_Emb:\r
+       .MIDI_Out_Jack_Emb = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_Out_Jack_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_OutputJack,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_Out_Jack_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_OutputJack,\r
                        \r
                        \r
-                       JackType:                 JACKTYPE_EMBEDDED,\r
-                       JackID:                   0x03,\r
+                       .JackType                 = JACKTYPE_EMBEDDED,\r
+                       .JackID                   = 0x03,\r
 \r
 \r
-                       NumberOfPins:             1,\r
-                       SourceJackID:             {0x02},\r
-                       SourcePinID:              {0x01},\r
+                       .NumberOfPins             = 1,\r
+                       .SourceJackID             = {0x02},\r
+                       .SourcePinID              = {0x01},\r
                        \r
                        \r
-                       JackStrIndex:             NO_DESCRIPTOR\r
+                       .JackStrIndex             = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       MIDI_Out_Jack_Ext:\r
+       .MIDI_Out_Jack_Ext = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_Out_Jack_t), Type: DTYPE_AudioInterface},\r
-                       Subtype:                  DSUBTYPE_OutputJack,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_Out_Jack_t), .Type = DTYPE_AudioInterface},\r
+                       .Subtype                  = DSUBTYPE_OutputJack,\r
                        \r
                        \r
-                       JackType:                 JACKTYPE_EXTERNAL,\r
-                       JackID:                   0x04,\r
+                       .JackType                 = JACKTYPE_EXTERNAL,\r
+                       .JackID                   = 0x04,\r
 \r
 \r
-                       NumberOfPins:             1,\r
-                       SourceJackID:             {0x01},\r
-                       SourcePinID:              {0x01},\r
+                       .NumberOfPins             = 1,\r
+                       .SourceJackID             = {0x01},\r
+                       .SourcePinID              = {0x01},\r
                        \r
                        \r
-                       JackStrIndex:             NO_DESCRIPTOR\r
+                       .JackStrIndex             = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       MIDI_In_Jack_Endpoint:\r
+       .MIDI_In_Jack_Endpoint = \r
                {\r
                {\r
-                       Endpoint:\r
+                       .Endpoint = \r
                                {\r
                                {\r
-                                       Header:              {Size: sizeof(USB_AudioStreamEndpoint_Std_t), Type: DTYPE_Endpoint},\r
+                                       .Header              = {.Size = sizeof(USB_AudioStreamEndpoint_Std_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                                       EndpointAddress:     (ENDPOINT_DESCRIPTOR_DIR_OUT | MIDI_STREAM_OUT_EPNUM),\r
-                                       Attributes:          (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
-                                       EndpointSize:        MIDI_STREAM_EPSIZE,\r
-                                       PollingIntervalMS:   0\r
+                                       .EndpointAddress     = (ENDPOINT_DESCRIPTOR_DIR_OUT | MIDI_STREAM_OUT_EPNUM),\r
+                                       .Attributes          = (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
+                                       .EndpointSize        = MIDI_STREAM_EPSIZE,\r
+                                       .PollingIntervalMS   = 0\r
                                },\r
                        \r
                                },\r
                        \r
-                       Refresh:                  0,\r
-                       SyncEndpointNumber:       0\r
+                       .Refresh                  = 0,\r
+                       .SyncEndpointNumber       = 0\r
                },\r
                \r
                },\r
                \r
-       MIDI_In_Jack_Endpoint_SPC:\r
+       .MIDI_In_Jack_Endpoint_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_Jack_Endpoint_t), Type: DTYPE_AudioEndpoint},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_Jack_Endpoint_t), .Type = DTYPE_AudioEndpoint},\r
+                       .Subtype                  = DSUBTYPE_General,\r
 \r
 \r
-                       TotalEmbeddedJacks:       0x01,\r
-                       AssociatedJackID:         {0x01}\r
+                       .TotalEmbeddedJacks       = 0x01,\r
+                       .AssociatedJackID         = {0x01}\r
                },\r
 \r
                },\r
 \r
-       MIDI_Out_Jack_Endpoint:\r
+       .MIDI_Out_Jack_Endpoint = \r
                {\r
                {\r
-                       Endpoint:\r
+                       .Endpoint = \r
                                {\r
                                {\r
-                                       Header:              {Size: sizeof(USB_AudioStreamEndpoint_Std_t), Type: DTYPE_Endpoint},\r
+                                       .Header              = {.Size = sizeof(USB_AudioStreamEndpoint_Std_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                                       EndpointAddress:     (ENDPOINT_DESCRIPTOR_DIR_IN | MIDI_STREAM_IN_EPNUM),\r
-                                       Attributes:          (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
-                                       EndpointSize:        MIDI_STREAM_EPSIZE,\r
-                                       PollingIntervalMS:   0\r
+                                       .EndpointAddress     = (ENDPOINT_DESCRIPTOR_DIR_IN | MIDI_STREAM_IN_EPNUM),\r
+                                       .Attributes          = (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
+                                       .EndpointSize        = MIDI_STREAM_EPSIZE,\r
+                                       .PollingIntervalMS   = 0\r
                                },\r
                        \r
                                },\r
                        \r
-                       Refresh:                  0,\r
-                       SyncEndpointNumber:       0\r
+                       .Refresh                  = 0,\r
+                       .SyncEndpointNumber       = 0\r
                },\r
                \r
                },\r
                \r
-       MIDI_Out_Jack_Endpoint_SPC:\r
+       .MIDI_Out_Jack_Endpoint_SPC = \r
                {\r
                {\r
-                       Header:                   {Size: sizeof(USB_MIDI_Jack_Endpoint_t), Type: DTYPE_AudioEndpoint},\r
-                       Subtype:                  DSUBTYPE_General,\r
+                       .Header                   = {.Size = sizeof(USB_MIDI_Jack_Endpoint_t), .Type = DTYPE_AudioEndpoint},\r
+                       .Subtype                  = DSUBTYPE_General,\r
 \r
 \r
-                       TotalEmbeddedJacks:       0x01,\r
-                       AssociatedJackID:         {0x03}\r
+                       .TotalEmbeddedJacks       = 0x01,\r
+                       .AssociatedJackID         = {0x03}\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -249,9 +249,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -260,9 +260,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -271,9 +271,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(14), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(14), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA MIDI Demo"\r
+       .UnicodeString          = L"LUFA MIDI Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -292,26 +292,26 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
 \r
        switch (DescriptorType)\r
        {\r
 \r
        switch (DescriptorType)\r
        {\r
-               case DTYPE_Device:\r
+               case DTYPE_Device: \r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index e286dcb..7e1d211 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_MIDI_Task        , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_MIDI_Task        , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
index dd98db5..3592e9d 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2045,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2045,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      0x03,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = 0x03,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,55 +71,55 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       USB_CONFIG_ATTR_BUSPOWERED,\r
+                       .ConfigAttributes       = USB_CONFIG_ATTR_BUSPOWERED,\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x08,\r
-                       SubClass:               0x06,\r
-                       Protocol:               0x50,\r
+                       .Class                  = 0x08,\r
+                       .SubClass               = 0x06,\r
+                       .Protocol               = 0x50,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       DataInEndpoint:\r
+       .DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | MASS_STORAGE_IN_EPNUM),\r
-                       Attributes:             EP_TYPE_BULK,\r
-                       EndpointSize:           MASS_STORAGE_IO_EPSIZE,\r
-                       PollingIntervalMS:      0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | MASS_STORAGE_IN_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = MASS_STORAGE_IO_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
 \r
                },\r
 \r
-       DataOutEndpoint:\r
+       .DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | MASS_STORAGE_OUT_EPNUM),\r
-                       Attributes:             EP_TYPE_BULK,\r
-                       EndpointSize:           MASS_STORAGE_IO_EPSIZE,\r
-                       PollingIntervalMS:      0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | MASS_STORAGE_OUT_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = MASS_STORAGE_IO_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -129,9 +129,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -140,9 +140,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -151,9 +151,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(22), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(22), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Mass Storage Demo"\r
+       .UnicodeString          = L"LUFA Mass Storage Demo"\r
 };\r
 \r
 /** Serial number descriptor string. This is a Unicode string containing a string of HEX characters at least 12\r
 };\r
 \r
 /** Serial number descriptor string. This is a Unicode string containing a string of HEX characters at least 12\r
@@ -165,9 +165,9 @@ USB_Descriptor_String_t PROGMEM ProductString =
  */\r
 USB_Descriptor_String_t PROGMEM SerialNumberString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM SerialNumberString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(12), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(12), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"000000000000"\r
+       .UnicodeString          = L"000000000000"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -186,30 +186,30 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
 \r
        switch (DescriptorType)\r
        {\r
 \r
        switch (DescriptorType)\r
        {\r
-               case DTYPE_Device:\r
+               case DTYPE_Device: \r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
-                               case 0x03:\r
+                               case 0x03: \r
                                        Address = DESCRIPTOR_ADDRESS(SerialNumberString);\r
                                        Size    = pgm_read_byte(&SerialNumberString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(SerialNumberString);\r
                                        Size    = pgm_read_byte(&SerialNumberString.Header.Size);\r
                                        break;\r
index 48ce5f3..7ddb8f0 100644 (file)
@@ -40,7 +40,7 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_MassStorage      , TaskStatus: TASK_STOP },\r
+       { .Task = USB_MassStorage      , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Global Variables */\r
 };\r
 \r
 /* Global Variables */\r
@@ -48,7 +48,7 @@ TASK_LIST
 CommandBlockWrapper_t  CommandBlock;\r
 \r
 /** Structure to hold the latest Command Status Wrapper to return to the host, containing the status of the last issued command. */\r
 CommandBlockWrapper_t  CommandBlock;\r
 \r
 /** Structure to hold the latest Command Status Wrapper to return to the host, containing the status of the last issued command. */\r
-CommandStatusWrapper_t CommandStatus = { Signature: CSW_SIGNATURE };\r
+CommandStatusWrapper_t CommandStatus = { .Signature = CSW_SIGNATURE };\r
 \r
 /** Flag to asynchronously abort any in-progress data transfers upon the reception of a mass storage reset command. */\r
 volatile bool          IsMassStoreReset = false;\r
 \r
 /** Flag to asynchronously abort any in-progress data transfers upon the reception of a mass storage reset command. */\r
 volatile bool          IsMassStoreReset = false;\r
index e92be7f..6ddd144 100644 (file)
  */\r
 SCSI_Inquiry_Response_t InquiryData = \r
        {\r
  */\r
 SCSI_Inquiry_Response_t InquiryData = \r
        {\r
-               DeviceType:          0,\r
-               PeripheralQualifier: 0,\r
+               .DeviceType          = 0,\r
+               .PeripheralQualifier = 0,\r
                        \r
                        \r
-               Removable:           true,\r
+               .Removable           = true,\r
                        \r
                        \r
-               Version:             0,\r
+               .Version             = 0,\r
                        \r
                        \r
-               ResponseDataFormat:  2,\r
-               NormACA:             false,\r
-               TrmTsk:              false,\r
-               AERC:                false,\r
+               .ResponseDataFormat  = 2,\r
+               .NormACA             = false,\r
+               .TrmTsk              = false,\r
+               .AERC                = false,\r
 \r
 \r
-               AdditionalLength:    0x1F,\r
+               .AdditionalLength    = 0x1F,\r
                        \r
                        \r
-               SoftReset:           false,\r
-               CmdQue:              false,\r
-               Linked:              false,\r
-               Sync:                false,\r
-               WideBus16Bit:        false,\r
-               WideBus32Bit:        false,\r
-               RelAddr:             false,\r
+               .SoftReset           = false,\r
+               .CmdQue              = false,\r
+               .Linked              = false,\r
+               .Sync                = false,\r
+               .WideBus16Bit        = false,\r
+               .WideBus32Bit        = false,\r
+               .RelAddr             = false,\r
                \r
                \r
-               VendorID:            "LUFA",\r
-               ProductID:           "Dataflash Disk",\r
-               RevisionID:          {'0','.','0','0'},\r
+               .VendorID            = "LUFA",\r
+               .ProductID           = "Dataflash Disk",\r
+               .RevisionID          = {'0','.','0','0'},\r
        };\r
 \r
 /** Structure to hold the sense data for the last issued SCSI command, which is returned to the host after a SCSI REQUEST SENSE\r
        };\r
 \r
 /** Structure to hold the sense data for the last issued SCSI command, which is returned to the host after a SCSI REQUEST SENSE\r
@@ -75,8 +75,8 @@ SCSI_Inquiry_Response_t InquiryData =
  */\r
 SCSI_Request_Sense_Response_t SenseData =\r
        {\r
  */\r
 SCSI_Request_Sense_Response_t SenseData =\r
        {\r
-               ResponseCode:        0x70,\r
-               AdditionalLength:    0x0A,\r
+               .ResponseCode        = 0x70,\r
+               .AdditionalLength    = 0x0A,\r
        };\r
 \r
 \r
        };\r
 \r
 \r
index a93d512..858a562 100644 (file)
@@ -80,24 +80,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2041,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2041,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -107,56 +107,56 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x02,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x02,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       MouseHID:\r
+       .MouseHID = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                                                                         \r
                                                                         \r
-                       HIDSpec:                        VERSION_BCD(01.11),\r
-                       CountryCode:                    0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:                  DTYPE_Report,\r
-                       HIDReportLength:        sizeof(MouseReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(MouseReport)\r
                },\r
 \r
                },\r
 \r
-       MouseEndpoint:\r
+       .MouseEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | MOUSE_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           MOUSE_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | MOUSE_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = MOUSE_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                }       \r
 };\r
 \r
                }       \r
 };\r
 \r
@@ -166,9 +166,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -177,9 +177,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -188,9 +188,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(15), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(15), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Mouse Demo"\r
+       .UnicodeString          = L"LUFA Mouse Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -235,11 +235,11 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        }\r
                        \r
                        break;\r
                        }\r
                        \r
                        break;\r
-               case DTYPE_HID:\r
+               case DTYPE_HID: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.MouseHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor.MouseHID);\r
                        Size    = sizeof(USB_Descriptor_HID_t);\r
                        break;\r
-               case DTYPE_Report:\r
+               case DTYPE_Report: \r
                        Address = DESCRIPTOR_ADDRESS(MouseReport);\r
                        Size    = sizeof(MouseReport);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(MouseReport);\r
                        Size    = sizeof(MouseReport);\r
                        break;\r
index e74002b..38a7086 100644 (file)
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
 TASK_LIST\r
 {\r
        #if !defined(INTERRUPT_CONTROL_ENDPOINT)\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
        #endif\r
        \r
        #if !defined(INTERRUPT_DATA_ENDPOINT)\r
-       { Task: USB_Mouse_Report     , TaskStatus: TASK_STOP },\r
+       { .Task = USB_Mouse_Report     , .TaskStatus = TASK_STOP },\r
        #endif\r
 };\r
 \r
        #endif\r
 };\r
 \r
index 0e7b934..46c3be1 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x02,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x02,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x204C,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x204C,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,113 +71,113 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        2,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 2,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       CCI_Interface:\r
+       .CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0xFF,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0xFF,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_Header:\r
+       .CDC_Functional_Header = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x01, 0x10}\r
+                       .Data                   = {0x01, 0x10}\r
                },\r
                \r
                },\r
                \r
-       CDC_Functional_CallManagement:\r
+       .CDC_Functional_CallManagement= \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x00}\r
+                       .Data                   = {0x00, 0x00}\r
                },\r
                \r
                },\r
                \r
-       CDC_Functional_AbstractControlManagement:\r
+       .CDC_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x00}\r
+                       .Data                   = {0x00}\r
                },\r
        \r
                },\r
        \r
-       CDC_Functional_Union:\r
+       .CDC_Functional_Union = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x01}\r
+                       .Data                   = {0x00, 0x01}\r
                },\r
 \r
                },\r
 \r
-       ManagementEndpoint:\r
+       .ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0x02\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0x02\r
                },\r
 \r
                },\r
 \r
-       DCI_Interface:\r
+       .DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       DataOutEndpoint:\r
+       .DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       DataInEndpoint:\r
+       .DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -187,9 +187,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -198,9 +198,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -209,9 +209,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(19), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(19), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA RNDIS CDC Demo"\r
+       .UnicodeString          = L"LUFA RNDIS CDC Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -234,7 +234,7 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
index 5e14bb7..d77cc45 100644 (file)
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: Ethernet_Task        , TaskStatus: TASK_STOP },\r
-       { Task: TCP_Task             , TaskStatus: TASK_STOP },\r
-       { Task: RNDIS_Task           , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = Ethernet_Task        , .TaskStatus = TASK_STOP },\r
+       { .Task = TCP_Task             , .TaskStatus = TASK_STOP },\r
+       { .Task = RNDIS_Task           , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
@@ -245,11 +245,11 @@ TASK(RNDIS_Task)
        {\r
                USB_Notification_t Notification = (USB_Notification_t)\r
                        {\r
        {\r
                USB_Notification_t Notification = (USB_Notification_t)\r
                        {\r
-                               bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                               bNotification: NOTIF_RESPONSE_AVAILABLE,\r
-                               wValue:        0,\r
-                               wIndex:        0,\r
-                               wLength:       0,\r
+                               .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                               .bNotification = NOTIF_RESPONSE_AVAILABLE,\r
+                               .wValue        = 0,\r
+                               .wIndex        = 0,\r
+                               .wLength       = 0,\r
                        };\r
                \r
                /* Indicate that a message response is ready for the host */\r
                        };\r
                \r
                /* Indicate that a message response is ready for the host */\r
index 67fb4e9..1619f9d 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x02,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x02,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2044,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2044,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,113 +71,113 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        2,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 2,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       CCI_Interface:\r
+       .CCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 0,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x02,\r
-                       SubClass:               0x02,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x02,\r
+                       .SubClass               = 0x02,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_IntHeader:\r
+       .CDC_Functional_IntHeader = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x00,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x00,\r
                        \r
                        \r
-                       Data:                   {0x01, 0x10}\r
+                       .Data                   = {0x01, 0x10}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_CallManagement:\r
+       .CDC_Functional_CallManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x01,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x01,\r
                        \r
                        \r
-                       Data:                   {0x03, 0x01}\r
+                       .Data                   = {0x03, 0x01}\r
                },\r
 \r
                },\r
 \r
-       CDC_Functional_AbstractControlManagement:\r
+       .CDC_Functional_AbstractControlManagement = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), Type: 0x24},\r
-                       SubType:                0x02,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
+                       .SubType                = 0x02,\r
                        \r
                        \r
-                       Data:                   {0x06}\r
+                       .Data                   = {0x06}\r
                },\r
                \r
                },\r
                \r
-       CDC_Functional_Union:\r
+       .CDC_Functional_Union= \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), Type: 0x24},\r
-                       SubType:                0x06,\r
+                       .Header                 = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
+                       .SubType                = 0x06,\r
                        \r
                        \r
-                       Data:                   {0x00, 0x01}\r
+                       .Data                   = {0x00, 0x01}\r
                },\r
 \r
                },\r
 \r
-       ManagementEndpoint:\r
+       .ManagementEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
-                       Attributes:                     EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           CDC_NOTIFICATION_EPSIZE,\r
-                       PollingIntervalMS:              0xFF\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = CDC_NOTIFICATION_EPSIZE,\r
+                       .PollingIntervalMS      = 0xFF\r
                },\r
 \r
                },\r
 \r
-       DCI_Interface:\r
+       .DCI_Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                        \r
                        \r
-                       TotalEndpoints:         2,\r
+                       .TotalEndpoints         = 2,\r
                                \r
                                \r
-                       Class:                  0x0A,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0x0A,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       DataOutEndpoint:\r
+       .DataOutEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
+                       .Attributes             = EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS      = 0x00\r
                },\r
                \r
                },\r
                \r
-       DataInEndpoint:\r
+       .DataInEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
                                                                                 \r
                                                                                 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
-                       Attributes:                     EP_TYPE_BULK,\r
-                       EndpointSize:           CDC_TXRX_EPSIZE,\r
-                       PollingIntervalMS:              0x00\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
+                       .Attributes       =             EP_TYPE_BULK,\r
+                       .EndpointSize           = CDC_TXRX_EPSIZE,\r
+                       .PollingIntervalMS=             0x00\r
                }\r
 };\r
 \r
                }\r
 };\r
 \r
@@ -187,9 +187,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -198,9 +198,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -209,9 +209,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(19), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(19), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA USB-RS232 Demo"\r
+       .UnicodeString          = L"LUFA USB-RS232 Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -230,26 +230,26 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
 \r
        switch (DescriptorType)\r
        {\r
 \r
        switch (DescriptorType)\r
        {\r
-               case DTYPE_Device:\r
+               case DTYPE_Device: \r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index 1d238aa..6bd14cc 100644 (file)
@@ -33,8 +33,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: CDC_Task             , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = CDC_Task             , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Globals: */\r
 };\r
 \r
 /* Globals: */\r
@@ -43,10 +43,10 @@ TASK_LIST
  *  These values are set by the host via a class-specific request, and the physical USART should be reconfigured to match the\r
  *  new settings each time they are changed by the host.\r
  */\r
  *  These values are set by the host via a class-specific request, and the physical USART should be reconfigured to match the\r
  *  new settings each time they are changed by the host.\r
  */\r
-CDC_Line_Coding_t LineCoding = { BaudRateBPS: 9600,\r
-                                 CharFormat:  OneStopBit,\r
-                                 ParityType:  Parity_None,\r
-                                 DataBits:    8            };\r
+CDC_Line_Coding_t LineCoding = { .BaudRateBPS = 9600,\r
+                                 .CharFormat  = OneStopBit,\r
+                                 .ParityType  = Parity_None,\r
+                                 .DataBits    = 8            };\r
 \r
 /** Ring (circular) buffer to hold the RX data - data from the host to the attached device on the serial port. */\r
 RingBuff_t Rx_Buffer;\r
 \r
 /** Ring (circular) buffer to hold the RX data - data from the host to the attached device on the serial port. */\r
 RingBuff_t Rx_Buffer;\r
@@ -224,11 +224,11 @@ TASK(CDC_Task)
 \r
                USB_Notification_Header_t Notification = (USB_Notification_Header_t)\r
                        {\r
 \r
                USB_Notification_Header_t Notification = (USB_Notification_Header_t)\r
                        {\r
-                               NotificationType: (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                               Notification:     NOTIF_SerialState,\r
-                               wValue:           0,\r
-                               wIndex:           0,\r
-                               wLength:          sizeof(uint16_t),\r
+                               .NotificationType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                               .Notification     = NOTIF_SerialState,\r
+                               .wValue           = 0,\r
+                               .wIndex           = 0,\r
+                               .wLength          = sizeof(uint16_t),\r
                        };\r
                        \r
                uint16_t LineStateMask;\r
                        };\r
                        \r
                uint16_t LineStateMask;\r
@@ -244,6 +244,7 @@ TASK(CDC_Task)
                /* Select the Serial Rx Endpoint */\r
                Endpoint_SelectEndpoint(CDC_RX_EPNUM);\r
                \r
                /* Select the Serial Rx Endpoint */\r
                Endpoint_SelectEndpoint(CDC_RX_EPNUM);\r
                \r
+               /* Check to see if a packet has been received from the host */\r
                if (Endpoint_IsOUTReceived())\r
                {\r
                        /* Read the bytes in from the endpoint into the buffer while space is available */\r
                if (Endpoint_IsOUTReceived())\r
                {\r
                        /* Read the bytes in from the endpoint into the buffer while space is available */\r
index 80d9939..aa99964 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_CDC_Host         , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_CDC_Host         , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -183,11 +183,11 @@ TASK(USB_CDC_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index b047841..f0d1967 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_HID_Host         , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_HID_Host         , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -259,11 +259,11 @@ void WriteNextReport(uint8_t* ReportOUTData, uint8_t ReportIndex, uint8_t Report
                /* Class specific request to send a HID report to the device */\r
                USB_HostRequest = (USB_Host_Request_Header_t)\r
                        {\r
                /* Class specific request to send a HID report to the device */\r
                USB_HostRequest = (USB_Host_Request_Header_t)\r
                        {\r
-                               bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                               bRequest:      REQ_SetReport,\r
-                               wValue:        ((ReportType << 8) | ReportIndex),\r
-                               wIndex:        0,\r
-                               wLength:       ReportLength,\r
+                               .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                               .bRequest      = REQ_SetReport,\r
+                               .wValue        = ((ReportType << 8) | ReportIndex),\r
+                               .wIndex        = 0,\r
+                               .wLength       = ReportLength,\r
                        };\r
 \r
                /* Select the control pipe for the request transfer */\r
                        };\r
 \r
                /* Select the control pipe for the request transfer */\r
@@ -288,11 +288,11 @@ TASK(USB_HID_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index 35055ca..bc75bd3 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Keyboard_Host    , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Keyboard_Host    , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -255,11 +255,11 @@ TASK(USB_Keyboard_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
@@ -305,11 +305,11 @@ TASK(USB_Keyboard_Host)
                        /* HID class request to set the keyboard protocol to the Boot Protocol */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* HID class request to set the keyboard protocol to the Boot Protocol */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                                       bRequest:      REQ_SetProtocol,\r
-                                       wValue:        0,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                                       .bRequest      = REQ_SetProtocol,\r
+                                       .wValue        = 0,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index b985a45..14b8038 100644 (file)
@@ -49,11 +49,11 @@ uint8_t GetHIDReportData(void)
        \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
        \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),\r
-                       bRequest:      REQ_GetDescriptor,\r
-                       wValue:        (DTYPE_Report << 8),\r
-                       wIndex:        0,\r
-                       wLength:       HIDReportSize,\r
+                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),\r
+                       .bRequest      = REQ_GetDescriptor,\r
+                       .wValue        = (DTYPE_Report << 8),\r
+                       .wIndex        = 0,\r
+                       .wLength       = HIDReportSize,\r
                };\r
 \r
        /* Select the control pipe for the request transfer */\r
                };\r
 \r
        /* Select the control pipe for the request transfer */\r
index ff4ae75..76ad5f2 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Keyboard_Host    , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Keyboard_Host    , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -186,11 +186,11 @@ TASK(USB_Keyboard_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index 1c56e6e..9352562 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_MassStore_Host   , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_MassStore_Host   , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Globals */\r
 };\r
 \r
 /* Globals */\r
@@ -157,11 +157,11 @@ TASK(USB_MassStore_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
                                \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
                                \r
                        /* Select the control pipe for the request transfer */\r
index 41c59dc..864edf3 100644 (file)
@@ -252,11 +252,11 @@ uint8_t MassStore_ClearPipeStall(const uint8_t EndpointNum)
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),\r
-                       bRequest:      REQ_ClearFeature,\r
-                       wValue:        FEATURE_ENDPOINT_HALT,\r
-                       wIndex:        EndpointNum,\r
-                       wLength:       0,\r
+                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),\r
+                       .bRequest      = REQ_ClearFeature,\r
+                       .wValue        = FEATURE_ENDPOINT_HALT,\r
+                       .wIndex        = EndpointNum,\r
+                       .wLength       = 0,\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
@@ -274,11 +274,11 @@ uint8_t MassStore_MassStorageReset(void)
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                       bRequest:      REQ_MassStorageReset,\r
-                       wValue:        0,\r
-                       wIndex:        0,\r
-                       wLength:       0,\r
+                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                       .bRequest      = REQ_MassStorageReset,\r
+                       .wValue        = 0,\r
+                       .wIndex        = 0,\r
+                       .wLength       = 0,\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
@@ -300,11 +300,11 @@ uint8_t MassStore_GetMaxLUN(uint8_t* const MaxLUNIndex)
 \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
 \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                       bRequest:      REQ_GetMaxLUN,\r
-                       wValue:        0,\r
-                       wIndex:        0,\r
-                       wLength:       1,\r
+                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                       .bRequest      = REQ_GetMaxLUN,\r
+                       .wValue        = 0,\r
+                       .wIndex        = 0,\r
+                       .wLength       = 1,\r
                };\r
                \r
        /* Select the control pipe for the request transfer */\r
                };\r
                \r
        /* Select the control pipe for the request transfer */\r
@@ -337,17 +337,17 @@ uint8_t MassStore_RequestSense(const uint8_t LUNIndex, const SCSI_Request_Sense_
        /* Create a CBW with a SCSI command to issue REQUEST SENSE command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to issue REQUEST SENSE command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: sizeof(SCSI_Request_Sense_Response_t),\r
-                                       Flags:              COMMAND_DIRECTION_DATA_IN,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  6\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = sizeof(SCSI_Request_Sense_Response_t),\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_IN,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 6\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_REQUEST_SENSE,\r
                                        0x00,                   // Reserved\r
                                {\r
                                        SCSI_CMD_REQUEST_SENSE,\r
                                        0x00,                   // Reserved\r
@@ -404,17 +404,17 @@ uint8_t MassStore_ReadDeviceBlock(const uint8_t LUNIndex, const uint32_t BlockAd
        /* Create a CBW with a SCSI command to read in the given blocks from the device */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to read in the given blocks from the device */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: ((uint32_t)Blocks * BlockSize),\r
-                                       Flags:              COMMAND_DIRECTION_DATA_IN,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  10\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = ((uint32_t)Blocks * BlockSize),\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_IN,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 10\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_READ_10,\r
                                        0x00,                   // Unused (control bits, all off)\r
                                {\r
                                        SCSI_CMD_READ_10,\r
                                        0x00,                   // Unused (control bits, all off)\r
@@ -475,17 +475,17 @@ uint8_t MassStore_WriteDeviceBlock(const uint8_t LUNIndex, const uint32_t BlockA
        /* Create a CBW with a SCSI command to write the given blocks to the device */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to write the given blocks to the device */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: ((uint32_t)Blocks * BlockSize),\r
-                                       Flags:              COMMAND_DIRECTION_DATA_OUT,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  10\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = ((uint32_t)Blocks * BlockSize),\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_OUT,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 10\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_WRITE_10,\r
                                        0x00,                   // Unused (control bits, all off)\r
                                {\r
                                        SCSI_CMD_WRITE_10,\r
                                        0x00,                   // Unused (control bits, all off)\r
@@ -534,17 +534,17 @@ uint8_t MassStore_TestUnitReady(const uint8_t LUNIndex)
        /* Create a CBW with a SCSI command to issue TEST UNIT READY command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to issue TEST UNIT READY command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: 0,\r
-                                       Flags:              COMMAND_DIRECTION_DATA_IN,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  6\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = 0,\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_IN,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 6\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_TEST_UNIT_READY,\r
                                        0x00,                   // Reserved\r
                                {\r
                                        SCSI_CMD_TEST_UNIT_READY,\r
                                        0x00,                   // Reserved\r
@@ -583,17 +583,17 @@ uint8_t MassStore_ReadCapacity(const uint8_t LUNIndex, SCSI_Capacity_t* const Ca
        /* Create a CBW with a SCSI command to issue READ CAPACITY command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to issue READ CAPACITY command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: 8,\r
-                                       Flags:              COMMAND_DIRECTION_DATA_IN,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  10\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = 8,\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_IN,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 10\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_READ_CAPACITY_10,\r
                                        0x00,                   // Reserved\r
                                {\r
                                        SCSI_CMD_READ_CAPACITY_10,\r
                                        0x00,                   // Reserved\r
@@ -655,17 +655,17 @@ uint8_t MassStore_PreventAllowMediumRemoval(const uint8_t LUNIndex, const bool P
        /* Create a CBW with a SCSI command to issue PREVENT ALLOW MEDIUM REMOVAL command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
        /* Create a CBW with a SCSI command to issue PREVENT ALLOW MEDIUM REMOVAL command */\r
        SCSICommandBlock = (CommandBlockWrapper_t)\r
                {\r
-                       Header:\r
+                       .Header =\r
                                {\r
                                {\r
-                                       Signature:          CBW_SIGNATURE,\r
-                                       Tag:                MassStore_Tag,\r
-                                       DataTransferLength: 0,\r
-                                       Flags:              COMMAND_DIRECTION_DATA_OUT,\r
-                                       LUN:                LUNIndex,\r
-                                       SCSICommandLength:  6\r
+                                       .Signature          = CBW_SIGNATURE,\r
+                                       .Tag                = MassStore_Tag,\r
+                                       .DataTransferLength = 0,\r
+                                       .Flags              = COMMAND_DIRECTION_DATA_OUT,\r
+                                       .LUN                = LUNIndex,\r
+                                       .SCSICommandLength  = 6\r
                                },\r
                                        \r
                                },\r
                                        \r
-                       SCSICommandData:\r
+                       .SCSICommandData =\r
                                {\r
                                        SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL,\r
                                        0x00,                   // Reserved\r
                                {\r
                                        SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL,\r
                                        0x00,                   // Reserved\r
index 6a59b4d..a11ecc8 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Mouse_Host       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Mouse_Host       , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -250,11 +250,11 @@ TASK(USB_Mouse_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
@@ -300,11 +300,11 @@ TASK(USB_Mouse_Host)
                        /* HID class request to set the mouse protocol to the Boot Protocol */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* HID class request to set the mouse protocol to the Boot Protocol */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
-                                       bRequest:      REQ_SetProtocol,\r
-                                       wValue:        0,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),\r
+                                       .bRequest      = REQ_SetProtocol,\r
+                                       .wValue        = 0,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index 176f18c..68d6580 100644 (file)
@@ -49,11 +49,11 @@ uint8_t GetHIDReportData(void)
        \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
        \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),\r
-                       bRequest:      REQ_GetDescriptor,\r
-                       wValue:        (DTYPE_Report << 8),\r
-                       wIndex:        0,\r
-                       wLength:       HIDReportSize,\r
+                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_INTERFACE),\r
+                       .bRequest      = REQ_GetDescriptor,\r
+                       .wValue        = (DTYPE_Report << 8),\r
+                       .wIndex        = 0,\r
+                       .wLength       = HIDReportSize,\r
                };\r
 \r
        /* Select the control pipe for the request transfer */\r
                };\r
 \r
        /* Select the control pipe for the request transfer */\r
index 44c68ee..df063da 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Mouse_Host       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Mouse_Host       , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -187,11 +187,11 @@ TASK(USB_Mouse_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
index a127857..233e5b1 100644 (file)
@@ -265,11 +265,11 @@ uint8_t SImage_ClearPipeStall(const uint8_t EndpointNum)
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
 {\r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),\r
-                       bRequest:      REQ_ClearFeature,\r
-                       wValue:        FEATURE_ENDPOINT_HALT,\r
-                       wIndex:        EndpointNum,\r
-                       wLength:       0,\r
+                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_ENDPOINT),\r
+                       .bRequest      = REQ_ClearFeature,\r
+                       .wValue        = FEATURE_ENDPOINT_HALT,\r
+                       .wIndex        = EndpointNum,\r
+                       .wLength       = 0,\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
                };\r
        \r
        /* Select the control pipe for the request transfer */\r
index 3e5bf6a..4b196c3 100644 (file)
@@ -39,8 +39,8 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_SImage_Host      , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_SImage_Host      , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 \r
 };\r
 \r
 \r
@@ -153,11 +153,11 @@ TASK(USB_SImage_Host)
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        /* Standard request to set the device configuration to configuration 1 */\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetConfiguration,\r
-                                       wValue:        1,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetConfiguration,\r
+                                       .wValue        = 1,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
                                };\r
 \r
                        /* Select the control pipe for the request transfer */\r
@@ -211,11 +211,11 @@ TASK(USB_SImage_Host)
                        \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
                        \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
-                                       DataLength:    PIMA_COMMAND_SIZE(0),\r
-                                       Type:          CType_CommandBlock,\r
-                                       Code:          PIMA_OPERATION_GETDEVICEINFO,\r
-                                       TransactionID: 0x00000000,\r
-                                       Params:        {},\r
+                                       .DataLength    = PIMA_COMMAND_SIZE(0),\r
+                                       .Type          = CType_CommandBlock,\r
+                                       .Code          = PIMA_OPERATION_GETDEVICEINFO,\r
+                                       .TransactionID = 0x00000000,\r
+                                       .Params        = {},\r
                                };\r
                        \r
                        /* Send the GETDEVICEINFO block */\r
                                };\r
                        \r
                        /* Send the GETDEVICEINFO block */\r
@@ -290,11 +290,11 @@ TASK(USB_SImage_Host)
                        \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
                        \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
-                                       DataLength:    PIMA_COMMAND_SIZE(1),\r
-                                       Type:          CType_CommandBlock,\r
-                                       Code:          PIMA_OPERATION_OPENSESSION,\r
-                                       TransactionID: 0x00000000,\r
-                                       Params:        {0x00000001},\r
+                                       .DataLength    = PIMA_COMMAND_SIZE(1),\r
+                                       .Type          = CType_CommandBlock,\r
+                                       .Code          = PIMA_OPERATION_OPENSESSION,\r
+                                       .TransactionID = 0x00000000,\r
+                                       .Params        = {0x00000001},\r
                                };\r
                        \r
                        /* Send the OPENSESSION block, open a session with an ID of 0x0001 */\r
                                };\r
                        \r
                        /* Send the OPENSESSION block, open a session with an ID of 0x0001 */\r
@@ -318,11 +318,11 @@ TASK(USB_SImage_Host)
 \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
 \r
                        PIMA_SendBlock = (PIMA_Container_t)\r
                                {\r
-                                       DataLength:    PIMA_COMMAND_SIZE(1),\r
-                                       Type:          CType_CommandBlock,\r
-                                       Code:          PIMA_OPERATION_CLOSESESSION,\r
-                                       TransactionID: 0x00000001,\r
-                                       Params:        {0x00000001},\r
+                                       .DataLength    = PIMA_COMMAND_SIZE(1),\r
+                                       .Type          = CType_CommandBlock,\r
+                                       .Code          = PIMA_OPERATION_CLOSESESSION,\r
+                                       .TransactionID = 0x00000001,\r
+                                       .Params        = {0x00000001},\r
                                };\r
                        \r
                        /* Send the CLOSESESSION block, close the session with an ID of 0x0001 */\r
                                };\r
                        \r
                        /* Send the CLOSESESSION block, close the session with an ID of 0x0001 */\r
index d515567..caf6c91 100644 (file)
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                        \r
                        \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2040,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2040,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -71,37 +71,37 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
                        \r
                        \r
-                       TotalConfigurationSize: (  sizeof(USB_Descriptor_Configuration_Header_t)\r
-                                                + sizeof(USB_Descriptor_Interface_t)           ),\r
+                       .TotalConfigurationSize = (  sizeof(USB_Descriptor_Configuration_Header_t)\r
+                                                  + sizeof(USB_Descriptor_Interface_t)           ),\r
 \r
 \r
-                       TotalInterfaces:        1,\r
+                       .TotalInterfaces        = 1,\r
                        \r
                        \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                                \r
                                \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        1,\r
-                       AlternateSetting:       0,\r
+                       .InterfaceNumber        = 1,\r
+                       .AlternateSetting       = 0,\r
                                \r
                                \r
-                       TotalEndpoints:         0,\r
+                       .TotalEndpoints         = 0,\r
                        \r
                        \r
-                       Class:                  0xFF,\r
-                       SubClass:               0x00,\r
-                       Protocol:               0x00,\r
+                       .Class                  = 0xFF,\r
+                       .SubClass               = 0x00,\r
+                       .Protocol               = 0x00,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 };\r
 \r
                },\r
 };\r
 \r
@@ -111,9 +111,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  */ \r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  */ \r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -122,9 +122,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(11), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera"\r
+       .UnicodeString          = L"Dean Camera"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -133,9 +133,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(9), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(9), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"LUFA Demo"\r
+       .UnicodeString          = L"LUFA Demo"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
@@ -158,22 +158,22 @@ uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** c
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(DeviceDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Device_t);\r
                        break;\r
-               case DTYPE_Configuration:\r
+               case DTYPE_Configuration: \r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
                        Address = DESCRIPTOR_ADDRESS(ConfigurationDescriptor);\r
                        Size    = sizeof(USB_Descriptor_Configuration_t);\r
                        break;\r
-               case DTYPE_String:\r
+               case DTYPE_String: \r
                        switch (DescriptorNumber)\r
                        {\r
                        switch (DescriptorNumber)\r
                        {\r
-                               case 0x00:\r
+                               case 0x00: \r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(LanguageString);\r
                                        Size    = pgm_read_byte(&LanguageString.Header.Size);\r
                                        break;\r
-                               case 0x01:\r
+                               case 0x01: \r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ManufacturerString);\r
                                        Size    = pgm_read_byte(&ManufacturerString.Header.Size);\r
                                        break;\r
-                               case 0x02:\r
+                               case 0x02: \r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
                                        Address = DESCRIPTOR_ADDRESS(ProductString);\r
                                        Size    = pgm_read_byte(&ProductString.Header.Size);\r
                                        break;\r
index d5a7523..8c8a23f 100644 (file)
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: TestApp_CheckJoystick, TaskStatus: TASK_RUN  },\r
-       { Task: TestApp_CheckHWB     , TaskStatus: TASK_RUN  },\r
-       { Task: TestApp_CheckTemp    , TaskStatus: TASK_RUN  },\r
-       { Task: USB_USBTask          , TaskStatus: TASK_RUN  },\r
+       { .Task = TestApp_CheckJoystick, .TaskStatus = TASK_RUN  },\r
+       { .Task = TestApp_CheckHWB     , .TaskStatus = TASK_RUN  },\r
+       { .Task = TestApp_CheckTemp    , .TaskStatus = TASK_RUN  },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_RUN  },\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
 };\r
 \r
 /** Main program entry point. This routine configures the hardware required by the application, then\r
index d2f7fcb..38b666b 100644 (file)
@@ -55,6 +55,7 @@
   *  - Fixed incorrect HID interface class and subclass values in the Mouse and KeyboardMouse demos (thanks to Brian Dickman)\r
   *  - Capitalised the "Descriptor_Search" and "Descriptor_Search_Comp" prefixes of the values in the DSearch_Return_ErrorCodes_t and\r
   *    DSearch_Comp_Return_ErrorCodes_t enums\r
   *  - Fixed incorrect HID interface class and subclass values in the Mouse and KeyboardMouse demos (thanks to Brian Dickman)\r
   *  - Capitalised the "Descriptor_Search" and "Descriptor_Search_Comp" prefixes of the values in the DSearch_Return_ErrorCodes_t and\r
   *    DSearch_Comp_Return_ErrorCodes_t enums\r
+  *  - Changed over all deprecated GCC structure tag initializers to the standardized C99 format (thanks to Mike Alexander)\r
   *    \r
   *\r
   *  \section Sec_ChangeLog090401 Version 090401\r
   *    \r
   *\r
   *  \section Sec_ChangeLog090401 Version 090401\r
index c9f8c3c..dd782c8 100644 (file)
@@ -37,11 +37,11 @@ uint8_t USB_GetDeviceConfigDescriptor(uint16_t* const ConfigSizePtr, void* Buffe
 \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
 \r
        USB_HostRequest = (USB_Host_Request_Header_t)\r
                {\r
-                       bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                       bRequest:      REQ_GetDescriptor,\r
-                       wValue:        (DTYPE_Configuration << 8),\r
-                       wIndex:        0,\r
-                       wLength:       sizeof(USB_Descriptor_Configuration_Header_t),\r
+                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                       .bRequest      = REQ_GetDescriptor,\r
+                       .wValue        = (DTYPE_Configuration << 8),\r
+                       .wIndex        = 0,\r
+                       .wLength       = sizeof(USB_Descriptor_Configuration_Header_t),\r
                };\r
        \r
        Pipe_SelectPipe(PIPE_CONTROLPIPE);\r
                };\r
        \r
        Pipe_SelectPipe(PIPE_CONTROLPIPE);\r
index 80731ac..e1c0659 100644 (file)
@@ -171,11 +171,11 @@ static void USB_HostTask(void)
                case HOST_STATE_Default:\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                case HOST_STATE_Default:\r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_GetDescriptor,\r
-                                       wValue:        (DTYPE_Device << 8),\r
-                                       wIndex:        0,\r
-                                       wLength:       PIPE_CONTROLPIPE_DEFAULT_SIZE,\r
+                                       .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_GetDescriptor,\r
+                                       .wValue        = (DTYPE_Device << 8),\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = PIPE_CONTROLPIPE_DEFAULT_SIZE,\r
                                };\r
 \r
                        uint8_t DataBuffer[PIPE_CONTROLPIPE_DEFAULT_SIZE];\r
                                };\r
 \r
                        uint8_t DataBuffer[PIPE_CONTROLPIPE_DEFAULT_SIZE];\r
@@ -216,11 +216,11 @@ static void USB_HostTask(void)
                        \r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
                        \r
                        USB_HostRequest = (USB_Host_Request_Header_t)\r
                                {\r
-                                       bmRequestType: (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
-                                       bRequest:      REQ_SetAddress,\r
-                                       wValue:        USB_HOST_DEVICEADDRESS,\r
-                                       wIndex:        0,\r
-                                       wLength:       0,\r
+                                       .bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_STANDARD | REQREC_DEVICE),\r
+                                       .bRequest      = REQ_SetAddress,\r
+                                       .wValue        = USB_HOST_DEVICEADDRESS,\r
+                                       .wIndex        = 0,\r
+                                       .wLength       = 0,\r
                                };\r
 \r
                        if ((SubErrorCode = USB_Host_SendControlRequest(NULL)) != HOST_SENDCONTROL_Successful)\r
                                };\r
 \r
                        if ((SubErrorCode = USB_Host_SendControlRequest(NULL)) != HOST_SENDCONTROL_Successful)\r
index 4e2ffec..c4a58b4 100644 (file)
                         *\r
                         *  \ingroup Group_PipeRW\r
                         */\r
                         *\r
                         *  \ingroup Group_PipeRW\r
                         */\r
-                       static inline void Pipe_Ignore_DWord(void) ATTR_ALWAYS_INLINE;\r
-                       static inline void Pipe_Ignore_DWord(void)\r
+                       static inline void Pipe_Discard_DWord(void) ATTR_ALWAYS_INLINE;\r
+                       static inline void Pipe_Discard_DWord(void)\r
                        {\r
                                uint8_t Dummy;\r
                                \r
                        {\r
                                uint8_t Dummy;\r
                                \r
                        /** Spinloops until the currently selected non-control pipe is ready for the next packed of data\r
                         *  to be read or written to it.\r
                         *\r
                        /** Spinloops until the currently selected non-control pipe is ready for the next packed of data\r
                         *  to be read or written to it.\r
                         *\r
-                        *  \note This routine should not be called on CONTROL type pipes.\r
-                        *\r
                         *  \ingroup Group_PipeRW\r
                         *\r
                         *  \return A value from the Pipe_WaitUntilReady_ErrorCodes_t enum.\r
                         *  \ingroup Group_PipeRW\r
                         *\r
                         *  \return A value from the Pipe_WaitUntilReady_ErrorCodes_t enum.\r
index a91e0f3..4f1c822 100644 (file)
@@ -38,8 +38,8 @@ struct
        uint8_t Mem_Block_Flags[(NUM_BLOCKS / 4) + ((NUM_BLOCKS % 4) ? 1 : 0)];\r
        uint8_t FlagMaskLookupMask[4];\r
        uint8_t FlagMaskLookupNum[4];\r
        uint8_t Mem_Block_Flags[(NUM_BLOCKS / 4) + ((NUM_BLOCKS % 4) ? 1 : 0)];\r
        uint8_t FlagMaskLookupMask[4];\r
        uint8_t FlagMaskLookupNum[4];\r
-} Mem_MemData = {FlagMaskLookupMask:  {(3 << 0), (3 << 2), (3 << 4), (3 << 6)},\r
-                 FlagMaskLookupNum:   {      0,        2,        4,        6}};\r
+} Mem_MemData = {.FlagMaskLookupMask = {(3 << 0), (3 << 2), (3 << 4), (3 << 6)},\r
+                 .FlagMaskLookupNum  = {      0,        2,        4,        6}};\r
 \r
 static uint8_t Mem_GetBlockFlags(const Block_Number_t BlockNum)\r
 {\r
 \r
 static uint8_t Mem_GetBlockFlags(const Block_Number_t BlockNum)\r
 {\r
index beb0cb6..104f098 100644 (file)
@@ -54,7 +54,8 @@
  *    - All pipe read/write/discard aliases which did not have an explicitly endianness specifier (such as Pipe_Read_Word()) have\r
  *      been removed for clarity. Existing projects should use the "_LE" suffix on such calls to use the explicit Little Endian versions.\r
  *    - The Host_IsResetBusDone() macro has been renamed to Host_IsBusResetComplete().\r
  *    - All pipe read/write/discard aliases which did not have an explicitly endianness specifier (such as Pipe_Read_Word()) have\r
  *      been removed for clarity. Existing projects should use the "_LE" suffix on such calls to use the explicit Little Endian versions.\r
  *    - The Host_IsResetBusDone() macro has been renamed to Host_IsBusResetComplete().\r
- *    - The Pipe_Ignore_Word() function has been renamed to Pipe_Discard_Word() to remain consistent with the rest of the pipe API.\r
+ *    - The Pipe_Ignore_Word() and Pipe_Ignore_DWord() functions have been renamed to Pipe_Discard_Word() and Pipe_Discard_DWord() to remain\r
+ *      consistent with the rest of the pipe API.\r
  *    - It is no longer needed to manually include the headers from LUFA/Drivers/USB/Class, as they are now included along with the rest\r
  *      of the USB headers when LUFA/Drivers/USB/USB.h is included.\r
  *    - Functions in the ConfigDescriptor.h header file no longer have "Host_" as part of their names.\r
  *    - It is no longer needed to manually include the headers from LUFA/Drivers/USB/Class, as they are now included along with the rest\r
  *      of the USB headers when LUFA/Drivers/USB/USB.h is included.\r
  *    - Functions in the ConfigDescriptor.h header file no longer have "Host_" as part of their names.\r
index 1ef477c..0da80bb 100644 (file)
@@ -55,8 +55,8 @@
  *      \r
  *      TASK_LIST\r
  *      {\r
  *      \r
  *      TASK_LIST\r
  *      {\r
- *             { Task: MyTask1, TaskStatus: TASK_RUN, GroupID: 1  },\r
- *             { Task: MyTask2, TaskStatus: TASK_RUN, GroupID: 1  },\r
+ *             { .Task = MyTask1, .TaskStatus = TASK_RUN, .GroupID = 1  },\r
+ *             { .Task = MyTask2, .TaskStatus = TASK_RUN, .GroupID = 1  },\r
  *      }\r
  *\r
  *      int main(void)\r
  *      }\r
  *\r
  *      int main(void)\r
                         *  \code\r
                         *      TASK_LIST\r
                         *      {\r
                         *  \code\r
                         *      TASK_LIST\r
                         *      {\r
-                        *           { Task: MyTask1, TaskStatus: TASK_RUN, GroupID: 1 },\r
+                        *           { .Task = MyTask1, .TaskStatus = TASK_RUN, .GroupID = 1 },\r
                         *           // More task entries here\r
                         *      }\r
                         *  \endcode\r
                         *           // More task entries here\r
                         *      }\r
                         *  \endcode\r
index d5bbeb3..819b488 100644 (file)
@@ -78,24 +78,24 @@ USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
 {\r
-       Header:                 {Size: sizeof(USB_Descriptor_Device_t), Type: DTYPE_Device},\r
+       .Header                 = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
                \r
                \r
-       USBSpecification:       VERSION_BCD(01.10),\r
-       Class:                  0x00,\r
-       SubClass:               0x00,\r
-       Protocol:               0x00,\r
+       .USBSpecification       = VERSION_BCD(01.10),\r
+       .Class                  = 0x00,\r
+       .SubClass               = 0x00,\r
+       .Protocol               = 0x00,\r
                                \r
                                \r
-       Endpoint0Size:          8,\r
+       .Endpoint0Size          = 8,\r
                \r
                \r
-       VendorID:               0x03EB,\r
-       ProductID:              0x2042,\r
-       ReleaseNumber:          0x0000,\r
+       .VendorID               = 0x03EB,\r
+       .ProductID              = 0x2042,\r
+       .ReleaseNumber          = 0x0000,\r
                \r
                \r
-       ManufacturerStrIndex:   0x01,\r
-       ProductStrIndex:        0x02,\r
-       SerialNumStrIndex:      NO_DESCRIPTOR,\r
+       .ManufacturerStrIndex   = 0x01,\r
+       .ProductStrIndex        = 0x02,\r
+       .SerialNumStrIndex      = NO_DESCRIPTOR,\r
                \r
                \r
-       NumberOfConfigurations: 1\r
+       .NumberOfConfigurations = 1\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
 };\r
 \r
 /** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
@@ -105,56 +105,56 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
  */\r
 USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =\r
 {\r
-       Config:\r
+       .Config = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Configuration_Header_t), Type: DTYPE_Configuration},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
 \r
 \r
-                       TotalConfigurationSize: sizeof(USB_Descriptor_Configuration_t),\r
-                       TotalInterfaces:        1,\r
+                       .TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
+                       .TotalInterfaces        = 1,\r
                                \r
                                \r
-                       ConfigurationNumber:    1,\r
-                       ConfigurationStrIndex:  NO_DESCRIPTOR,\r
+                       .ConfigurationNumber    = 1,\r
+                       .ConfigurationStrIndex  = NO_DESCRIPTOR,\r
                                \r
                                \r
-                       ConfigAttributes:       (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
+                       .ConfigAttributes       = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
                        \r
                        \r
-                       MaxPowerConsumption:    USB_CONFIG_POWER_MA(100)\r
+                       .MaxPowerConsumption    = USB_CONFIG_POWER_MA(100)\r
                },\r
                \r
                },\r
                \r
-       Interface:\r
+       .Interface = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Interface_t), Type: DTYPE_Interface},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
 \r
 \r
-                       InterfaceNumber:        0x00,\r
-                       AlternateSetting:       0x00,\r
+                       .InterfaceNumber        = 0x00,\r
+                       .AlternateSetting       = 0x00,\r
                        \r
                        \r
-                       TotalEndpoints:         1,\r
+                       .TotalEndpoints         = 1,\r
                                \r
                                \r
-                       Class:                  0x03,\r
-                       SubClass:               0x01,\r
-                       Protocol:               0x01,\r
+                       .Class                  = 0x03,\r
+                       .SubClass               = 0x01,\r
+                       .Protocol               = 0x01,\r
                                \r
                                \r
-                       InterfaceStrIndex:      NO_DESCRIPTOR\r
+                       .InterfaceStrIndex      = NO_DESCRIPTOR\r
                },\r
 \r
                },\r
 \r
-       KeyboardHID:\r
+       .KeyboardHID = \r
                {  \r
                {  \r
-                       Header:                 {Size: sizeof(USB_Descriptor_HID_t), Type: DTYPE_HID},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_HID_t), .Type = DTYPE_HID},\r
                        \r
                        \r
-                       HIDSpec:                VERSION_BCD(01.11),\r
-                       CountryCode:            0x00,\r
-                       TotalHIDReports:        0x01,\r
-                       HIDReportType:          DTYPE_Report,\r
-                       HIDReportLength:        sizeof(KeyboardReport)\r
+                       .HIDSpec                = VERSION_BCD(01.11),\r
+                       .CountryCode            = 0x00,\r
+                       .TotalHIDReports        = 0x01,\r
+                       .HIDReportType          = DTYPE_Report,\r
+                       .HIDReportLength        = sizeof(KeyboardReport)\r
                },\r
                \r
                },\r
                \r
-       KeyboardEndpoint:\r
+       .KeyboardEndpoint = \r
                {\r
                {\r
-                       Header:                 {Size: sizeof(USB_Descriptor_Endpoint_t), Type: DTYPE_Endpoint},\r
+                       .Header                 = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
 \r
 \r
-                       EndpointAddress:        (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_EPNUM),\r
-                       Attributes:             EP_TYPE_INTERRUPT,\r
-                       EndpointSize:           KEYBOARD_EPSIZE,\r
-                       PollingIntervalMS:      0x04\r
+                       .EndpointAddress        = (ENDPOINT_DESCRIPTOR_DIR_IN | KEYBOARD_EPNUM),\r
+                       .Attributes             = EP_TYPE_INTERRUPT,\r
+                       .EndpointSize           = KEYBOARD_EPSIZE,\r
+                       .PollingIntervalMS      = 0x04\r
                },\r
 };\r
 \r
                },\r
 };\r
 \r
@@ -163,9 +163,9 @@ USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
  *  via the language ID table available at USB.org what languages the device supports for its string descriptors. */ \r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
  *  via the language ID table available at USB.org what languages the device supports for its string descriptors. */ \r
 USB_Descriptor_String_t PROGMEM LanguageString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(1), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          {LANGUAGE_ID_ENG}\r
+       .UnicodeString          = {LANGUAGE_ID_ENG}\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
 };\r
 \r
 /** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable\r
@@ -174,9 +174,9 @@ USB_Descriptor_String_t PROGMEM LanguageString =
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ManufacturerString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(32), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(32), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Dean Camera and Denver Gingerich"\r
+       .UnicodeString          = L"Dean Camera and Denver Gingerich"\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
 };\r
 \r
 /** Product descriptor string. This is a Unicode string containing the product's details in human readable form,\r
@@ -185,9 +185,9 @@ USB_Descriptor_String_t PROGMEM ManufacturerString =
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
  */\r
 USB_Descriptor_String_t PROGMEM ProductString =\r
 {\r
-       Header:                 {Size: USB_STRING_LEN(20), Type: DTYPE_String},\r
+       .Header                 = {.Size = USB_STRING_LEN(20), .Type = DTYPE_String},\r
                \r
                \r
-       UnicodeString:          L"Magnetic Card Reader"\r
+       .UnicodeString          = L"Magnetic Card Reader"\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
 };\r
 \r
 /** This function is called by the library when in device mode, and must be overridden (see StdDescriptors.h\r
index 9132a80..4511b1c 100644 (file)
@@ -40,9 +40,9 @@
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
 /* Scheduler Task List */\r
 TASK_LIST\r
 {\r
-       { Task: USB_USBTask          , TaskStatus: TASK_STOP },\r
-       { Task: USB_Keyboard_Report  , TaskStatus: TASK_STOP },\r
-       { Task: Magstripe_Read       , TaskStatus: TASK_STOP },\r
+       { .Task = USB_USBTask          , .TaskStatus = TASK_STOP },\r
+       { .Task = USB_Keyboard_Report  , .TaskStatus = TASK_STOP },\r
+       { .Task = Magstripe_Read       , .TaskStatus = TASK_STOP },\r
 };\r
 \r
 /* Global Variables */\r
 };\r
 \r
 /* Global Variables */\r