Backport for 802.15.4 doesn't compile

Discussion in 'Kernels' started by cyrilf, Jan 20, 2017.

  1. cyrilf

    cyrilf Active Member

    Joined:
    Feb 19, 2015
    Messages:
    162
    Likes Received:
    45
    The backport for the IEEE 802.15.4 stack doesn't compile for the UDOO NEO (probably the same with UDOO QUAD...). Here are the logs I get :
    Code:
      LD      backports/compat/compat.o
      CC      kernel/time/clockevents.o
      LD      backports/compat/built-in.o
      LD      backports/drivers/net/ieee802154/built-in.o
      CC      drivers/base/pinctrl.o
      LD      backports/drivers/net/usb/built-in.o
      LD      backports/drivers/net/wireless/ath/built-in.o
      CC      fs/ext4/page-io.o
      CC      fs/ext4/ioctl.o
      LD      backports/drivers/net/wireless/ath/ar5523/built-in.o
      LD      drivers/base/built-in.o
      LD      backports/drivers/net/wireless/ath/ath10k/built-in.o
      CC      drivers/bus/imx-weim.o
      LD      backports/drivers/net/wireless/ath/ath6kl/built-in.o
      LD      backports/drivers/net/wireless/ath/ath9k/built-in.o
      LD      backports/drivers/net/wireless/ath/carl9170/built-in.o
      LD      backports/drivers/net/wireless/ath/wcn36xx/built-in.o
      LD      drivers/bus/built-in.o
      LD      backports/drivers/net/wireless/brcm80211/built-in.o
      LD      drivers/cdrom/built-in.o
      LD      backports/drivers/net/wireless/brcm80211/brcmfmac/built-in.o
      CC      drivers/char/mem.o
      LD      backports/drivers/net/wireless/brcm80211/brcmutil/built-in.o
      LD      backports/drivers/net/wireless/libertas_tf/built-in.o
      LD      backports/drivers/net/wireless/mwifiex/built-in.o
      LD      backports/drivers/net/wireless/p54/built-in.o
      LD      backports/drivers/net/wireless/rsi/built-in.o
      CC      drivers/char/random.o
      LD      backports/drivers/net/wireless/rt2x00/built-in.o
      LD      backports/drivers/net/wireless/ti/built-in.o
      LD      backports/drivers/net/wireless/ti/wl18xx/built-in.o
      LD      backports/drivers/net/wireless/ti/wlcore/built-in.o
      LD      backports/drivers/net/wireless/zd1211rw/built-in.o
      LD      backports/drivers/net/wireless/built-in.o
      CC      fs/ext4/namei.o
      LD      backports/drivers/usb/class/built-in.o
      LD      backports/net/bluetooth/built-in.o
      LD      backports/net/bluetooth/bnep/built-in.o
      LD      backports/net/bluetooth/hidp/built-in.o
      LD      backports/net/bluetooth/rfcomm/built-in.o
      CC      backports/net/ieee802154/netlink.o
      CC      backports/net/ieee802154/nl-mac.o
      CC      fs/fat/cache.o
    In file included from backports//include/net/ieee802154_netdev.h:31:0,
                     from backports/net/ieee802154/nl-mac.c:32:
    backports//include/net/cfg802154.h:43:16: warning: 'struct wpan_dev' declared inside parameter list
             struct wpan_dev *wpan_dev);
                    ^
    backports//include/net/cfg802154.h:43:16: warning: its scope is only this definition or declaration, which is probably not what you want
    backports//include/net/cfg802154.h:48:17: warning: 'struct wpan_dev' declared inside parameter list
              struct wpan_dev *wpan_dev, __le16 pan_id);
                     ^
    backports//include/net/cfg802154.h:50:14: warning: 'struct wpan_dev' declared inside parameter list
           struct wpan_dev *wpan_dev, __le16 short_addr);
                  ^
    backports//include/net/cfg802154.h:53:6: warning: 'struct wpan_dev' declared inside parameter list
          u8 max_be);
          ^
    backports//include/net/cfg802154.h:56:7: warning: 'struct wpan_dev' declared inside parameter list
           u8 max_csma_backoffs);
           ^
    backports//include/net/cfg802154.h:59:7: warning: 'struct wpan_dev' declared inside parameter list
           s8 max_frame_retries);
           ^
    backports//include/net/cfg802154.h:61:12: warning: 'struct wpan_dev' declared inside parameter list
         struct wpan_dev *wpan_dev, bool mode);
                ^
    backports/net/ieee802154/nl-mac.c: In function 'ieee802154_nl_fill_iface':
    backports/net/ieee802154/nl-mac.c:96:11: error: 'struct net_device' has no member named 'ieee802154_ptr'
      phy = dev->ieee802154_ptr->wpan_phy;
               ^
    backports/net/ieee802154/nl-mac.c: In function 'ieee802154_set_macparams':
    backports/net/ieee802154/nl-mac.c:507:11: error: 'struct net_device' has no member named 'ieee802154_ptr'
      phy = dev->ieee802154_ptr->wpan_phy;
               ^
    scripts/Makefile.build:308: recipe for target 'backports/net/ieee802154/nl-mac.o' failed
    make[2]: *** [backports/net/ieee802154/nl-mac.o] Error 1
    scripts/Makefile.build:455: recipe for target 'backports/net/ieee802154' failed
    make[1]: *** [backports/net/ieee802154] Error 2
    Makefile:851: recipe for target 'backports' failed
    make: *** [backports] Error 2
    make: *** Waiting for unfinished jobs....
     
    Last edited: Jan 20, 2017
  2. Vishal Raveendranathan

    Vishal Raveendranathan New Member

    Joined:
    Mar 22, 2017
    Messages:
    1
    Likes Received:
    0
    Any luck with this? I am also facing the same problem while backporting. Please let me know if you made any progress in this :) Thanks

     
  3. cyrilf

    cyrilf Active Member

    Joined:
    Feb 19, 2015
    Messages:
    162
    Likes Received:
    45
    Hi,

    Sorry, I didn't find any solution for this. I didn't look a long time as I have other more important stuff to fix.
     
  4. Andrea Rovai

    Andrea Rovai Well-Known Member

    Joined:
    Oct 27, 2014
    Messages:
    1,703
    Likes Received:
    237
    can you give us more info apart from the log? Following the guide step by step it should compile. Can you provide info on your environment setup?
     
  5. cyrilf

    cyrilf Active Member

    Joined:
    Feb 19, 2015
    Messages:
    162
    Likes Received:
    45
    Yes, I compile the kernel from the UDOO OpenEmbedded layer.

    Before compiling, edit the defconfig file in the meta-udoo/recipes-kernel/linux/linux-udooboard/udooneo directory. To do so, run those commands in the BUILDDIR:
    Code:
    bitbake linux-udooboard -c configure
    bitbake linux-udooboard -c devshell
    In the new opened terminal window, type:
    Code:
    make menuconfig
    Enable the 802.15.4 driver and the 6LowPAN module in the Backport sub-menu and save the new config file.
    Copy the new config file .config to replace de deconfig file in the meta-udoo/recipes-kernel/linux/linux-udooboard/udooneo directory. Close the window.
    Run the compilation with the new config file:
    Code:
    bitbake linux-udooboard
     
  6. Andrea Rovai

    Andrea Rovai Well-Known Member

    Joined:
    Oct 27, 2014
    Messages:
    1,703
    Likes Received:
    237
    Sorry, I thought you were talking about UDOO official kernel.
    This error may be related to the specific case of Open Embedded.
    In this case I suggest you to ask to @graugans, who created that.
     
  7. cyrilf

    cyrilf Active Member

    Joined:
    Feb 19, 2015
    Messages:
    162
    Likes Received:
    45
    OE does compile the official UDOO kernel.

    I tried with the kernel sources alone using the arm-none-eabihf toolchain and it seems to work. This is effectively environment related.
     

Share This Page