mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-12-08 12:45:26 -05:00
Nano2G - reboot into disk mode when USB is inserted.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23070 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
4ff7666388
commit
8c078f34ff
2 changed files with 27 additions and 13 deletions
|
|
@ -20,6 +20,9 @@
|
|||
****************************************************************************/
|
||||
#include "config.h"
|
||||
#include "usb.h"
|
||||
#include "cpu.h"
|
||||
#include "system.h"
|
||||
#include "string.h"
|
||||
|
||||
void usb_init_device(void)
|
||||
{
|
||||
|
|
@ -27,21 +30,27 @@ void usb_init_device(void)
|
|||
|
||||
void usb_enable(bool on)
|
||||
{
|
||||
(void)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. */
|
||||
|
||||
memcpy((void *)0x0002bf00, "diskmodehotstuff\1\0\0\0", 20);
|
||||
|
||||
system_reboot(); /* Reboot */
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void usb_attach(void)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
static bool usb_pin_state(void)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
/* detect host or charger (INSERTED or EXTRACTED) */
|
||||
int usb_detect(void)
|
||||
{
|
||||
return usb_pin_state() ? USB_INSERTED : USB_EXTRACTED;
|
||||
#if defined(IPOD_NANO2G)
|
||||
if ((PDAT14 & 0x8) == 0x0)
|
||||
return USB_INSERTED;
|
||||
#endif
|
||||
|
||||
return USB_EXTRACTED;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue