diff options
author | Kyle Moffett <Kyle.D.Moffett@boeing.com> | 2011-12-21 07:08:12 +0000 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2012-01-05 20:10:38 +0100 |
commit | 5dd95cf93dfffa1d19a1928990852aac9f55b9d9 (patch) | |
tree | 0c9b07b340e7ac07ea2eb0d151744bd4d05fef4c /drivers | |
parent | 46236b1407946aaed319551357703d487f82572e (diff) | |
download | u-boot-imx-5dd95cf93dfffa1d19a1928990852aac9f55b9d9.zip u-boot-imx-5dd95cf93dfffa1d19a1928990852aac9f55b9d9.tar.gz u-boot-imx-5dd95cf93dfffa1d19a1928990852aac9f55b9d9.tar.bz2 |
usb_storage: Fix EHCI "out of buffer pointers" with CD-ROM
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@boeing.com>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions