Fixed Still Image Host class driver exiting the descriptor search routine prematurely if the data pipes (but not event pipe) is found.

Fixed missing call to Pipe_SetInfiniteINRequests() in the Pipe_ConfigurePipe() routine.
Dean Camera 14 years ago
parent 8c6f26e19d
commit c1c94fe5a0
  1. 2
      LUFA/Drivers/USB/Class/Host/StillImage.c
  2. 2
      LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.c

@ -51,7 +51,7 @@ uint8_t SI_Host_ConfigurePipes(USB_ClassInfo_SI_Host_t* const SIInterfaceInfo,
if (DESCRIPTOR_TYPE(ConfigDescriptorData) != DTYPE_Configuration)
return SI_ENUMERROR_InvalidConfigDescriptor;
while (!(DataINEndpoint) || !(DataOUTEndpoint))
while (!(DataINEndpoint) || !(DataOUTEndpoint) || !(EventsEndpoint))
{
if (!(StillImageInterface) ||
USB_GetNextDescriptorComp(&ConfigDescriptorSize, &ConfigDescriptorData,

@ -87,6 +87,8 @@ bool Pipe_ConfigurePipe(const uint8_t Number,
UPIENXTemp = UPIENX;
}
Pipe_SetInfiniteINRequests();
if (!(UPCFG1XTemp & (1 << ALLOC)))
continue;

Loading…
Cancel
Save