summaryrefslogtreecommitdiff
path: root/firmware/usbstack (follow)
Commit message (Collapse)AuthorAge
* Sending an empty data block before sending the FAIL CSW seems to make ↵Frank Gevaerts2008-03-22
| | | | | | 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
* move boosting for usb around a bit, so the cpu is boosted for the entire ↵Frank Gevaerts2008-03-20
| | | | | | 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
* fix SCSI_FORMAT_CAPACITY_FORMATTED_MEDIA flag endianness. Thanks to Martin ↵Frank Gevaerts2008-03-18
| | | | | | Ritter for spotting this git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16694 a1c6a512-1295-4272-9138-f99709370657
* Only boost the CPU for large transactions. It would be nice to get rid of ↵Frank Gevaerts2008-03-13
| | | | | | 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
* fix the last warningFrank Gevaerts2008-03-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16622 a1c6a512-1295-4272-9138-f99709370657
* remember to test a bit more when doing larger changes...Frank Gevaerts2008-03-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16621 a1c6a512-1295-4272-9138-f99709370657
* make the usb storage driver handle hotswap correctly, and exit the usb ↵Frank Gevaerts2008-03-10
| | | | | | 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
* make usb_serial work again. Also know as "make sure arrays are allocated at ↵Frank Gevaerts2008-03-10
| | | | | | their correct size" git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16615 a1c6a512-1295-4272-9138-f99709370657
* reorganise the usb stack to provide a clean separation between core and ↵Frank Gevaerts2008-03-06
| | | | | | class drivers git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16541 a1c6a512-1295-4272-9138-f99709370657
* handle interface-specific control requests a bit more cleanlyFrank Gevaerts2008-03-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16519 a1c6a512-1295-4272-9138-f99709370657
* Oops. Didn't mean to commit this.Barry Wardell2008-03-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16515 a1c6a512-1295-4272-9138-f99709370657
* Only need to include these for e200.Barry Wardell2008-03-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16514 a1c6a512-1295-4272-9138-f99709370657
* present a different USB serial number depending on which USB class drivers ↵Frank Gevaerts2008-03-04
| | | | | | are enabled. This is needed for Windows to correctly detect the device if a different set of drivers is active than on the previous plugin git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16511 a1c6a512-1295-4272-9138-f99709370657
* MODE SENSE output data length field has to be the length of the response ↵Frank Gevaerts2008-03-04
| | | | | | excluding the length field. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16508 a1c6a512-1295-4272-9138-f99709370657
* fix endianness bug in MODE SENSE 10 responseFrank Gevaerts2008-03-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16507 a1c6a512-1295-4272-9138-f99709370657
* handle START_STOP_UNIT eject command, to make TEST_UNIT_READY return false ↵Frank Gevaerts2008-03-03
| | | | | | once the OS ejects git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16503 a1c6a512-1295-4272-9138-f99709370657
* mark all drives as DEVICE_REMOVABLE to make mac osx (and some developers) happyFrank Gevaerts2008-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16502 a1c6a512-1295-4272-9138-f99709370657
* fix wrong building block_count from read and write commandsFrank Gevaerts2008-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16501 a1c6a512-1295-4272-9138-f99709370657
* remove usb_benchmark. Its usefulness is extremely limited, and the usb stack ↵Frank Gevaerts2008-03-03
| | | | | | around it is moving fast, so it's likely to suffer from bit rot very soon. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16500 a1c6a512-1295-4272-9138-f99709370657
* only send a Charging Only interface if nothing else is sentFrank Gevaerts2008-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16499 a1c6a512-1295-4272-9138-f99709370657
* remove stalls that are optional. This makes osx not crash on disconnectFrank Gevaerts2008-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16498 a1c6a512-1295-4272-9138-f99709370657
* extra input checkingFrank Gevaerts2008-03-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16493 a1c6a512-1295-4272-9138-f99709370657
* remove a reundant MIN(), and reduce the buffer. We really don't need 16k for ↵Frank Gevaerts2008-03-02
| | | | | | this. It seems to work reliably at full speed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16491 a1c6a512-1295-4272-9138-f99709370657
* add some #ifdefs to gt rid of some unused variable warnings (and their RAM use)Frank Gevaerts2008-03-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16487 a1c6a512-1295-4272-9138-f99709370657
* implement logf over usb-serial. Needs USB_SERIAL defined in usb_core.h to ↵Frank Gevaerts2008-03-02
| | | | | | | | | work, and needs to be enabled in the debug menu. It stops sending data after a while for unknown reasons. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16486 a1c6a512-1295-4272-9138-f99709370657
* update the bNumInterfaces field in the configuration descriptor correctlyFrank Gevaerts2008-03-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16485 a1c6a512-1295-4272-9138-f99709370657
* Only show the usb screen once a real usb connection is established. In case ↵Frank Gevaerts2008-03-02
| | | | | | 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
* only initialize class drivers that are actually enabled. This is needed for ↵Frank Gevaerts2008-03-01
| | | | | | usb-storage because it grabs the audio buffer during usb_storage_init(), which stops playback. It's probably also the right thing to do for other drivers. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16467 a1c6a512-1295-4272-9138-f99709370657
* Move all pointers to the transfer buffer area into a union. This makes it ↵Frank Gevaerts2008-02-29
| | | | | | 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
* return real data on MODE_SENSE. This might fix the mac osx problemsFrank Gevaerts2008-02-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16457 a1c6a512-1295-4272-9138-f99709370657
* fix alignment and packed-ness of USB structsFrank Gevaerts2008-02-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16455 a1c6a512-1295-4272-9138-f99709370657
* - some SCSI/UMS fixesFrank Gevaerts2008-02-28
| | | | | | | | - 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
* make the ipod serial number 24 characters long. This makes the Vista BSOD go ↵Frank Gevaerts2008-02-27
| | | | | | away git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16438 a1c6a512-1295-4272-9138-f99709370657
* use get_audio_buffer() to allocate all needed buffer stace for the usb ↵Frank Gevaerts2008-02-27
| | | | | | storage driver git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16437 a1c6a512-1295-4272-9138-f99709370657
* move the usb_core thread functionality to the main usb threadFrank Gevaerts2008-02-27
| | | | | | | | | fix button-detection so screenshots and charge-only mode work without enabling UMS firewire detection is now handled separately from usb detection increase the usb thread priority while an UMS connection is active git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16435 a1c6a512-1295-4272-9138-f99709370657
* added support for USB port test modes, which are (a) required by the spec, ↵Frank Gevaerts2008-02-26
| | | | | | and (b) needed for electrical (i.e. signal quality) testing git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16427 a1c6a512-1295-4272-9138-f99709370657
* some progress towards software-selectability of usb class drivers.Frank Gevaerts2008-02-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16422 a1c6a512-1295-4272-9138-f99709370657
* only set the serial descriptor onceFrank Gevaerts2008-02-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16421 a1c6a512-1295-4272-9138-f99709370657
* Don't send a serial number id USE_ROCKBOX_USB. There is something about the ↵Frank Gevaerts2008-02-25
| | | | | | current ipod serial number that causes Vista BSODs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16416 a1c6a512-1295-4272-9138-f99709370657
* report usb 1.1 compliance if USE_HIGH_SPEED is not set. This should avoid ↵Frank Gevaerts2008-02-24
| | | | | | Windows telling the user to plug in the device into a high speed port git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16406 a1c6a512-1295-4272-9138-f99709370657
* Identify info endianness is already handled in the ATA driver.Jens Arnold2008-02-23
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16380 a1c6a512-1295-4272-9138-f99709370657
* - Attempt to generate the usb serial number from the disk serial numberFrank Gevaerts2008-02-22
| | | | | | | - serial number length is again target dependent git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16374 a1c6a512-1295-4272-9138-f99709370657
* fix usb string descriptorsFrank Gevaerts2008-02-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16372 a1c6a512-1295-4272-9138-f99709370657
* Improve usb descriptor handling. This should fix any cache and/or alignment ↵Frank Gevaerts2008-02-22
| | | | | | related problem. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16371 a1c6a512-1295-4272-9138-f99709370657
* fix wrong LBA range check with sectorsizes larger than 512 bytesFrank Gevaerts2008-02-21
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16362 a1c6a512-1295-4272-9138-f99709370657
* Major USB stack improvements. It now works at nearly the maximum speed for a ↵Frank Gevaerts2008-02-20
| | | | | | | | | 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
* Optimise (replace two loops with one) and bug-fix the ProductId string ↵Dave Chapman2008-02-11
| | | | | | 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
* Removed compiler warningBjörn Stenberg2008-02-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16280 a1c6a512-1295-4272-9138-f99709370657
* Major USB fixes by Frank Gevaerts. Still disabled in builds, #define ↵Björn Stenberg2008-02-11
| | | | | | USE_ROCKBOX_USB to test. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16279 a1c6a512-1295-4272-9138-f99709370657
* Add a working serial driver to usb stack. At the moment it simply echos back ↵Christian Gmeiner2007-11-30
| | | | | | | | | | | | | what it gets. You can test it on linux by 0) change relevant defines in usb_core.c 1) modprobe usbserial vendor=0x0781 product=0x7421 debug=1 2) picocom /dev/ttyUSB0 3) look at your logf screen if you build with logf support and enabled LOGF_ENABLE define in usb_serial.c I also modified usb_core so that storage and serial both can make use the the 'usb_core'-thread. More will come :) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15850 a1c6a512-1295-4272-9138-f99709370657