libpayload: Reduce media init timeout to 5 seconds.

Currently, we wait for up to 30 seconds for a device to become ready to
respond to a TEST_UNIT_READY command. In practice, all media devices become
ready much sooner. But, certain devices do not function with libpayload's
USB driver, and always timeout. To provide a better user experience when
booting with such devices, reduce the timeout to 5 seconds.

BUG=chrome-os-partner:22345
TEST=Manual on Peppy w/ FCR-HS3 SD card reader. Verify that timeout is
reduced to ~5 seconds. Also verify that various external media devices
continue to boot.

Change-Id: Icceab99fa266cdf441847627087eaa5de9b88ecc
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/169209
This commit is contained in:
Shawn Nematbakhsh 2013-09-12 18:23:09 -07:00 committed by chrome-internal-fetch
commit 9e55204e92

View file

@ -539,8 +539,10 @@ usb_msc_test_unit_ready (usbdev_t *dev)
int i;
time_t start_time_secs;
struct timeval tv;
/* SCSI/ATA specs say we have to wait up to 30s. Ugh */
const int timeout_secs = 30;
/* SCSI/ATA specs say we have to wait up to 30s, but most devices
* are ready much sooner. Use a 5 sec timeout to better accomodate
* devices which fail to respond. */
const int timeout_secs = 5;
usb_debug (" Waiting for device to become ready...");