[LEDE-DEV] build problem in layerscape target

Hauke Mehrtens hauke at hauke-m.de
Sun Oct 8 04:48:20 PDT 2017


Hi Yangbo,

I am seeing the following build problem in the layerscape target in the
master tree.
I fixed the missing config symbol problem, found by the build bots, but
they will run into this in the next run. I saw this on the 64bit and the
32 bit build.

----------------------------------------------------------------------
  CC [M]  drivers/usb/host/ehci-fsl.o
In file included from drivers/usb/host/ehci-fsl.c:45:0:
drivers/usb/host/ehci.h: In function 'ehci_readl':
drivers/usb/host/ehci.h:757:9: error: implicit declaration of function
'readl' [-Werror=implicit-function-declaration]
  return readl(regs);
         ^
drivers/usb/host/ehci.h: In function 'ehci_writel':
drivers/usb/host/ehci.h:784:3: error: implicit declaration of function
'writel' [-Werror=implicit-function-declaration]
   writel(val, regs);
   ^
In file included from drivers/usb/host/ehci-fsl.c:26:0:
drivers/usb/host/ehci-fsl.c: In function 'hcd_to_ehci_fsl':
./include/linux/kernel.h:836:27: error: 'struct ehci_fsl' has no member
named 'ehci'
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                           ^
drivers/usb/host/ehci-fsl.c:100:8: note: in expansion of macro
'container_of'
 return container_of(ehci, struct ehci_fsl, ehci);
        ^
./include/linux/kernel.h:836:48: error: initialization from incompatible
pointer type [-Werror=incompatible-pointer-types]
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                ^
drivers/usb/host/ehci-fsl.c:100:8: note: in expansion of macro
'container_of'
 return container_of(ehci, struct ehci_fsl, ehci);
        ^
In file included from ./include/linux/compiler.h:58:0,
                 from ./include/linux/linkage.h:4,
                 from ./include/linux/kernel.h:6,
                 from drivers/usb/host/ehci-fsl.c:26:
./include/linux/compiler-gcc.h:159:2: error: 'struct ehci_fsl' has no
member named 'ehci'
  __builtin_offsetof(a, b)
  ^
./include/linux/stddef.h:16:32: note: in expansion of macro
'__compiler_offsetof'
 #define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
                                ^
./include/linux/kernel.h:837:29: note: in expansion of macro 'offsetof'
  (type *)( (char *)__mptr - offsetof(type,member) );})
                             ^
drivers/usb/host/ehci-fsl.c:100:8: note: in expansion of macro
'container_of'
 return container_of(ehci, struct ehci_fsl, ehci);
        ^
drivers/usb/host/ehci-fsl.c: At top level:
drivers/usb/host/ehci-fsl.c:126:8: error: redefinition of 'struct ehci_fsl'
 struct ehci_fsl {
        ^
drivers/usb/host/ehci-fsl.c:85:8: note: originally defined here
 struct ehci_fsl {
        ^
drivers/usb/host/ehci-fsl.c:146:8: error: unknown type name 'strut'
 static strut ehci_fsl *hcd_to_ehci_fsl(struct usb_hcd *hcd)
        ^
drivers/usb/host/ehci-fsl.c:146:23: error: expected '=', ',', ';', 'asm'
or '__attribute__' before '*' token
 static strut ehci_fsl *hcd_to_ehci_fsl(struct usb_hcd *hcd)
                       ^
drivers/usb/host/ehci-fsl.c: In function 'fsl_ehci_drv_probe':
drivers/usb/host/ehci-fsl.c:259:3: error: implicit declaration of
function 'clrsetbits_be32' [-Werror=implicit-function-declaration]
   clrsetbits_be32(hcd->regs + FSL_SOC_USB_CTRL,
   ^
drivers/usb/host/ehci-fsl.c:265:3: error: implicit declaration of
function 'iowrite32be' [-Werror=implicit-function-declaration]
   iowrite32be(USB_CTRL_USB_EN, hcd->regs + FSL_SOC_USB_CTRL);
   ^
drivers/usb/host/ehci-fsl.c: In function 'usb_phy_clk_valid':
drivers/usb/host/ehci-fsl.c:333:8: error: implicit declaration of
function 'in_be32' [-Werror=implicit-function-declaration]
  if (!(in_be32(non_ehci + FSL_SOC_USB_CTRL) & PHY_CLK_VALID))
        ^
drivers/usb/host/ehci-fsl.c: In function 'ehci_fsl_setup_phy':
drivers/usb/host/ehci-fsl.c:361:4: error: implicit declaration of
function 'clrbits32' [-Werror=implicit-function-declaration]
    clrbits32(non_ehci + FSL_SOC_USB_CTRL,
    ^
drivers/usb/host/ehci-fsl.c:387:31: error: too few arguments to function
'usb_phy_clk_valid'
    pdata->have_sysif_regs && !usb_phy_clk_valid(hcd)) {
                               ^
drivers/usb/host/ehci-fsl.c:327:13: note: declared here
 static bool usb_phy_clk_valid(struct usb_hcd *hcd,
             ^
drivers/usb/host/ehci-fsl.c:415:9: error: implicit declaration of
function 'ioread32be' [-Werror=implicit-function-declaration]
   if (!(ioread32be(non_ehci + FSL_SOC_USB_CTRL) &
         ^
drivers/usb/host/ehci-fsl.c: In function 'ehci_fsl_drv_suspend':
drivers/usb/host/ehci-fsl.c:747:30: error: initialization from
incompatible pointer type [-Werror=incompatible-pointer-types]
  struct ehci_fsl *ehci_fsl = hcd_to_ehci_fsl(hcd);
                              ^
drivers/usb/host/ehci-fsl.c: In function 'ehci_fsl_drv_resume':
drivers/usb/host/ehci-fsl.c:791:30: error: initialization from
incompatible pointer type [-Werror=incompatible-pointer-types]
  struct ehci_fsl *ehci_fsl = hcd_to_ehci_fsl(hcd);
                              ^
drivers/usb/host/ehci-fsl.c: In function 'hcd_to_ehci_fsl':
drivers/usb/host/ehci-fsl.c:101:1: warning: control reaches end of
non-void function [-Wreturn-type]
 }
 ^
cc1: some warnings being treated as errors
scripts/Makefile.build:299: recipe for target
'drivers/usb/host/ehci-fsl.o' failed
make[8]: *** [drivers/usb/host/ehci-fsl.o] Error 1
scripts/Makefile.build:544: recipe for target 'drivers/usb/host' failed
make[7]: *** [drivers/usb/host] Error 2
scripts/Makefile.build:544: recipe for target 'drivers/usb' failed
make[6]: *** [drivers/usb] Error 2
Makefile:991: recipe for target 'drivers' failed
----------------------------------------------------------------------


This was found with this configuration activating all modules:

----------------------------------------------------------------------
hauke at hauke-desktop:~/openwrt/lede$ ./scripts/diffconfig.sh
CONFIG_TARGET_layerscape=y
CONFIG_TARGET_layerscape_armv8_32b=y
CONFIG_TARGET_layerscape_armv8_32b_Default=y
CONFIG_ALL_KMODS=y
CONFIG_ALL_NONSHARED=y
----------------------------------------------------------------------

Hauke



More information about the Lede-dev mailing list