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.

PROCESSOR-SDK-AM335X: Wilink8 and Time Sync with kernel 4.19

Part Number: PROCESSOR-SDK-AM335X

Hi,

I have been struggling for some time trying to get the latest Wilink 8 Time Sync support compiled and running on BeagleBoneBlack with the Stream Unlimited multiroom cape. The intention is to get Time Sync running as described in "WL18xx Clock Synchronisation with NTP" for a commercial product.

My first issue is trying to get a recent kernel to compile with the wilink build-utilites. Here is a summary of what I have found so far:

Using build-utilites from here

git clone git://git.ti.com/wilink8-wlan/build-utilites.git

and using the DEFAULT settings in setup-env:

export TOOLCHAIN_PATH=DEFAULT

export KERNEL_PATH=DEFAULT

then ./build_wl18xx.sh update R8.7_SP3 succeeds and makes a 4.1 kernel with drivers that include some of but not all the needed time sync support. However 4.1 is far too old to be secure and we need a more recent kernel.

The TI processor SDK from ti-sdk-am335x-evm-07.00.00.00-Linux-x86-Install.bin installs fine, but includes only a 3.1 kernel. Far too old.

The TI processor SDK from ti-processor-sdk-linux-am335x-evm-06.03.00.106-Linux-x86-Install.bin installs fine and builds a 4.19 kernel but it does not include the necessary Time Sync support in the wilink drivers.

So naturally I tried to build build-utilites using the ti-processor-sdk-linux-am335x-evm-06.03.00.10 SDK with setup-env like:

export TOOLCHAIN_PATH=/opt/ti-processor-sdk-linux-am335x-evm-06.03.00.106/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/

export KERNEL_PATH=/opt/ti-processor-sdk-linux-am335x-evm-06.03.00.106/board-support/linux-4.19.94+gitAUTOINC+be5389fd85-gbe5389fd85/

But this fails with many compilation errors, due to the fact that kernel 4.19 has many changes incompatible with the wilink and mac80211 drivers in build-utilites, such as changes from init_timer() now not supported to timer_init(). mmc_power_restore_host() and mmc_power_save_host() have been removed
etc etc, including many very low level problem apparently due to errors/omissions in backports etc. I read a comment from Saurabh that this process only works up to kernel 4.4.

So, my main question is: what is the approved way to build a 4.19 (or later) kernel with the time sync support required to do Time Sync between Wilink 8 equipped BBBs?

Supplemantary question. In "WL18xx Clock Synchronisation with NTP" it refers to the procedure to add time sync support using a link to a patch set from

gforge.ti.com/gf/download/user/1160/7841/sdk8-ntp-wilink8-v0.2.tar.gz

this link is no longer valid, but it appears it contained a bunch of patches to add the necessary time sync support to wilink 8 drivers, plus patches to ntp etc. How can I get this patch set?

  • Similar query is being answered on following thread :

  • Thanks Saurabh,

    The answer you refer to does indeed deal what the quesiton of WiLink 8, but it does not address the different questions put here about how to build the WiLink support code for kernel 4.19?

    Can you help with that?

    Cheers.

  • Hi,

    Last WiLink8 release was on kernel 4.4.x . You may use build utilities to build all components - ex: supplicant etc. except modules i.e. wl8 driver kernel modules since backports support kernel versions upto kernel 4.4.x. We are working on updating the release to kernel 4.19.x . You may use in-tree 4.19.x wl8 kernel drivers . Also you may refer to 4.19.x  driver patches under development  branch :  .  FYI - This is work in progress and patches are not published yet.

    Thanks

    Saurabh