summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorFrank Gevaerts <frank@gevaerts.be>2011-09-09 16:15:35 +0000
committerFrank Gevaerts <frank@gevaerts.be>2011-09-09 16:15:35 +0000
commit544a52d9eb274c8989df2268324dcbf8f18795c6 (patch)
treeab152284efafceada3b5554a16e037d8003151f2 /apps
parent49b64f13e548f5622d2932e3dd5c77b65c1d9fdd (diff)
downloadrockbox-544a52d9eb274c8989df2268324dcbf8f18795c6.zip
rockbox-544a52d9eb274c8989df2268324dcbf8f18795c6.tar.gz
rockbox-544a52d9eb274c8989df2268324dcbf8f18795c6.tar.bz2
rockbox-544a52d9eb274c8989df2268324dcbf8f18795c6.tar.xz
Add "USB Hide Internal Drive" option for multidrive devices with software usb.
This option allows accessing the card slot from "dumb" USB hosts like some car audio systems that do not handle multi-LUN devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30489 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/features.txt4
-rw-r--r--apps/lang/english.lang17
-rw-r--r--apps/menus/settings_menu.c6
-rw-r--r--apps/settings.h4
-rw-r--r--apps/settings_list.c4
5 files changed, 35 insertions, 0 deletions
diff --git a/apps/features.txt b/apps/features.txt
index 93b81ff..44ef3dd 100644
--- a/apps/features.txt
+++ b/apps/features.txt
@@ -96,6 +96,10 @@ pitchscreen
multivolume
#endif
+#if defined(HAVE_MULTIDRIVE) && defined(USB_ENABLE_STORAGE)
+multidrive_usb
+#endif
+
#if defined(HAVE_QUICKSCREEN)
quickscreen
#endif
diff --git a/apps/lang/english.lang b/apps/lang/english.lang
index 37f673b..5ee087e 100644
--- a/apps/lang/english.lang
+++ b/apps/lang/english.lang
@@ -12813,3 +12813,20 @@
*: "Save Changes?"
</voice>
</phrase>
+<phrase>
+ id: LANG_USB_SKIP_FIRST_DRIVE
+ desc: in settings_menu
+ user: core
+ <source>
+ *: none
+ multidrive_usb: "USB Hide Internal Drive"
+ </source>
+ <dest>
+ *: none
+ multidrive_usb: "USB Hide Internal Drive"
+ </dest>
+ <voice>
+ *: none
+ multidrive_usb: "USB Hide Internal Drive"
+ </voice>
+</phrase>
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c
index 82c91aa..02f68aa 100644
--- a/apps/menus/settings_menu.c
+++ b/apps/menus/settings_menu.c
@@ -268,6 +268,9 @@ MENUITEM_SETTING(start_screen, &global_settings.start_in_screen, NULL);
MENUITEM_SETTING(usb_hid, &global_settings.usb_hid, NULL);
MENUITEM_SETTING(usb_keypad_mode, &global_settings.usb_keypad_mode, NULL);
#endif
+#if defined(USB_ENABLE_STORAGE) && defined(HAVE_MULTIDRIVE)
+MENUITEM_SETTING(usb_skip_first_drive, &global_settings.usb_skip_first_drive, NULL);
+#endif
#ifdef HAVE_MORSE_INPUT
MENUITEM_SETTING(morse_input, &global_settings.morse_input, NULL);
@@ -330,6 +333,9 @@ MAKE_MENU(system_menu, ID2P(LANG_SYSTEM),
&usb_hid,
&usb_keypad_mode,
#endif
+#if defined(USB_ENABLE_STORAGE) && defined(HAVE_MULTIDRIVE)
+ &usb_skip_first_drive,
+#endif
);
/* SYSTEM MENU */
diff --git a/apps/settings.h b/apps/settings.h
index f48dd5d..d7a7226 100644
--- a/apps/settings.h
+++ b/apps/settings.h
@@ -772,6 +772,10 @@ struct user_settings
int usb_keypad_mode;
#endif
+#if defined(USB_ENABLE_STORAGE) && defined(HAVE_MULTIDRIVE)
+ bool usb_skip_first_drive;
+#endif
+
#ifdef HAVE_LCD_BITMAP
unsigned char ui_vp_config[64]; /* viewport string for the lists */
#ifdef HAVE_REMOTE_LCD
diff --git a/apps/settings_list.c b/apps/settings_list.c
index 292749b..27726dd 100644
--- a/apps/settings_list.c
+++ b/apps/settings_list.c
@@ -1791,6 +1791,10 @@ const struct settings_list settings[] = {
), /* CHOICE_SETTING( usb_keypad_mode ) */
#endif
+#if defined(USB_ENABLE_STORAGE) && defined(HAVE_MULTIDRIVE)
+ OFFON_SETTING(0, usb_skip_first_drive, LANG_USB_SKIP_FIRST_DRIVE, false, "usb skip first drive", usb_set_skip_first_drive),
+#endif
+
/* Customizable list */
#ifdef HAVE_LCD_BITMAP
VIEWPORT_SETTING(ui_vp_config, "ui viewport"),