7 Replies Latest reply on Jul 7, 2017 4:09 AM by amank_21

    'wl' utility: source code



      I'm testing a CYW4343W wireless chipset on the NXP Sabre board and I'm very interested by 'wl' utility (not the driver), especially the packet engine functions for RF certification.

      The 'wl' binary is included in the Sabre Linux image provided by NXP and everything is working fine but I'd like to get a grip on the sources for a better integration in our custom software build. Where can I find it?





        • 1. Re: 'wl' utility: source code

          Hello Patrick,


          We can not share source of wl utility with any one as it is cypress proprietary.
          we can compile and provide you wl utility for different platform.



          • 2. Re: 'wl' utility: source code

            Hello Aman,


            Finally, porting 'wl' on our system won't be a problem because it's statically built for a similar platform.


            I would like to use it with the manufacturing driver + firmware  to benefit from the packet engine. The needed driver (bcmdhd.mfgtest.ko)  was derived the open source bcmdhd and is provided by NXP as a compiled binary (Is it legal?). I'm not able to insert this module on my own linux system (same kernel as the Sabre reference software), even by forcing module_version check and version_magic check. Is it possible to get the source of bcmdhd.mfgtest to rebuild the module?




            • 3. Re: 'wl' utility: source code

              Hello Patrick,

              you are facing problem with bcmdhd.*.ko file as it is not compiled for your platform.

              do you have any cypress point of contact ?
              as cypress do release a source code for bcmdhd driver that can be compiled for different platform.

              insmod is failing because of this only your bcmdhd is not compiled for your platform.



              1 of 1 people found this helpful
              • 4. Re: 'wl' utility: source code

                Hello Aman,


                I finally managed to load bcmdhd.mfgtest.ko which was build for Linux kernel 4.1.15. I had to rebuild the kernel (same version) with MODULE_FORCE_LOAD option enabled. This new kernel gives a warning when the driver is loaded but 'wl' and the  packet engine function are working properly. This is acceptable since I'm not building a production software but a test/certification software.


                Now I have to address another problem: 802.11n support in CYW4343W




                • 5. Re: 'wl' utility: source code

                  hello patrick,


                  I am closing this thread. we will try to resolve your other thread.




                  • 6. Re: 'wl' utility: source code

                    One last question Aman,

                    Do you confirm that supplied 'wl' can support any bcm43xx chipset by default?

                    I just want to make sure the one I got from NXP Linux image supports all features of bcm4343.

                    Thank you,



                    • 7. Re: 'wl' utility: source code

                      Hello Patrick,


                      WL utility is dependent on:

                      1) toolchain by which it got compiled.

                         a) if it is statically linked( you can check it by {$file wl } command ) then you don't need any toolchain.

                         b) if it is dynamically linked then you may require the binaries from the same toolchain.


                      By default we always try to provide statically linked wl utility.


                      2) The functionality of IC.

                        In general WL will work with all ic's but some ics have specific features that may or may not be enabled in the wl utility.
                        for that you have to request the wl utility for that particular ic.


                      The one that you have will work for all BCM43xx series.


                      3) Platform on which you are running.
                        if you have wl utility for ARM then it can't be run on x86.