diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/menus/settings_menu.c | 7 | ||||
-rw-r--r-- | apps/settings.c | 12 |
2 files changed, 16 insertions, 3 deletions
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c index bbc2505a51..9a4079f1d0 100644 --- a/apps/menus/settings_menu.c +++ b/apps/menus/settings_menu.c @@ -516,12 +516,17 @@ int usbdriver_menuitem(void) return false; } +#if USBSTACK_CAPS == (CONTROLLER_DEVICE|CONTROLLER_HOST) MENUITEM_SETTING(usbstack_mode, &global_settings.usb_stack_mode, NULL); +#endif MENUITEM_FUNCTION(usbdriver, 0, ID2P(LANG_USBSTACK_DEVICE_DRIVER), usbdriver_menuitem, 0, NULL, Icon_NOICON); MAKE_MENU(usbstack_menu, ID2P(LANG_USBSTACK), 0, Icon_NOICON, - &usbstack_mode, &usbdriver); +#if USBSTACK_CAPS == (CONTROLLER_DEVICE|CONTROLLER_HOST) + &usbstack_mode, +#endif + &usbdriver); /* USB STACK MENU */ /***********************************/ #endif diff --git a/apps/settings.c b/apps/settings.c index a020c18e1b..cacf3e5854 100644 --- a/apps/settings.c +++ b/apps/settings.c @@ -879,11 +879,19 @@ void settings_apply(void) if (global_settings.colors_file) read_color_theme_file(); #endif - + #ifdef HAVE_USBSTACK + +#if USBSTACK_CAPS == (CONTROLLER_DEVICE|CONTROLLER_HOST) usb_controller_select(global_settings.usb_stack_mode); +#elif USBSTACK_CAPS == (CONTROLLER_DEVICE) + usb_controller_select(DEVICE); +#elif USBSTACK_CAPS == (CONTROLLER_HOST) + usb_controller_select(HOST); +#endif + usb_device_driver_bind(global_settings.usb_stack_device_driver); -#endif +#endif } |