Commit graph

79 commits

Author SHA1 Message Date
Frank Gevaerts
688f8decf4 Clean up the way empty transfers are sent in error cases.
correctly zero out all data that gets sent to the host
I'm just committing this. The actual work was done by Martin Ritter (thanks)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16922 a1c6a512-1295-4272-9138-f99709370657
2008-04-01 20:36:51 +00:00
Frank Gevaerts
ecde125fa7 Sending an empty data block before sending the FAIL CSW seems to make Windows happier if a device is not present (e.g. an empty sd card slot) (fix proposed by Martin Ritter)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16750 a1c6a512-1295-4272-9138-f99709370657
2008-03-22 21:21:37 +00:00
Frank Gevaerts
ea5903dbf1 move boosting for usb around a bit, so the cpu is boosted for the entire duration of actual use of storage. On some setups just boosting for the actual transfers doesn't seem to work
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16726 a1c6a512-1295-4272-9138-f99709370657
2008-03-20 22:05:11 +00:00
Frank Gevaerts
455fabfcb8 fix SCSI_FORMAT_CAPACITY_FORMATTED_MEDIA flag endianness. Thanks to Martin Ritter for spotting this
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16694 a1c6a512-1295-4272-9138-f99709370657
2008-03-18 10:16:27 +00:00
Frank Gevaerts
7fcd26e479 Only boost the CPU for large transactions. It would be nice to get rid of boosting for USB altogehter, but it doesn't seem to work then.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16656 a1c6a512-1295-4272-9138-f99709370657
2008-03-13 19:56:52 +00:00
Frank Gevaerts
292f139f4c fix the last warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16622 a1c6a512-1295-4272-9138-f99709370657
2008-03-10 21:28:44 +00:00
Frank Gevaerts
a0290607e0 remember to test a bit more when doing larger changes...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16621 a1c6a512-1295-4272-9138-f99709370657
2008-03-10 21:16:31 +00:00
Frank Gevaerts
745133014e make the usb storage driver handle hotswap correctly, and exit the usb screen once all drives are "ejected" (either as a command from the OS or physically)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16617 a1c6a512-1295-4272-9138-f99709370657
2008-03-10 20:55:24 +00:00
Frank Gevaerts
f0b4a32d6f reorganise the usb stack to provide a clean separation between core and class drivers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16541 a1c6a512-1295-4272-9138-f99709370657
2008-03-06 21:25:09 +00:00
Barry Wardell
4c67c334fe Oops. Didn't mean to commit this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16515 a1c6a512-1295-4272-9138-f99709370657
2008-03-04 14:40:04 +00:00
Barry Wardell
46973f7f9f Only need to include these for e200.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16514 a1c6a512-1295-4272-9138-f99709370657
2008-03-04 14:36:22 +00:00
Frank Gevaerts
931ceed47f MODE SENSE output data length field has to be the length of the response excluding the length field.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16508 a1c6a512-1295-4272-9138-f99709370657
2008-03-04 00:55:26 +00:00
Frank Gevaerts
19815f8197 fix endianness bug in MODE SENSE 10 response
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16507 a1c6a512-1295-4272-9138-f99709370657
2008-03-04 00:46:52 +00:00
Frank Gevaerts
6cfa909002 handle START_STOP_UNIT eject command, to make TEST_UNIT_READY return false once the OS ejects
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16503 a1c6a512-1295-4272-9138-f99709370657
2008-03-03 22:53:25 +00:00
Frank Gevaerts
81d3a02928 mark all drives as DEVICE_REMOVABLE to make mac osx (and some developers) happy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16502 a1c6a512-1295-4272-9138-f99709370657
2008-03-03 22:19:38 +00:00
Frank Gevaerts
ebb49434c6 fix wrong building block_count from read and write commands
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16501 a1c6a512-1295-4272-9138-f99709370657
2008-03-03 22:17:21 +00:00
Frank Gevaerts
a9afca99a8 remove stalls that are optional. This makes osx not crash on disconnect
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16498 a1c6a512-1295-4272-9138-f99709370657
2008-03-03 12:38:15 +00:00
Frank Gevaerts
f18d20ee36 Only show the usb screen once a real usb connection is established. In case other threads are slow in acknowledging the SYS_USB_CONNECTED message, tell the OS that the disk is not ready yet (the OS interprets this as "spinning up")
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16471 a1c6a512-1295-4272-9138-f99709370657
2008-03-02 00:15:02 +00:00
Frank Gevaerts
8865490106 Move all pointers to the transfer buffer area into a union. This makes it clear that they are meant to point to the same data, and should make code and RAM usage slightly smaller
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16458 a1c6a512-1295-4272-9138-f99709370657
2008-02-29 21:10:31 +00:00
Frank Gevaerts
d8df26abfb return real data on MODE_SENSE. This might fix the mac osx problems
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16457 a1c6a512-1295-4272-9138-f99709370657
2008-02-29 19:25:14 +00:00
Frank Gevaerts
2662f1b3ce - some SCSI/UMS fixes
- don't boost the CPU any more. The USB driver does that
- only mark the SD-card slot on sansas removable (decision on what is the right thing to do is still pending)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16448 a1c6a512-1295-4272-9138-f99709370657
2008-02-28 22:35:23 +00:00
Frank Gevaerts
1341ae3a24 use get_audio_buffer() to allocate all needed buffer stace for the usb storage driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16437 a1c6a512-1295-4272-9138-f99709370657
2008-02-27 20:25:32 +00:00
Frank Gevaerts
e744dd4353 fix wrong LBA range check with sectorsizes larger than 512 bytes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16362 a1c6a512-1295-4272-9138-f99709370657
2008-02-21 11:59:17 +00:00
Frank Gevaerts
07427592a9 Major USB stack improvements. It now works at nearly the maximum speed for a full speed connection, and does seem stable.
Still not enabled by default, #define USE_ROCKBOX_USB is still required to enable it.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16360 a1c6a512-1295-4272-9138-f99709370657
2008-02-20 22:54:26 +00:00
Dave Chapman
fe4ffbd94c Optimise (replace two loops with one) and bug-fix the ProductId string returned by SCSI Inquiry - the previous code was skipping 4 shorts (the first 8 chars) of the ProductId.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16285 a1c6a512-1295-4272-9138-f99709370657
2008-02-11 18:08:21 +00:00
Björn Stenberg
8545c3bdcf Removed compiler warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16280 a1c6a512-1295-4272-9138-f99709370657
2008-02-11 14:38:43 +00:00
Björn Stenberg
2f7cffa204 Major USB fixes by Frank Gevaerts. Still disabled in builds, #define USE_ROCKBOX_USB to test.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16279 a1c6a512-1295-4272-9138-f99709370657
2008-02-11 14:26:25 +00:00
Björn Stenberg
d2b86885d5 Fixed memory corruption bug for those testing usb_storage.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15798 a1c6a512-1295-4272-9138-f99709370657
2007-11-24 22:40:37 +00:00
Björn Stenberg
b4e5123e5d New USB stack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15758 a1c6a512-1295-4272-9138-f99709370657
2007-11-22 20:51:00 +00:00