Commit graph

34 commits

Author SHA1 Message Date
Cástor Muñoz
6a1644c52a as3525v2: use the new USB DesignWare driver
Targets: sansaclipplus, samsaclipv2, sansaclipzip, sansafuzev2.

Change-Id: I7773528a4e26707dd33fe9cb8948750d49570701
2016-08-15 02:56:23 +02:00
Michael Giacomelli
7432af0958 Make sure the system is boosted before enabling USB hardware.
Change-Id: Ib44d29384f359dff24f0ce012667d9ce93328dc2
2016-01-18 23:55:22 +01:00
Amaury Pouly
66690ca987 Get rid of USE_ROCKBOX_USB
Except for unfinished or experimental ports, it isthe case that
USE_ROCKBOX_USB and HAVE_USBSTACK are both defined or both undefined.
Furthermore, it is a leftover of some early developments on the USB stack and
doesn't make sense anymore.

Change-Id: Ic87a865b6bb4c7c9a8d45d1f0bb0f2fb536b8cad
Reviewed-on: http://gerrit.rockbox.org/1091
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2015-01-08 16:07:12 +01:00
Frank Gevaerts
4fcffcbdf3 Reorganise USB initialisation to not depend on a specific enumeration sequence, by Bartosz Fabianowski, with minor tweaks by Michael Sevakis (FS#12497)
FreeBSD apparently sends a SET_ADDRESS first, which confused our code.
This patch fixes that, and also simplifies the connection handling a bit.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31582 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 21:55:09 +00:00
Rafaël Carré
568c441fd8 usb-target.h: remove
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31498 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:44:55 +00:00
Rafaël Carré
bce42fdc31 usb_init_device(): move prototype to usb.h
Get rid of some usb-target.h files

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31487 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:43:41 +00:00
Boris Gjenero
6c97145e7d Add missing includes found using -Wmissing-declarations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31396 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 18:02:50 +00:00
Michael Sevakis
47bade1437 Simplify and neaten-up usb.c a bit. USB_INSERTED and USB_EXTRACTED are always used as events to indicate cable state. USB_HOSTED is posted to indicated that a host was detected.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31263 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 00:14:36 +00:00
Michael Sevakis
0576e71725 Scrub r30546 bootloader build errors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30548 a1c6a512-1295-4272-9138-f99709370657
2011-09-14 16:00:26 +00:00
Michael Sevakis
82259b7af5 Move AMSv1 (AMSv2 had been done already) to using setup packet request to detect a host.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30547 a1c6a512-1295-4272-9138-f99709370657
2011-09-14 15:26:57 +00:00
Michael Sevakis
3f709eada2 Convert AMS target USB detection to event-based (no more polling in a tick). Seems well on my Clip v1 and Fuze v2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29156 a1c6a512-1295-4272-9138-f99709370657
2011-01-29 00:44:59 +00:00
Frank Gevaerts
303aefc406 Make usb_detect() return USB_UNPOWERED instead of USB_EXTRACTED. Without that, not all needed disconnect handling is done in usb.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28874 a1c6a512-1295-4272-9138-f99709370657
2010-12-21 17:24:00 +00:00
Frank Gevaerts
866a822ac6 Only return USB_POWERED if USB_DETECT_BY_DRV is actually defined, which might not be the case for e.g. bootloaders (also fix red)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28820 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 20:20:12 +00:00
Frank Gevaerts
ecd80d888e Move AMSv1 USB to the USB_DETECT_BY_DRV model, so connecting to a dumb charger works without interrupting playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28819 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 20:03:42 +00:00
Rafaël Carré
65c4fc2ad2 Sansa AMSv2: don't prevent USB detection to work when rockbox USB stack is used
(USB stack is not used by default)
This makes debugging the USB driver easier

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27847 a1c6a512-1295-4272-9138-f99709370657
2010-08-19 16:52:08 +00:00
Rafaël Carré
322fdaa316 AMSv2: don't reboot on USB plug
Users will have to reboot to OF manually or to power off, and then plug USB
No message is displayed because usb_detect() is run from a tick

This lacks documentation but should be OK for Unstable devices, and
will hopefully prevent clueless users from opening their devices and
breaking them definitely, instead of waiting for the battery to power
off.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27837 a1c6a512-1295-4272-9138-f99709370657
2010-08-17 16:43:43 +00:00
Rafaël Carré
b0146de64c as3525: don't export empty usb_init_device(), declare it as empty inline
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26326 a1c6a512-1295-4272-9138-f99709370657
2010-05-27 12:00:18 +00:00
Rafaël Carré
88c55d7290 as3514/as3543 fixes
- Enable end of charge monitoring once, it doesn't need to be disabled
- Acknowledge the first (wrong) end of charge interrupt on charger enable
  (this had been broken in r25299)
- Centralize reads to ENRD* registers and cache the results when needed
    - on PP it is not needed because reads are atomic, we only check for
      end of charge when the charging, and for charger presence when
      discharging

as3525v2 (using as3543) specifics
- I got the datasheet today from AMS, thanks to them for being so fast
  and not require me to sign tons of papers!
- USB detection now works on as3525v2 using the as3543. Clip+ won't
  reboot to OF yet, it needs mkamsboot support first (usbstack disabled)
- Charging should work, the CHARGER register is at a different place, it
  is an extended PMU register -> use ascodec_read/write_charger() to
  access it
- real interrupts are not used yet for ENRD, we get thousands of
  interrupts per second, apparently only limited by the i2c clock.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26116 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 20:53:25 +00:00
Rafaël Carré
31caef4ad6 as3525: don't use incomplete USB code when charging
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26083 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 11:48:43 +00:00
Rafaël Carré
8bc3dba6e6 Fuzev2: USB detection isn't reliable in fact
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25639 a1c6a512-1295-4272-9138-f99709370657
2010-04-13 20:00:43 +00:00
Rafaël Carré
1c67444ed3 Clipv2: reboot to OF when USB is inserted
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25447 a1c6a512-1295-4272-9138-f99709370657
2010-04-03 05:45:44 +00:00
Rafaël Carré
722be53bf9 as3525v2: acknowledge USB connection/deconnection in SD thread
Fuzev2: detect USB connection and reboot to OF

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25446 a1c6a512-1295-4272-9138-f99709370657
2010-04-03 05:42:54 +00:00
Björn Stenberg
2d174af443 No intentional warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25308 a1c6a512-1295-4272-9138-f99709370657
2010-03-23 13:21:19 +00:00
Tobias Diedrich
06653d982a Make this properly dependend on the right defines instead of a blacklist.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25306 a1c6a512-1295-4272-9138-f99709370657
2010-03-23 11:22:21 +00:00
Tobias Diedrich
c4e4ffb541 Limit AUDIO_IRQ handling to AS3525, since it doesn't work on the newer SoC in SANSA_CLIPPLUS yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25305 a1c6a512-1295-4272-9138-f99709370657
2010-03-23 11:13:17 +00:00
Tobias Diedrich
47ab95904e Add handler for audio irq.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25299 a1c6a512-1295-4272-9138-f99709370657
2010-03-23 05:02:37 +00:00
Rafaël Carré
19d70fce20 Sansa Fuze & e200v2 : do not enable USBSTACK in the bootloader
Don't implement usb_enable() is HAVE_USBSTACK is not defined

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23185 a1c6a512-1295-4272-9138-f99709370657
2009-10-15 10:23:18 +00:00
Rafaël Carré
8bd8d06842 Sansa AMS USB driver : still not working
Implement usb_enable()
Reorder/Modify usb_drv_init() to match closer the OF and remove a freeze
(USB registers were accessed before the USB module was enabled)
Add a panic in USB isr to be sure we notice when it's called
Reset GPIOA direction for usb_detect() to notice extraction
Add some comments

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23184 a1c6a512-1295-4272-9138-f99709370657
2009-10-15 10:03:20 +00:00
Bertrik Sikken
65aa187aef Fix #includes in usb-as3525.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20698 a1c6a512-1295-4272-9138-f99709370657
2009-04-12 19:08:26 +00:00
Björn Stenberg
f59724414b Fixed m200v4 red build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19616 a1c6a512-1295-4272-9138-f99709370657
2008-12-30 21:56:23 +00:00
Björn Stenberg
93afe5297b Cleaner usb detection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19615 a1c6a512-1295-4272-9138-f99709370657
2008-12-30 21:17:43 +00:00
Björn Stenberg
f2d2b8c3c7 Added usb_detect() for Clip, Fuze, E200v2 and C200v2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19614 a1c6a512-1295-4272-9138-f99709370657
2008-12-29 23:32:11 +00:00
Dave Chapman
1811858476 Revert r19069 - the m200s can't charge. Also, don't use charger_inserted() as a method for detecting USB (this gives a false positive with USB wall chargers), and protect the definition of charger_inserted() with #if CONFIG_CHARGING.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19071 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 18:15:52 +00:00
Rafaël Carré
6b566568eb Fix Clip firmware building by adding missing symbols
Implement some of the new functions
Use as3514 rtc
Add AS3525 case in rolo.c
Copy card_get_info_target() from ata-sd-pp.c , and use the correct 32bits words order

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19064 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 11:04:43 +00:00