uint8_t UPCFG0XTemp;
uint8_t UPCFG1XTemp;
uint8_t UPCFG2XTemp;
- uint8_t UPCONXTemp;
- uint8_t UPINRQXTemp;
uint8_t UPIENXTemp;
Pipe_SelectPipe(PNum);
UPCFG0XTemp = ((Type << EPTYPE0) | Token | ((EndpointNumber & PIPE_EPNUM_MASK) << PEPNUM0));
UPCFG1XTemp = ((1 << ALLOC) | Banks | Pipe_BytesToEPSizeMask(Size));
UPCFG2XTemp = 0;
- UPCONXTemp = ((1 << PEN) | (1 << INMODE));
- UPINRQXTemp = 0;
UPIENXTemp = 0;
}
else
UPCFG0XTemp = UPCFG0X;
UPCFG1XTemp = UPCFG1X;
UPCFG2XTemp = UPCFG2X;
- UPCONXTemp = UPCONX;
- UPINRQXTemp = UPINRQX;
UPIENXTemp = UPIENX;
}
- Pipe_SetInfiniteINRequests();
-
if (!(UPCFG1XTemp & (1 << ALLOC)))
continue;
Pipe_DisablePipe();
- UPCFG1X &= (1 << ALLOC);
+ UPCFG1X &= ~(1 << ALLOC);
Pipe_EnablePipe();
UPCFG0X = UPCFG0XTemp;
UPCFG1X = UPCFG1XTemp;
UPCFG2X = UPCFG2XTemp;
- UPCONX = UPCONXTemp;
- UPINRQX = UPINRQXTemp;
UPIENX = UPIENXTemp;
+ Pipe_SetInfiniteINRequests();
+
if (!(Pipe_IsConfigured()))
return false;
}