diff --git a/LUFA/DoxygenPages/ChangeLog.txt b/LUFA/DoxygenPages/ChangeLog.txt index 5b8f190cfd..28f710df42 100644 --- a/LUFA/DoxygenPages/ChangeLog.txt +++ b/LUFA/DoxygenPages/ChangeLog.txt @@ -39,6 +39,7 @@ * - USB_CONFIG_ATTR_BUSPOWERED constant renamed to USB_CONFIG_ATTR_RESERVED, as this was misnamed (thanks to NXP Semiconductors) * - Reordered board name definition indexes so that a mispelled BOARD compile option will default to BOARD_USER rather than BOARD_USBKEY * - Altered the HID class driver to only try to construct at maximum one packet per USB frame, to reduce CPU usage + * - All USB Class Driver configuration struct values are now non-const, to allow for run-time modifications if required before configuring an instance * - Library Applications: * - Altered the Mass Storage Host LowLevel demo so that SCSI data STALLs from the attached device can be recovered from automatically without * having to reset the Mass Storage interface diff --git a/LUFA/Drivers/USB/Class/Device/AudioClassDevice.h b/LUFA/Drivers/USB/Class/Device/AudioClassDevice.h index 8a146ef4be..dad177e043 100644 --- a/LUFA/Drivers/USB/Class/Device/AudioClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/AudioClassDevice.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t StreamingInterfaceNumber; /**< Index of the Audio Streaming interface within the device this * structure controls. diff --git a/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h b/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h index 6e005efbf9..998b0a7380 100644 --- a/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h @@ -96,7 +96,7 @@ */ typedef struct { - const struct + struct { uint8_t ControlInterfaceNumber; /**< Interface number of the CDC control interface within the device. */ diff --git a/LUFA/Drivers/USB/Class/Device/HIDClassDevice.h b/LUFA/Drivers/USB/Class/Device/HIDClassDevice.h index 95389f3713..a6361c6b0f 100644 --- a/LUFA/Drivers/USB/Class/Device/HIDClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/HIDClassDevice.h @@ -81,7 +81,7 @@ */ typedef struct { - const struct + struct { uint8_t InterfaceNumber; /**< Interface number of the HID interface within the device. */ diff --git a/LUFA/Drivers/USB/Class/Device/MIDIClassDevice.h b/LUFA/Drivers/USB/Class/Device/MIDIClassDevice.h index 791038e296..4fe49af1f9 100644 --- a/LUFA/Drivers/USB/Class/Device/MIDIClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/MIDIClassDevice.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t StreamingInterfaceNumber; /**< Index of the Audio Streaming interface within the device this structure controls. */ @@ -94,7 +94,7 @@ struct { - // No state information for this class + uint8_t RESERVED; // No state information for this class } State; /**< State data for the USB class interface within the device. All elements in this section * are reset to their defaults when the interface is enumerated. */ diff --git a/LUFA/Drivers/USB/Class/Device/MassStorageClassDevice.h b/LUFA/Drivers/USB/Class/Device/MassStorageClassDevice.h index e676a97528..c2d536ce2a 100644 --- a/LUFA/Drivers/USB/Class/Device/MassStorageClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/MassStorageClassDevice.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t InterfaceNumber; /**< Interface number of the Mass Storage interface within the device. */ diff --git a/LUFA/Drivers/USB/Class/Device/RNDISClassDevice.h b/LUFA/Drivers/USB/Class/Device/RNDISClassDevice.h index b1fd35f975..ccd20e38e8 100644 --- a/LUFA/Drivers/USB/Class/Device/RNDISClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/RNDISClassDevice.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t ControlInterfaceNumber; /**< Interface number of the RNDIS control interface within the device. */ diff --git a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c index b0746fdcac..cc70589375 100644 --- a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c +++ b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c @@ -41,6 +41,8 @@ bool AOA_Host_ValidateAccessoryDevice(USB_ClassInfo_AOA_Host_t* const AOAInterfa const USB_Descriptor_Device_t* const DeviceDescriptor, bool* const NeedModeSwitch) { + (void)AOAInterfaceInfo; + if (DeviceDescriptor->Header.Type != DTYPE_Device) return false; diff --git a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h index 68947893b0..d98134281d 100644 --- a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h @@ -83,7 +83,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the AOA interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the AOA interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/AudioClassHost.h b/LUFA/Drivers/USB/Class/Host/AudioClassHost.h index a7f87db2da..a6e425d5f5 100644 --- a/LUFA/Drivers/USB/Class/Host/AudioClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/AudioClassHost.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the Audio interface's IN data pipe. If this interface should not * bind to an IN endpoint, this may be set to 0 to disable audio input streaming for diff --git a/LUFA/Drivers/USB/Class/Host/CDCClassHost.h b/LUFA/Drivers/USB/Class/Host/CDCClassHost.h index 7adcbb5ec1..0beb5b1da2 100644 --- a/LUFA/Drivers/USB/Class/Host/CDCClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/CDCClassHost.h @@ -79,7 +79,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the CDC interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the CDC interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/HIDClassHost.h b/LUFA/Drivers/USB/Class/Host/HIDClassHost.h index e5b8cf506f..2e88679f25 100644 --- a/LUFA/Drivers/USB/Class/Host/HIDClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/HIDClassHost.h @@ -81,7 +81,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the HID interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the HID interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/MIDIClassHost.h b/LUFA/Drivers/USB/Class/Host/MIDIClassHost.h index 0fd8033195..e934ddacbb 100644 --- a/LUFA/Drivers/USB/Class/Host/MIDIClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/MIDIClassHost.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the MIDI interface's streaming IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the MIDI interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/MassStorageClassHost.h b/LUFA/Drivers/USB/Class/Host/MassStorageClassHost.h index b123ea27ab..25d7e1e5e2 100644 --- a/LUFA/Drivers/USB/Class/Host/MassStorageClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/MassStorageClassHost.h @@ -81,7 +81,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the Mass Storage interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the Mass Storage interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/PrinterClassHost.h b/LUFA/Drivers/USB/Class/Host/PrinterClassHost.h index 955d5143c1..4d9baf0fa2 100644 --- a/LUFA/Drivers/USB/Class/Host/PrinterClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/PrinterClassHost.h @@ -77,7 +77,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the Printer interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the Printer interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/RNDISClassHost.h b/LUFA/Drivers/USB/Class/Host/RNDISClassHost.h index 9e119ccdb2..085bde22cf 100644 --- a/LUFA/Drivers/USB/Class/Host/RNDISClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/RNDISClassHost.h @@ -78,7 +78,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the RNDIS interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the RNDIS interface's IN data pipe should use double banking. */ diff --git a/LUFA/Drivers/USB/Class/Host/StillImageClassHost.h b/LUFA/Drivers/USB/Class/Host/StillImageClassHost.h index f10e8fe657..4cda70d2e6 100644 --- a/LUFA/Drivers/USB/Class/Host/StillImageClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/StillImageClassHost.h @@ -81,7 +81,7 @@ */ typedef struct { - const struct + struct { uint8_t DataINPipeNumber; /**< Pipe number of the Still Image interface's IN data pipe. */ bool DataINPipeDoubleBank; /**< Indicates if the Still Image interface's IN data pipe should use double banking. */