summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/s5l8700/usb-s5l8700.c
diff options
context:
space:
mode:
authorMichael Sparmann <theseven@rockbox.org>2009-10-11 10:10:49 +0000
committerMichael Sparmann <theseven@rockbox.org>2009-10-11 10:10:49 +0000
commite6c8a185e53337353e2f182b4625edf2d20542f7 (patch)
treec963036a9e72dd6b72ea37309bbd4d6280994d5c /firmware/target/arm/s5l8700/usb-s5l8700.c
parent0260b0ad5ad0dba0adaaab0626d135f3a40cab74 (diff)
downloadrockbox-e6c8a185e53337353e2f182b4625edf2d20542f7.tar.gz
rockbox-e6c8a185e53337353e2f182b4625edf2d20542f7.zip
Implement NAND power management for iPod Nano 2G
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23099 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/s5l8700/usb-s5l8700.c')
-rw-r--r--firmware/target/arm/s5l8700/usb-s5l8700.c31
1 files changed, 11 insertions, 20 deletions
diff --git a/firmware/target/arm/s5l8700/usb-s5l8700.c b/firmware/target/arm/s5l8700/usb-s5l8700.c
index c0bf7a951b..6ad4dcea95 100644
--- a/firmware/target/arm/s5l8700/usb-s5l8700.c
+++ b/firmware/target/arm/s5l8700/usb-s5l8700.c
@@ -20,9 +20,6 @@
****************************************************************************/
#include "config.h"
#include "usb.h"
-#include "cpu.h"
-#include "system.h"
-#include "string.h"
void usb_init_device(void)
{
@@ -30,27 +27,21 @@ void usb_init_device(void)
void usb_enable(bool on)
{
- /* This device specific code will eventually give way to proper USB
- handling, which should be the same for all S5L870x targets. */
- if (on)
- {
-#ifdef IPOD_ARCH
- /* For iPod, we can only do one thing with USB mode atm - reboot
- into the flash-based disk-mode. This does not return. */
+ (void)on;
+}
- memcpy((void *)0x0002bf00, "diskmodehotstuff\1\0\0\0", 20);
+void usb_attach(void)
+{
- system_reboot(); /* Reboot */
-#endif
- }
}
-int usb_detect(void)
+static bool usb_pin_state(void)
{
-#if defined(IPOD_NANO2G)
- if ((PDAT14 & 0x8) == 0x0)
- return USB_INSERTED;
-#endif
+ return false;
+}
- return USB_EXTRACTED;
+/* detect host or charger (INSERTED or EXTRACTED) */
+int usb_detect(void)
+{
+ return usb_pin_state() ? USB_INSERTED : USB_EXTRACTED;
}