summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
authorTorne Wuff <torne@wolfpuppy.org.uk>2010-06-05 20:43:30 +0000
committerTorne Wuff <torne@wolfpuppy.org.uk>2010-06-05 20:43:30 +0000
commit2eb01425877347f601b1f8b03e07dcb2d690d6d9 (patch)
tree0a589ee0321956d95548261fe2bddfa101356b06 /firmware/export
parent47181b8b9b0e3e914243a463ad02a2eceab61c6e (diff)
downloadrockbox-2eb01425877347f601b1f8b03e07dcb2d690d6d9.zip
rockbox-2eb01425877347f601b1f8b03e07dcb2d690d6d9.tar.gz
rockbox-2eb01425877347f601b1f8b03e07dcb2d690d6d9.tar.bz2
rockbox-2eb01425877347f601b1f8b03e07dcb2d690d6d9.tar.xz
New USB charging system, part 2 - "Force" charging mode
Enable support for the "force" mode of USB charging. This should work on Gigabeat S and Nano2g (and any other future target which has a RB usb stack and supports charging) - if a host connection is not detected within 10 seconds of USB insertion, assume that the connected device is an AC charger and charge anyway, if the user has specified "force" as the mode. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26594 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config.h7
-rw-r--r--firmware/export/usb.h10
2 files changed, 15 insertions, 2 deletions
diff --git a/firmware/export/config.h b/firmware/export/config.h
index b73f605..e64ca41 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -871,6 +871,13 @@ Lyre prototype 1 */
#endif
#endif /* HAVE_HEADPHONE_DETECTION */
+#if defined(HAVE_USB_CHARGING_ENABLE) && defined(HAVE_USBSTACK)
+/* USB charging support in the USB stack requires timeout objects */
+#ifndef INCLUDE_TIMEOUT_API
+#define INCLUDE_TIMEOUT_API
+#endif
+#endif /* HAVE_USB_CHARGING_ENABLE && HAVE_USBSTACK */
+
#if defined(HAVE_USBSTACK) || (CONFIG_STORAGE & STORAGE_NAND)
#define STORAGE_GET_INFO
#endif
diff --git a/firmware/export/usb.h b/firmware/export/usb.h
index d544f5c..55b5f2c 100644
--- a/firmware/export/usb.h
+++ b/firmware/export/usb.h
@@ -52,6 +52,9 @@ enum {
USB_REQUEST_REBOOT, /* Event */
#endif
USB_QUIT, /* Event */
+#if defined(HAVE_USB_CHARGING_ENABLE) && defined(HAVE_USBSTACK)
+ USB_CHARGER_UPDATE, /* Event */
+#endif
};
#ifdef HAVE_USB_POWER
@@ -156,8 +159,11 @@ enum {
* or target-specific code on others
*/
void usb_charging_enable(int state);
-#endif
-#endif
+#ifdef HAVE_USBSTACK
+void usb_charger_update(void);
+#endif /* HAVE_USBSTACK */
+#endif /* HAVE_USB_CHARGING_ENABLE */
+#endif /* HAVE_USB_POWER */
#ifdef HAVE_USBSTACK
void usb_signal_transfer_completion(
struct usb_transfer_completion_event_data *event_data);