All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steve Rae <srae@broadcom.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 3/4] usb: board_usb_init and board_usb_cleanup calls in the fastboot command
Date: Tue, 16 Jun 2015 13:58:26 -0700	[thread overview]
Message-ID: <55808DF2.3050209@broadcom.com> (raw)
In-Reply-To: <1434131821-7641-3-git-send-email-contact@paulk.fr>

Hi Paul,

On 15-06-12 10:57 AM, Paul Kocialkowski wrote:
> Each USB download function command calls board_usb_init before registering the
> USB gadget and board_usb_cleanup after de-registering it. On devices currently
> using fasboot, musb-new is usually initialized earlier, but some other boards
> might need the board_usb_init call to properly initialize musb-new.
>
> This requires adding an argument (the USB controller index) to the fastboot
> command, as it is currently done with other USB download gadget functions.
>
> Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
> ---
>   common/cmd_fastboot.c             | 31 +++++++++++++++++++++++++------
>   include/configs/ti_omap5_common.h |  2 +-
>   2 files changed, 26 insertions(+), 7 deletions(-)
>
> diff --git a/common/cmd_fastboot.c b/common/cmd_fastboot.c
> index d52ccfb..86fbddf 100644
> --- a/common/cmd_fastboot.c
> +++ b/common/cmd_fastboot.c
> @@ -10,11 +10,26 @@
>   #include <common.h>
>   #include <command.h>
>   #include <g_dnl.h>
> +#include <usb.h>
>
>   static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
>   {
> +	int controller_index;
> +	char *usb_controller;
>   	int ret;
>
> +	if (argc < 2)
> +		return CMD_RET_USAGE;
> +
> +	usb_controller = argv[1];

Not backwards compatible.... I would prefer to make it optional:
         if (argc < 2)
                 controller_index = 0;
         else {
                 usb_controller = argv[1];
                 controller_index = simple_strtoul(usb_controller, NULL, 0);
         }

> +	controller_index = simple_strtoul(usb_controller, NULL, 0);
> +
> +	ret = board_usb_init(controller_index, USB_INIT_DEVICE);
> +	if (ret) {
> +		error("USB init failed: %d", ret);
> +		return CMD_RET_FAILURE;
> +	}
> +
>   	g_dnl_clear_detach();
>   	ret = g_dnl_register("usb_dnl_fastboot");
>   	if (ret)
> @@ -23,9 +38,8 @@ static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
>   	if (!g_dnl_board_usb_cable_connected()) {
>   		puts("\rUSB cable not detected.\n" \
>   		     "Command exit.\n");
> -		g_dnl_unregister();
> -		g_dnl_clear_detach();
> -		return CMD_RET_FAILURE;
> +		ret = CMD_RET_FAILURE;
> +		goto exit;
>   	}
>
>   	while (1) {
> @@ -36,14 +50,19 @@ static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
>   		usb_gadget_handle_interrupts(0);
>   	}
>
> +	ret = CMD_RET_SUCCESS;
> +
> +exit:
>   	g_dnl_unregister();
>   	g_dnl_clear_detach();
> -	return CMD_RET_SUCCESS;
> +	board_usb_cleanup(controller_index, USB_INIT_DEVICE);
> +
> +	return ret;
>   }
>
>   U_BOOT_CMD(
> -	fastboot,	1,	0,	do_fastboot,
> +	fastboot, 2, 1, do_fastboot,
>   	"use USB Fastboot protocol",
> -	"\n"
> +	"<USB_controller>\n"

make it optional:
	"[<USB_controller>]\n"

>   	"    - run as a fastboot usb device"
>   );
> diff --git a/include/configs/ti_omap5_common.h b/include/configs/ti_omap5_common.h
> index 4faffef..4fd5669 100644
> --- a/include/configs/ti_omap5_common.h
> +++ b/include/configs/ti_omap5_common.h
> @@ -137,7 +137,7 @@
>   	"if test ${dofastboot} -eq 1; then " \
>   		"echo Boot fastboot requested, resetting dofastboot ...;" \
>   		"setenv dofastboot 0; saveenv;" \
> -		"echo Booting into fastboot ...; fastboot;" \
> +		"echo Booting into fastboot ...; fastboot 0;" \

then this isn't needed either....

>   	"fi;" \
>   	"run findfdt; " \
>   	"run mmcboot;" \
>

Thanks, Steve

  reply	other threads:[~2015-06-16 20:58 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-12 17:56 [U-Boot] [PATCH v2 1/4] usb: USB download gadget and functions config options coherent naming Paul Kocialkowski
2015-06-12 17:56 ` [U-Boot] [PATCH v2 2/4] usb: Fastboot function config for better consistency with other functions Paul Kocialkowski
2015-06-12 17:57 ` [U-Boot] [PATCH v2 3/4] usb: board_usb_init and board_usb_cleanup calls in the fastboot command Paul Kocialkowski
2015-06-16 20:58   ` Steve Rae [this message]
2015-06-16 21:25     ` Paul Kocialkowski
2015-06-16 21:36       ` Steve Rae
2015-06-16 21:56         ` Paul Kocialkowski
2015-06-12 17:57 ` [U-Boot] [PATCH v2 4/4] usb: gadget: Weak board_usb_init/cleanup definitions in USB download gadget code Paul Kocialkowski
2015-07-04 14:49 ` [U-Boot] [PATCH v2 1/4] usb: USB download gadget and functions config options coherent naming Paul Kocialkowski
2015-07-06  6:58   ` Lukasz Majewski
2015-07-06 10:21   ` Lukasz Majewski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55808DF2.3050209@broadcom.com \
    --to=srae@broadcom.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.