summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/target/arm/usb-fw-pp502x.c9
-rw-r--r--firmware/usb.c3
2 files changed, 7 insertions, 5 deletions
diff --git a/firmware/target/arm/usb-fw-pp502x.c b/firmware/target/arm/usb-fw-pp502x.c
index ac5acbb71a..47c120715e 100644
--- a/firmware/target/arm/usb-fw-pp502x.c
+++ b/firmware/target/arm/usb-fw-pp502x.c
@@ -52,11 +52,13 @@ void usb_init_device(void)
/* disable USB-devices until USB is detected via GPIO */
#ifndef BOOTLOADER
- /* Disabling USB0 in the bootloader makes the OF not load */
+ /* Disabling USB0 in the bootloader makes the OF not load,
+ Also something here breaks usb pin detect in bootloader.
+ leave it all enabled untill rockbox main loads */
DEV_EN &= ~DEV_USB0;
-#endif
DEV_EN &= ~DEV_USB1;
DEV_INIT2 &= ~INIT_USB;
+#endif
#if defined(IPOD_COLOR) || defined(IPOD_4G) \
|| defined(IPOD_MINI) || defined(IPOD_MINI2G)
@@ -78,10 +80,7 @@ void usb_enable(bool on)
else {
usb_core_exit();
/* Disable USB devices */
-#ifndef BOOTLOADER
- /* Disabling USB0 in the bootloader makes the OF not load */
DEV_EN &=~ DEV_USB0;
-#endif
DEV_EN &=~ DEV_USB1;
DEV_INIT2 &=~ INIT_USB;
}
diff --git a/firmware/usb.c b/firmware/usb.c
index c33b62f244..99b2f64612 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -253,6 +253,7 @@ static void usb_thread(void)
#ifndef USE_ROCKBOX_USB
/* until we have native mass-storage mode, we want to reboot on
usb host connect */
+ usb_enable(true);
try_reboot();
#endif /* USE_ROCKBOX_USB */
#ifdef HAVE_PRIORITY_SCHEDULING
@@ -460,7 +461,9 @@ void usb_init(void)
#endif
usb_init_device();
+#ifndef BOOTLOADER
usb_enable(false);
+#endif
/* We assume that the USB cable is extracted */
last_usb_status = USB_EXTRACTED;