Exemple #1
0
static int GeckoRead(int connection, u8 *buf, u32 len, u32 tout) // timeout in msec
	{
	u32 read = 0;
	s32 ret = 0;
	u32 t;
	
	t = ticks_to_millisecs(gettime()) + tout;

	while (read < len)
		{
		ret = usb_recvbuffer_safe_ex(connection,  buf + read, len - read, 500);
		
		if (ret > 0)
			{
			t = ticks_to_millisecs(gettime()) + tout;
			read += ret;
			}
		else
			usleep (1000);
			
		if (ticks_to_millisecs(gettime()) > t)
			break;
		}
	
	return read;
	}
Exemple #2
0
int usb_recvbuffer_safe(s32 chn,void *buffer,int size) {
	return usb_recvbuffer_safe_ex(chn, buffer, size, -1);
}