On 11/16/2011 02:46 AM, Kevin O'Connor wrote:
Question on patch 4 - can you elaborate on why waittick is needed?
What happens is that if you do two consecutive OUT sends, the second fails ~90% of the time with a timeout in wait_td. I initially wanted to add the wait in usb-msc.c and only for writes, but there is no public interface for [uoe]hci_waittick.
The speed wasn't measurably different, but uhci is glacial anyway and I haven't tested ehci.
On patch 5, the READ CAPACITY is made unconditional. The intent was to only run READ CAPACITY on harddrives, because CDROMs need to get the info from the CD and it can take some time (eg, 10 seconds) to spin the CD up on real hardware.
Ah ok, so also the scsi_is_ready is something that you do not want on CDs (unless booting from them, in which case it is done by src/cdrom.c). Will adjust.
One wouldn't want their computer to boot longer just because they had a CD in the drive on boot. (BTW, the check for blksize==CDROM_SECTOR_SIZE to force a CDROM type was something I added when testing - to the best of my knowledge no drive requires it.)
Good, I'll remove it.
Paolo