diff options
Diffstat (limited to 'cpu/arm920t/usb_ohci.c')
| -rw-r--r-- | cpu/arm920t/usb_ohci.c | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/cpu/arm920t/usb_ohci.c b/cpu/arm920t/usb_ohci.c index 41ba233c4..55af0348d 100644 --- a/cpu/arm920t/usb_ohci.c +++ b/cpu/arm920t/usb_ohci.c @@ -1197,8 +1197,15 @@ int submit_common_msg(struct usb_device *dev, unsigned long pipe, void *buffer,  	wait_ms(10);  	/* ohci_dump_status(&gohci); */ +	 +	/* allow more time for a BULK device to react - some are slow */ +#define BULK_TO	 2000	/* timeout in milliseconds */ +	if (usb_pipetype (pipe) == PIPE_BULK) +		timeout = BULK_TO; +	else +		timeout = 100; +  	/* wait for it to complete */ -	timeout = 100;  	for (;;) {  		/* check whether the controller is done */  		stat = hc_interrupt(); |