Add optional pipe double banking support to the Host mode Class drivers.
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / MIDI.c
index 69118cd..5d3b148 100644 (file)
@@ -35,7 +35,7 @@
 #include "MIDI.h"\r
 \r
 uint8_t MIDI_Host_ConfigurePipes(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceInfo, uint16_t ConfigDescriptorSize,\r
-                                 uint8_t* ConfigDescriptorData)\r
+                                 void* ConfigDescriptorData)\r
 {\r
        uint8_t FoundEndpoints = 0;\r
 \r
@@ -63,7 +63,8 @@ uint8_t MIDI_Host_ConfigurePipes(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceI
                if (EndpointData->EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)\r
                {\r
                        Pipe_ConfigurePipe(MIDIInterfaceInfo->Config.DataINPipeNumber, EP_TYPE_BULK, PIPE_TOKEN_IN,\r
-                                                          EndpointData->EndpointAddress, EndpointData->EndpointSize, PIPE_BANK_SINGLE);\r
+                                                          EndpointData->EndpointAddress, EndpointData->EndpointSize,\r
+                                                          MIDIInterfaceInfo->Config.DataINPipeDoubleBank ? PIPE_BANK_DOUBLE : PIPE_BANK_SINGLE);\r
                        MIDIInterfaceInfo->State.DataINPipeSize = EndpointData->EndpointSize;\r
                        \r
                        FoundEndpoints |= MIDI_FOUND_DATAPIPE_IN;\r
@@ -71,7 +72,8 @@ uint8_t MIDI_Host_ConfigurePipes(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceI
                else\r
                {\r
                        Pipe_ConfigurePipe(MIDIInterfaceInfo->Config.DataOUTPipeNumber, EP_TYPE_BULK, PIPE_TOKEN_OUT,\r
-                                                          EndpointData->EndpointAddress, EndpointData->EndpointSize, PIPE_BANK_SINGLE);\r
+                                                          EndpointData->EndpointAddress, EndpointData->EndpointSize,\r
+                                                          MIDIInterfaceInfo->Config.DataOUTPipeDoubleBank ? PIPE_BANK_DOUBLE : PIPE_BANK_SINGLE);\r
                        MIDIInterfaceInfo->State.DataOUTPipeSize = EndpointData->EndpointSize;\r
 \r
                        FoundEndpoints |= MIDI_FOUND_DATAPIPE_OUT;\r