[U-Boot] [RFC PATCH] USB: get rid of warning when compile with debug enabled

Marek Vasut marex at denx.de
Tue Aug 26 08:46:59 CEST 2014


On Tuesday, August 26, 2014 at 03:11:13 AM, Bo Shen wrote:
> Hi Marek,
> 
> On 08/25/2014 06:43 PM, Marek Vasut wrote:
> > On Monday, August 25, 2014 at 11:23:19 AM, Bo Shen wrote:
> >> When compile with debug information is enabled, if call
> >> spin_lock_irqsave, it will give following warning information.
> >> This patch is used to get rid of it.
> >> --->8---
> >> warning: 'flags' is used uninitialized in this function
> >> [-Wuninitialized] ---8<---
> > 
> > The patch is wrong. The compiler complains that flags might be used
> > uninited because that is the case -- you call spin_lock_irqsave() with
> > uninited flags and because debug() is expanded to printf() I guess, the
> > compiler spews.
> > 
> > So which file does this warning come from ?
> 
> I enable debug information (In common.h, define the DEBUG).
> 
> It comes out from usb gadget driver, for example, atmel_usba_udc.c and
> also s3c_udc_otg.c and etc.

Then those need fixing. There is no problem with the macro.

> I see the spin_lock_irqsave() function in
> <drivers/usb/musb-new/linux-compat.h> defined as:
> --->8---
> #define spin_lock_irqsave(lock, flags) do {} while (0)
> ---8<---
> 
> As in u-boot, there is no lock actually, so I think we can fix it as
> <drivers/usb/musb-new/linux-compat.h>, or use the patch as I suggest, or
> anything else, what about your opinion?

Fix all the offending drivers which pass uninited variable into macro which 
might use it. That's the fix.

Best regards,
Marek Vasut


More information about the U-Boot mailing list