Re: drivers/usb/musb/tusb6010.c:142:21: error: 'USB_INDEX' undeclared

From: Bin Liu
Date: Thu Sep 08 2016 - 14:26:45 EST


Hi Tony,

On Thu, Sep 08, 2016 at 10:45:21AM -0700, Tony Lindgren wrote:
> Hi,
>
> Adding Bin to Cc.
>
> * kbuild test robot <fengguang.wu@xxxxxxxxx> [160611 13:27]:
> > Hi,
> >
> > FYI, the error/warning still remains.
>
> Sorry just noticed this going through my inbox.. Please let me know
> if there are other pending build errors I may have missed.
>
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 45b00c94be33db5d00595046663163ce55cbbfb9
> > commit: d026e9c76aac3632af174cf02d5c94defa5e6026 usb: musb: Change end point selection to use new IO access
> > date: 1 year, 7 months ago
> > config: blackfin-allmodconfig (attached as .config)
> > compiler: bfin-uclinux-gcc (GCC) 4.6.3
> > reproduce:
> > wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
> > chmod +x ~/bin/make.cross
> > git checkout d026e9c76aac3632af174cf02d5c94defa5e6026
> > # save the attached .config to linux build tree
> > make.cross ARCH=blackfin
> >
> > All errors (new ones prefixed by >>):
> >
> > drivers/usb/musb/tusb6010.c: In function 'tusb_get_revision':
> > drivers/usb/musb/tusb6010.c:53:26: error: 'TUSB_DMA_CTRL_REV' undeclared (first use in this function)
>
> The patch below should fix this, I don't have any blackfin
> machines or compilers here to test with though.
>
> Regards,
>
> Tony
>
> 8< ---------------------
> From: Tony Lindgren <tony@xxxxxxxxxxx>
> Date: Thu, 8 Sep 2016 10:36:47 -0700
> Subject: [PATCH] usb: musb: Fix tusb6010 compile error on blackfin
>
> We have CONFIG_BLACKFIN ifdef redefining all musb registers in
> musb_regs.h and tusb6010.h is never included causing a build
> error with blackfin-allmodconfig and COMPILE_TEST.
>
> Let's fix the issue by not building tusb6010 if CONFIG_BLACKFIN
> is selected.
>
> Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
>
> diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
> --- a/drivers/usb/musb/Kconfig
> +++ b/drivers/usb/musb/Kconfig
> @@ -87,7 +87,7 @@ config USB_MUSB_DA8XX
> config USB_MUSB_TUSB6010
> tristate "TUSB6010"
> depends on HAS_IOMEM
> - depends on ARCH_OMAP2PLUS || COMPILE_TEST
> + depends on (ARCH_OMAP2PLUS || COMPILE_TEST) && !BLACKFIN

Would this cause more issue later when trying to enable all glue drivers
in one build?

The macros defined in tusb6010.h are only used in tusb6010.c, so how
about move '#include "tusb6010.h"' from musb_regs.h to tusb6010.c
instead? This gives flexibility to random config test, isn't it?

Regards,
-Bin.