Make USB Charging default value configurable per device

A reasonable default assumption for a user
would be that they can plug their device into
a USB AC adapter and it will charge with as much
current as it reasonably can. With the previous
default, an AC adapter will only do 100mA, basically
a trickle charge.

Make this configurable default per-device, so as not
to break old devices without testing.

Define TARGET_USB_CHARGING_DEFAULT to USB_CHARGING_FORCE
to use the new default.

Tested on both erosQ Native and M3K.

Change-Id: I77265d356a41d67357ebc6e9f7e0c25a37b74931
This commit is contained in:
Dana Conrad 2021-09-13 14:41:42 -05:00 committed by Solomon Peachy
parent 5765deb08e
commit 0ca0940f01
3 changed files with 9 additions and 1 deletions

View file

@ -345,6 +345,12 @@ static const char graphic_numeric[] = "graphic,numeric";
#endif
#endif /* HAVE_BACKLIGHT */
#if defined(HAVE_USB_CHARGING_ENABLE)
# if !defined(TARGET_USB_CHARGING_DEFAULT)
# define TARGET_USB_CHARGING_DEFAULT USB_CHARGING_ENABLE
# endif
#endif
#if LCD_DEPTH > 1
static const char* list_pad_formatter(char *buffer, size_t buffer_size,
int val, const char *unit)
@ -1827,7 +1833,7 @@ const struct settings_list settings[] = {
#endif
TEXT_SETTING(0,kbd_file,"kbd","-",ROCKBOX_DIR "/",".kbd"),
#ifdef HAVE_USB_CHARGING_ENABLE
CHOICE_SETTING(0, usb_charging, LANG_USB_CHARGING, 1, "usb charging",
CHOICE_SETTING(0, usb_charging, LANG_USB_CHARGING, TARGET_USB_CHARGING_DEFAULT, "usb charging",
"off,on,force", NULL, 3, ID2P(LANG_SET_BOOL_NO),
ID2P(LANG_SET_BOOL_YES), ID2P(LANG_FORCE)),
#endif

View file

@ -114,6 +114,7 @@
#define USB_DEVBSS_ATTR __attribute__((aligned(32)))
#define HAVE_USB_POWER
#define HAVE_USB_CHARGING_ENABLE
#define TARGET_USB_CHARGING_DEFAULT USB_CHARGING_FORCE
#define HAVE_BOOTLOADER_USB_MODE
#endif

View file

@ -114,6 +114,7 @@
#define USB_DEVBSS_ATTR __attribute__((aligned(32)))
#define HAVE_USB_POWER
#define HAVE_USB_CHARGING_ENABLE
#define TARGET_USB_CHARGING_DEFAULT USB_CHARGING_FORCE
#define HAVE_BOOTLOADER_USB_MODE
#endif