Commit graph

33 commits

Author SHA1 Message Date
Michael Sevakis
05f6f3419a Add a higher level USB detection that prevents fraudulent bus resets from causing USB mode to be entered. Enable for SA9200 only at this time. Also, for SA9200, use the bus power GPIO rather than the 'connector inserted' GPIO to detect the cable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29068 a1c6a512-1295-4272-9138-f99709370657
2011-01-17 12:24:41 +00:00
Rafaël Carré
520baf0b6a usb_drv_reset() is only used in usb-drv-arc.c
remove from usb_drv.h and mark static

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28092 a1c6a512-1295-4272-9138-f99709370657
2010-09-16 05:46:24 +00:00
Amaury Pouly
1dd216ba06 Fix usb-arc driver: the driver would prematurely mark a transfer as complete whereas only a part of it actually is, check the active of the TDs to avoid that. This should fix some HID+UMS bugs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25328 a1c6a512-1295-4272-9138-f99709370657
2010-03-25 13:45:19 +00:00
Amaury Pouly
c7517f5662 Add experimental support for isochronous transfers in the usb ARC driver. There are several details to tweaks however.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25130 a1c6a512-1295-4272-9138-f99709370657
2010-03-12 10:59:34 +00:00
Andree Buschmann
56d972ad57 Fix tabs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24153 a1c6a512-1295-4272-9138-f99709370657
2010-01-03 10:19:43 +00:00
Jeffrey Goode
9d842683eb Comment out LOGF_ENABLE defines everywhere, replace evil comments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23497 a1c6a512-1295-4272-9138-f99709370657
2009-11-03 16:25:03 +00:00
Frank Gevaerts
e98c198fd8 don't treat extremely quick transfers as errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22294 a1c6a512-1295-4272-9138-f99709370657
2009-08-13 18:50:43 +00:00
Frank Gevaerts
cc4be72d15 Fix endpoint allocation
Flyspray: FS#10510
Author: Amaury Pouly



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22261 a1c6a512-1295-4272-9138-f99709370657
2009-08-11 21:01:00 +00:00
Frank Gevaerts
7557d5679d Clarify comment and clean up a bit (FS#10227 by Tomer Shalev)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21055 a1c6a512-1295-4272-9138-f99709370657
2009-05-23 14:50:30 +00:00
Frank Gevaerts
69a4117c1d Add working USB HID driver, by Tomer Shalev (part of his GSoC work).
This needs support for usb interrupt transfers, so there are some changes in various USB drivers as well (only usb-drv-arc supports it at this point, others won't have working HID yet).

HID is disabled for now, as the apps/ part is not included yet.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20962 a1c6a512-1295-4272-9138-f99709370657
2009-05-16 15:30:09 +00:00
Frank Gevaerts
29f390e227 Properly cast things to avoid shiny yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20571 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 20:08:10 +00:00
Frank Gevaerts
0ece30a726 Commit FS#10015 - Use chained transfer descriptor to speed up USB transfers on PP and iMX31
(not exactly the same. This one actually works)



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20570 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 19:56:21 +00:00
Nicolas Pennequin
396aeafa6c Correct Björn's name in various file headers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20491 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 17:08:46 +00:00
Frank Gevaerts
ac7c88b935 Make USB on sansas more reliable (FS#10026). Both fixes by Toni Hellmann
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20344 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 20:24:55 +00:00
Michael Sevakis
a6a7bac01a Oops. How'd I miss that one checking diffs? ARC driver test change shouldn't have been there.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20053 a1c6a512-1295-4272-9138-f99709370657
2009-02-19 20:43:48 +00:00
Michael Sevakis
6c399b8254 Use DMA for audio playback on PP502x (FS#9910 + some further mods). I can't say at this point about any change in battery life but it frees up a percent or two of CPU cycles as measured in the buffering screen. No change in recording transfers yet. Testing seemed to check out so put it out for general use and see what happens.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20052 a1c6a512-1295-4272-9138-f99709370657
2009-02-19 20:40:03 +00:00
Frank Gevaerts
25be896b9f PP5022/PP5024-specific USB init which may fix "signal quality issues"
FS#9923 by Boris Gjenero (dreamlayers)

This is reasonably likely to finally solve the USB issues on PP5022 and PP5024, but more testing is needed before USB will be considered stable enough to be enabled by default


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20032 a1c6a512-1295-4272-9138-f99709370657
2009-02-17 22:24:00 +00:00
Michael Sevakis
bf1cddf3e8 Hopefully make some progress against FS#9831. iPod Video seems fine now under XP at least. Move false reset detection to the USB target code. Gigabeat S works using the OTG module upon bus reset. Portal Player targets verify that the USB pin detect is ok upon bus reset.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19874 a1c6a512-1295-4272-9138-f99709370657
2009-01-29 01:28:34 +00:00
Michael Sevakis
da76a34694 Use bus reset detection for all ARC OTG devices. Remove conflict from LV24020LP driver with some GPIO-by-number macros for PP502x. Start monitoring for USB stack once all core threads and queues are created otherwise queues will likely be registered after USB acks. Putting PP502x system_reboot in IRAM (unmapped, uncached) memory seems to help it work more consistently. Hopefully I got all the PP USB connect handlers in the right spot in irq_handler. If device seems unresponsive to cable, check there first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19819 a1c6a512-1295-4272-9138-f99709370657
2009-01-22 22:05:04 +00:00
Michael Sevakis
5d1eb8ee31 This should take care of resetting when unplugging on e200 as reported in FS#9812. Be sure VBUS is valid before posting insert message as a spurious reset can occur. It seems to fix it for me (tested by insulating D+/D- pins).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19800 a1c6a512-1295-4272-9138-f99709370657
2009-01-19 19:23:59 +00:00
Michael Sevakis
616c98b38f USB detection changes. c200/e200: Consider USB to be powered when charger is plugged but detect USB connection by bus reset. When received, disconnect and restart the driver fully enabled. imx31: Fix hack used to make initial connect succeeded-- set PHY type before initial reset. General: Move some target code out of usb-drv-arc.c and implement it in respective usb sources and CPU headers so things stay clean.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19797 a1c6a512-1295-4272-9138-f99709370657
2009-01-19 13:41:25 +00:00
Frank Gevaerts
f235f1d4c0 Remove usb_drv_wait from the public usb api, and remove the implementation from usb-drv-arc.c, as it is not actually used
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19275 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 15:56:49 +00:00
Frank Gevaerts
b9c49fd474 Replace USE_HIGH_SPEED with USB_NO_HIGH_SPEED, as high speed support is the normal case
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19274 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 15:53:36 +00:00
Frank Gevaerts
478fc5baed reorganise the USB stack a bit to allow for easier integration of non-ARC controller drivers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18703 a1c6a512-1295-4272-9138-f99709370657
2008-10-03 22:43:16 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Frank Gevaerts
6d9f55efff corrected sign of error return value
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17693 a1c6a512-1295-4272-9138-f99709370657
2008-06-05 15:49:35 +00:00
Michael Sevakis
191320cd0f Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to disable' register and hasn't anything to do with acknowledging interrupts-- that's handled at the module level.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17683 a1c6a512-1295-4272-9138-f99709370657
2008-06-03 05:08:24 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Bertrik Sikken
ba39a5c110 Added missing usb #includes to usb source files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17309 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 07:10:21 +00:00
Frank Gevaerts
7a2d9ddb08 move some data around to place qh_array at the start of iram. This saves up to about 2k iram on PP
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17194 a1c6a512-1295-4272-9138-f99709370657
2008-04-20 18:43:47 +00:00
Frank Gevaerts
bcf0b6cfb7 disable irqs during the critical part of prime_transfer(). This improves the behaviour on PP502x when connected through a hub, bit it doesn't totally solve the problems
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17190 a1c6a512-1295-4272-9138-f99709370657
2008-04-20 14:46:43 +00:00
Michael Sevakis
9003dbe5b2 Make the inital connect problem go away on Gigabeat S. Would be nice if a better way were found but it works for me. Update the bootloader to have it work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17181 a1c6a512-1295-4272-9138-f99709370657
2008-04-20 03:30:57 +00:00
Michael Sevakis
94f7d0f290 UMS for the Gigabeat S. Bootloader USB mode. Has a couple quirks 1) First plug has problems if cold. Replug if it doesn't connect or not at high speed 2) Linux doesn't like the odd bootable flag value used in the partitions so it won't mount but Windows works. Fix minor OTG driver bugs and clean up device memory handling. Generic name for ARC controller driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17154 a1c6a512-1295-4272-9138-f99709370657
2008-04-18 16:42:50 +00:00
Renamed from firmware/target/arm/usb-drv-pp502x.c (Browse further)