coreboot/payloads/libpayload/drivers
Aaron Durbin 3c9d03d22d libpayload: usb mass storage detect empty media
There is currently a hard-coded 30 sec delay in the mass storage
driver while waiting for each device to become ready. However, mass
storage card readers that are empty return an error code on the
TEST UNIT READY command. A REQUEST SENSE command then needs to be
issued and interrogate the data to determine if no media is present.
If no media determination is found to be true the USB device is no
longer considered a candidate to be a disk.

This code does lead to the fact that the media card reader needs to be
populated at enumeration time. I suspect this is not an issue as it
appears the storage stack in libpayload can't handle removable media
coming online later.

BUG=chrome-os-partner:19596
BRANCH=None
TEST=Booted recovery and dev modes. Noted that removable mass storage
     devices with no media were ignored without any boot delay.

Change-Id: Ida7a45614d97c6e6fbfc9bb099765aad4df550fd
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/57828
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
2013-06-06 16:19:39 -07:00
..
storage libpayload: Export device count in storage interface 2012-11-14 17:39:03 +01:00
usb libpayload: usb mass storage detect empty media 2013-06-06 16:19:39 -07:00
video libpayload: If no video drivers initialize in video_init, return 1. 2013-03-13 23:06:14 +01:00
cbmem_console.c libpayload: Fix license headers 2013-02-20 02:41:24 +01:00
hid.c make keyboard reset driver generic (not pc keyboard driver dependent) 2010-03-25 18:52:24 +00:00
keyboard.c libpayload: Make keycode constants available outside of curses.h. 2013-03-18 20:45:48 +01:00
Makefile.inc libpayload: only compile drivers/serial.c on machines that use it. 2013-02-16 04:48:51 +01:00
nvram.c Since some people disapprove of white space cleanups mixed in regular commits 2010-04-27 06:56:47 +00:00
options.c libpayload: Fix lookup by label in CMOS layouts 2012-11-30 06:05:50 +01:00
pci.c [PATCH] libpayload: Fix the PCI search function 2008-10-20 16:52:06 +00:00
serial.c libpayload: If there's no IO address space, don't try to use it for serial 2013-03-13 23:05:06 +01:00
speaker.c Fix libpayload speaker driver 2011-10-27 10:49:41 +02:00