summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2020-11-16 11:32:12 -0500
committerSolomon Peachy <pizza@shaftnet.org>2020-11-16 17:11:38 +0000
commit9c68c69cf029b22587f4a7225261a45e5391a242 (patch)
tree378ca94924c6448a521a73f139e211d1e80730f4 /firmware
parent525252393718a74dd38895a1a945fa4cbf223bbd (diff)
downloadrockbox-9c68c69cf029b22587f4a7225261a45e5391a242.tar.gz
rockbox-9c68c69cf029b22587f4a7225261a45e5391a242.tar.bz2
rockbox-9c68c69cf029b22587f4a7225261a45e5391a242.zip
FS13257: Fix inconsistent defaults in the USB mode selection
Change-Id: I44894d13f070313ad326ce68018556573e35aad9
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/usb.h7
-rw-r--r--firmware/usb.c7
2 files changed, 11 insertions, 3 deletions
diff --git a/firmware/export/usb.h b/firmware/export/usb.h
index edc37bd5b6..2bcd95ef81 100644
--- a/firmware/export/usb.h
+++ b/firmware/export/usb.h
@@ -145,6 +145,13 @@ enum
#if !defined(USBPOWER_BTN_IGNORE)
#define USBPOWER_BTN_IGNORE 0
#endif
+
+#if defined(BOOTLOADER)
+#define USBMODE_DEFAULT USB_MODE_MASS_STORAGE
+#else
+#define USBMODE_DEFAULT USB_MODE_MASS_STORAGE
+#endif
+
#endif
#ifdef HAVE_USBSTACK
diff --git a/firmware/usb.c b/firmware/usb.c
index aca2683d58..8c6eae9b3f 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -95,8 +95,8 @@ static bool usb_host_present = false;
static int usb_num_acks_to_expect = 0;
static long usb_last_broadcast_tick = 0;
#ifdef HAVE_USB_POWER
-static int usb_mode = USB_MODE_ASK;
-static int new_usbmode = USB_MODE_ASK;
+static int usb_mode = USBMODE_DEFAULT;
+static int new_usbmode = USBMODE_DEFAULT;
#endif
static int usb_release_exclusive_storage(void);
@@ -476,6 +476,7 @@ static void NORETURN_ATTR usb_thread(void)
/* Power (charging-only) button */
#ifdef HAVE_USB_POWER
+ new_usbmode = usb_mode;
switch (usb_mode) {
case USB_MODE_CHARGE:
case USB_MODE_ADB:
@@ -491,7 +492,7 @@ static void NORETURN_ATTR usb_thread(void)
case USB_MODE_MASS_STORAGE:
if (button_status() & ~USBPOWER_BTN_IGNORE)
new_usbmode = USB_MODE_CHARGE;
- break;
+ break;
}
#ifndef BOOTLOADER