[U-Boot] [PATCH 2/2] musb: sunxi: Implement dfu_usb_get_reset()

Albert ARIBAUD albert.u.boot at aribaud.net
Sun Oct 25 22:19:36 CET 2015


Hello Siarhei,

On Sun, 25 Oct 2015 16:55:43 +0200, Siarhei Siamashka
<siarhei.siamashka at gmail.com> wrote:
> On Sun, 25 Oct 2015 12:00:09 +0100
> Marek Vasut <marex at denx.de> wrote:
> 
> > On Sunday, October 25, 2015 at 05:44:47 AM, Siarhei Siamashka wrote:
> > > This is necessary to distinguish between the "dfu-util --detach" and
> > > the "dfu-util --reset" requests.
> > > 
> > > The default weak implementation of dfu_usb_get_reset() unconditionally
> > > reboots the device, but we want to be able to continue the boot.scr
> > > execution after writing the kernel, fdt and ramdisk to RAM via DFU.
> > > 
> > > Signed-off-by: Siarhei Siamashka <siarhei.siamashka at gmail.com>
> > > ---
> > >  drivers/usb/musb-new/sunxi.c | 12 ++++++++++++
> > >  1 file changed, 12 insertions(+)
> > > 
> > > diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c
> > > index a146c08..5eb8d19 100644
> > > --- a/drivers/usb/musb-new/sunxi.c
> > > +++ b/drivers/usb/musb-new/sunxi.c
> > > @@ -166,6 +166,17 @@ static void USBC_ConfigFIFO_Base(void)
> > >  }
> > > 
> > >  /*************************************************************************
> > > ***** + * Needed for the DFU polling magic
> > > +
> > > **************************************************************************
> > > ****/ +
> > > +static u8 last_int_usb;
> > > +
> > > +bool dfu_usb_get_reset(void)
> > > +{
> > > +	return !!(last_int_usb & MUSB_INTR_RESET);
> > 
> > The !! is not needed.
> 
> Thanks for your comment, I can surely change this in the updated
> version of the patch.

For the sake of consistency, I'd rather you did not remove the '!!'. If
you decide to remove it, then you should change the function's type
to int and mention that it may return zero or non-zero. In C, boolean
operators '!', '||' and '&&' always evaluate to 1 for true.

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list