Verdin imx8mp wifi / bluetooth RF tests and LabTool

Hello,

I am trying to get wifi / bluetooth RF approval tests done for a custom carrier board equipped with Verdin imx8mp module.

So far I have managed to include the meta-toradex-wifi branch on my image (BSP 6.5 / Kirkstone, 5.15.xx kernel) and set the module on manufacturing mode. LabTool is found in the /home/root and also /etc/modprobe.d/toradex-wifi-config.conf can be modified to enable/disable driver sets. I have also acquired the proper driver file set under the NDA.

My question here is: How to actually use the LabTool running on the module itself and is there something else needed, or should this be done in some totally different way? So far I have only found examples where LabTool is run on an external windows PC. I also compiled this mfgbridge ( found in examples / discussions / NXP manual ) for aarch64 and it can be run on the device, too. Although, I dont know if it is actually needed.

So far if I try to run bluetooth tests on LabTool it just instantly crashes. Here is an example snippet from LabTool in wifi test mode. At least some configuration should propably be set to something else? Maybe there is also some issue with mlan driver ?

Name:           Dut labtool
Version:        1.1.0.188
Date:           Apr  5 2011 (23:00:00)

Note:

1. =========WiFi tool=============
2. =========BT   tool=============

Enter CMD 99 to Exit

Enter option: 1
Name:           DutApiClass
Interface:      EtherNet
Version:        1.1.0.188
Date:           Apr  5 2011

Note:

Initialize drvwrapper ....
ioctl[SIOCGIWPRIV]: No such device
mlan0     no private ioctls.
 DutIf_InitConnection: 0x00000000
--------------------------------------------------------
                W89xx (802.11a/g/b/n/ac) TEST MENU
--------------------------------------------------------
Enter option: 88
DLL Version : 1.1.0.188
LabTool Version: 1.1.0.188
ether bridge: hostcmd fail
 DutIf_GetFWVersion: 0xFFFFFFF9
ether bridge: hostcmd fail
ether bridge: hostcmd fail
SOC OR Version: 0.0      Customer ID:   0
RF OR Version:  0.0      Customer ID:   0

Thanks in advance !

Best regards,
Mikael

Hello Mikael,
I’m glad you could build the image with meta-toradex-wifi. I expected that when building the image with mfg-mode, you should have everything properly setup to use labtool without further changes.
I retested a new build and found out that the wrong firmware filename was configured on the module load config file, and because of that, no firmware was loaded.

I fixed the issue and pushed another commit to GitHub - toradex/meta-toradex-wifi at kirkstone-6.x.y.

Could you update to the latest version there and build it again?

Thank you for your report,
Rafael

Hi Rafael,

Thank you for your quick response. I tried building from the latest commit, but it doesnt make any difference in how LabTool behaves (same response in wifi test as above). I still wonder if I am missing something or not using LabTool as it is supposed to be used :thinking:

Br,
Mikael

Hello Mikael,
now we need to check if the setup on your target image is correct. I tested the version before the patch and could replicate the issue you’re describing, but it got fixed in my case with the last commit.

Could send the output of:

dmesg|grep -i "mlan\|wlan"
cat /etc/modprobe.d/moal.conf
cat /etc/modprobe.d/toradex-wifi-config.conf
ls -l /lib/firmware/nxp/

Thank you!
Rafael

Hi Rafael,

Apparently the drivers are not properly installed and the device is not in manufacturing mode after all, as for instance cat /etc/modprobe.d/moal.conf returns “file not found” or dmesg|grep -i “mlan” returns nothing. But I really can’t understand why the layer is not properly included in my image even though I have followed the instructions to every detail.

I can build for example toradex-wifi-config or labtool on its own, but they are not included in the image if not separately added to the main image recipe. If I add them to the main image recipe, LabTool executable and /etc/modprobe.d/toradex-wifi-config.conf can be found. But even then, the drivers are not included (or that is my conclusion, as the first two lines you asked return nothing). Also, the drivers can’t be built on their own because “make: No targets specified and no makefile found. Stop.” .

I get this warning when building the image

WARNING: /myworkdir/…/layers/meta-toradex-wifi/recipes-kernel/nxp-wifi-bt/kernel-module-btmrvl.bb: Unable to get checksum for kernel-module-btmrvl SRC_URI entry 0001-makefile.patch: file could not be found

Could that give any clues what is wrong ? I’ve checked all my .conf files for any possible lines that would override these, but can’t find any.

MACHINEOVERRIDES =. "default-nxp-proprietary-driver:"
MACHINEOVERRIDES =. "mfg-mode:"

Regards,
Mikael

At least that explains the previous labtool results. I still don’t understand what’s the difference between your setup and mine.

Could you please try to build both modules manually and give me the log output?

bitbake -c cleanall kernel-module-wifimrvl
bitbake kernel-module-wifimrvl
bitbake -c cleanall kernel-module-btmrvl
bitbake kernel-module-btmrvl

Thank you!

Hello Rafael,

Thanks for your support and quick responses. I have managed to get the layer working properly. I dont know what the actual issue was, but I wiped all my layer/build folders and all possible caches (for the 101st time…), and then the layer compiled as it was supposed to :man_shrugging:

Both wifi and bluetooth testmodes seem to work so far.

Best regards,
Mikael

Great, thank you for the feedback!

Best regards,
Rafael