[PATCH v1 2/2] commands: usbgadget: provide fallback to global variables
Oleksij Rempel
o.rempel at pengutronix.de
Fri Mar 24 03:21:23 PDT 2017
usbgadget autostarter is providing now a global variable to configure fastboot.
We can use is as fallback for the cmd_usbgadget as well.
Signed-off-by: Oleksij Rempel <o.rempel at pengutronix.de>
---
commands/usbgadget.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/commands/usbgadget.c b/commands/usbgadget.c
index a7e8d6c0c..9f250633d 100644
--- a/commands/usbgadget.c
+++ b/commands/usbgadget.c
@@ -20,6 +20,7 @@
*/
#include <common.h>
#include <command.h>
+#include <environment.h>
#include <errno.h>
#include <malloc.h>
#include <getopt.h>
@@ -32,11 +33,11 @@
static int do_usbgadget(int argc, char *argv[])
{
int opt;
- int acm = 1, create_serial = 0;
+ int acm = 1, create_serial = 0, fastboot_set = 0;
char *fastboot_opts = NULL, *dfu_opts = NULL;
struct f_multi_opts opts = {};
- while ((opt = getopt(argc, argv, "asdA:D:")) > 0) {
+ while ((opt = getopt(argc, argv, "asdA::D:")) > 0) {
switch (opt) {
case 'a':
acm = 1;
@@ -51,6 +52,7 @@ static int do_usbgadget(int argc, char *argv[])
break;
case 'A':
fastboot_opts = optarg;
+ fastboot_set = 1;
break;
case 'd':
usb_multi_unregister();
@@ -60,6 +62,9 @@ static int do_usbgadget(int argc, char *argv[])
}
}
+ if (fastboot_set && !fastboot_opts)
+ fastboot_opts = getenv("global.usbgadget.fastboot_function");
+
if (!dfu_opts && !fastboot_opts && !create_serial)
return COMMAND_ERROR_USAGE;
--
2.11.0
More information about the barebox
mailing list