On Thu, Jul 02, 2020 at 03:46:18PM +0100, Lee Jones wrote: > If we assign 'epnum' during the declaration we can also avoid "ISO > C90 forbids mixed declarations" issues. So it does looks like we > can have our cake and eat it in this scenario. > > Fixes the following W=1 kernel build warning(s): > > drivers/usb/host/oxu210hp-hcd.c: In function ‘submit_async’: > drivers/usb/host/oxu210hp-hcd.c:2040:19: warning: variable ‘qtd’ set but not used [-Wunused-but-set-variable] > 2040 | struct ehci_qtd *qtd; > | ^~~ > > Cc: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > Cc: Rodolfo Giometti <giometti@xxxxxxxx> > Cc: "Eurotech S.p.A" <info@xxxxxxxxxx> > Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx> > --- > drivers/usb/host/oxu210hp-hcd.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/usb/host/oxu210hp-hcd.c b/drivers/usb/host/oxu210hp-hcd.c > index 120666a0d5901..b00673295c9fe 100644 > --- a/drivers/usb/host/oxu210hp-hcd.c > +++ b/drivers/usb/host/oxu210hp-hcd.c > @@ -2037,16 +2037,15 @@ static struct ehci_qh *qh_append_tds(struct oxu_hcd *oxu, > static int submit_async(struct oxu_hcd *oxu, struct urb *urb, > struct list_head *qtd_list, gfp_t mem_flags) > { > - struct ehci_qtd *qtd; > - int epnum; > + int epnum = urb->ep->desc.bEndpointAddress; > unsigned long flags; > struct ehci_qh *qh = NULL; > int rc = 0; > +#ifdef OXU_URB_TRACE > + struct ehci_qtd *qtd; > > qtd = list_entry(qtd_list->next, struct ehci_qtd, qtd_list); > - epnum = urb->ep->desc.bEndpointAddress; > > -#ifdef OXU_URB_TRACE > oxu_dbg(oxu, "%s %s urb %p ep%d%s len %d, qtd %p [qh %p]\n", > __func__, urb->dev->devpath, urb, > epnum & 0x0f, (epnum & USB_DIR_IN) ? "in" : "out", > -- > 2.25.1 > Ugh, nice hack, but those OXU_URB_TRACE defines really just need to be dropped entirely. I'll take this for now though, thanks. greg k-h