diff options
| author | Frank Gevaerts <frank@gevaerts.be> | 2008-03-21 20:22:04 +0000 |
|---|---|---|
| committer | Frank Gevaerts <frank@gevaerts.be> | 2008-03-21 20:22:04 +0000 |
| commit | 7ee63e22c58f4a7017136871e7b55dd702c5f460 (patch) | |
| tree | b92b8fdb30d23d6c2e9c5329e10ab1fae528d7bb | |
| parent | d02c79c03fed154e8cdf4cbef8670221dfe922aa (diff) | |
| download | rockbox-7ee63e22c58f4a7017136871e7b55dd702c5f460.zip rockbox-7ee63e22c58f4a7017136871e7b55dd702c5f460.tar.gz rockbox-7ee63e22c58f4a7017136871e7b55dd702c5f460.tar.bz2 rockbox-7ee63e22c58f4a7017136871e7b55dd702c5f460.tar.xz | |
fix H10 not rebooting on usb connect. Apologies to H10 users who enjoyed their free but unintended USB stack.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16734 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/usb.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/firmware/usb.c b/firmware/usb.c index e743c90..aa3ab0a 100644 --- a/firmware/usb.c +++ b/firmware/usb.c @@ -134,25 +134,20 @@ static void usb_slave_mode(bool on) static void try_reboot(void) { -#if defined(IRIVER_H10) || defined (IRIVER_H10_5GB) - if (button_status()==BUTTON_RIGHT) -#endif /* defined(IRIVER_H10) || defined (IRIVER_H10_5GB) */ - { #ifndef HAVE_FLASH_STORAGE - ata_sleepnow(); /* Immediately spindown the disk. */ - sleep(HZ*2); + ata_sleepnow(); /* Immediately spindown the disk. */ + sleep(HZ*2); #endif #ifdef IPOD_ARCH /* The following code is based on ipodlinux */ #if CONFIG_CPU == PP5020 - memcpy((void *)0x40017f00, "diskmode\0\0hotstuff\0\0\1", 21); + memcpy((void *)0x40017f00, "diskmode\0\0hotstuff\0\0\1", 21); #elif CONFIG_CPU == PP5022 - memcpy((void *)0x4001ff00, "diskmode\0\0hotstuff\0\0\1", 21); + memcpy((void *)0x4001ff00, "diskmode\0\0hotstuff\0\0\1", 21); #endif /* CONFIG_CPU */ #endif /* IPOD_ARCH */ - system_reboot(); /* Reboot */ - } + system_reboot(); /* Reboot */ } static void usb_thread(void) @@ -187,7 +182,11 @@ static void usb_thread(void) else #endif #ifdef HAVE_USB_POWER +#if defined(IRIVER_H10) || defined (IRIVER_H10_5GB) + if((button_status() & ~USBPOWER_BTN_IGNORE) != USBPOWER_BUTTON) +#else if((button_status() & ~USBPOWER_BTN_IGNORE) == USBPOWER_BUTTON) +#endif { usb_state = USB_POWERED; #ifdef HAVE_USBSTACK |