[U-Boot] [PATCH v2 3/3] usb_storage: Fix EHCI "out of buffer pointers" with CD-ROM

Wolfgang Denk wd at denx.de
Thu Jan 5 17:16:27 CET 2012


Dear Kyle Moffett,

In message <1324487292-7299-4-git-send-email-Kyle.D.Moffett at boeing.com> you wrote:
> When performing large bulk reads from a CD or DVD using the U-Boot
> usb_storage driver, it generates requests of up to 20 blocks at a time.
> 
> With a standard 512-byte block size, that is 10240 bytes and within the
> limit of U-Boot's EHCI driver (maximum 5 pages at 4k per page).
> 
> Unfortunately CD-ROM media has a 2048-byte blocksize, resulting in a
> maximum transfer size of 40960 bytes, which does not fit.
> 
> Since the EHCI specification is impossibly obtuse and far beyond my
> comprehension, I chose to dynamically compute the limit based on the
> blocksize.
> 
> Signed-off-by: Kyle Moffett <Kyle.D.Moffett at boeing.com>
> 
> --
> 
> v2:
> Minor whitespace fixes
> 
> ---
>  common/usb_storage.c |   45 +++++++++++++++++++++++++--------------------
>  1 files changed, 25 insertions(+), 20 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"An organization dries up if you don't challenge it with growth."
       - Mark Shepherd, former President and CEO of Texas Instruments


More information about the U-Boot mailing list