This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

WL1837MOD: WL1837MOD and Wilink8 NIGHTMARE

Part Number: WL1837MOD

I'm trying to build the configuration utilities for the WL1837MOD for a ZynqMP. Since the driver is now in mainline Linux, there is no need to build the drivers or patch the kernel from Wilink8. As is, WiFi is partially working on this board, however I still need to run the Wilink8 wlconf tool to configure the radio and generate the wl18xx-conf.bin file.

First of all, the kernel used for Wilink8 is very old, 4.19. Current LTS is 5.15, so there will be build issues if TI has not updated anything since Wilink8 R8.8.

After setting up the build tools to use Petalinux SDK there are several issues. The SDK sets environment variables that conflict with ones set in setup-env. Namely CROSS_COMPILE, CC, AR, LD are all preset. Openssl and libnl also each use the siteconfig script from the SDK to setup the config environment ahead of time, leading to such things as `aarch64-xilinx-linux-aarch64-xilinx-linux-gcc: no such file or directory'. Unsetting these variables allows Openssl and libnl to compile. Next is crda, which because the CROSS_COMPILE variable is unset uses the host CC which is wrong. Setting this in the build_wl18xx.sh script manually to aarch64-xilinx-linux-gcc/ar/ld yeilds the next biggest issue.

How does one compile Wilink8 for aarch64?

Compiling nvs.o (from git://git.ti.com/wilink8-wlan/18xx-ti-utils.git) fails with:

<redacted>/sysroots/cortexa72-cortexa53-xilinx-linux/usr/include/bits/long-double.h:23:10: fatal error: bits/long-double-32.h: No such file or directory
 #include <bits/long-double-32.h>
          ^~~~~~~~~~~~~~~~~~~~~~~

because there is no 32bit long-double.

Has anyone been able to compile the Wilink8 binaries for aarch64?

Where can I get wlconf pre-built for aarch64?

Does TI have any updates for this chip? Fixes for the repo? It's still being sold for new designs...

  • Hi,

    Thanks for the feedback.

    On WiLink, the approach is to progress periodically and update one of the two major components, kernel and hostap/supplicant.

    The last R8.8 release was an update of the kernel from 4.4 to 4.19.

    Soon the hostap/supplicant is going to get updated from v2.9 to the latest v2.10.

    I believe that next one would eventually include the kernel update as well.

    As you noticed though, we do not upstream to the main repository (as we used in the past) but use a copy of the mainline on TI git and implement patches on top (for both, kernel and hostap).

    I can take this internally and discuss.

    Regards,

    Shlomi

  • Thanks for the reply Shlomi. It would be great to get this updated.

    At the moment I have downloaded the AM64X rootfs which contains a wlconf binary that I can run. It appears that this is built with yocto, is there a recipe in one of the TI layers that contains Wilink8?

  • Hi,

    Basically, the same AM64x SDK also contains the WiLink drivers that matches the ones in R8.8 but without the patches so you can use it as a reference.

    Let me know if you need anything else.

    Regards,

    Shlomi

  • Thanks. I will use the AM64x SDK's build of the WiLink utilities for now.

    Is there a mailing list for when this package may be updated?

    I believe that next one would eventually include the kernel update as well.

  • Unfortunately no. 

    It is still under discussion.

    The next one with an updated hostap/supplicant is under testing as we speak so I expect it to be out towards e/o quarter.

    Shlomi

  • Great, thanks for your help!