CC3351: CC3351 Driver: Error on Reloading Kernel Module Without Power Cycle

Part Number: CC3351


Hello TI Team,

We are currently evaluating the CC3351 module using the CC33xx Linux driver on our custom platform. We have observed the following issue:

  1. Load the CC33xx driver modules (cc33xx and cc33xx_sdio) after boot → Wi-Fi works as expected.

  2. Remove the modules using rmmod without powering down the system.

  3. Attempt to reload the modules using modprobe → the driver fails with errors such as:

     
    wlcore: WARNING illegal id in tx completion: 0
    wlcore: ERROR Fatal error during driver init, cannot recover
    wlcore: ERROR boot IRQ timeout
    wlcore: ERROR FW download failed
  4. At this point, wlan0 cannot be brought up (ifconfig wlan0 up reports “No such device”).log02.txt 

This suggests that the driver does not support clean unload and reload without a full power cycle.

Could you please advise:

  • Is this behavior expected for the CC3351 / CC33xx Linux driver?

  • Is there any recommended procedure or workaround to safely reload the driver modules without rebooting or power-cycling the board?

  • Are there specific firmware or driver versions that improve module reload stability?

Thank you for your guidance and support.

Dylan

  • Hello,

    Can you please share your system's devicetree/DTS and kernel version? Are you using BLE as well?

    It should be possible to unload the drivers but we typically recommend to unbind and rebind the mmc interface rather than simply unloading the modules. 

  • Hello Sabeeh,

    Apologies for the late reply.

    We are using Linux kernel v6.1.102, and BLE is also in use. Regarding the DTS, due to internal customer restrictions, we are unable to share it at this moment. We will provide it once it becomes available.

    Thank you very much for your response and support.

    Best regards,

    Dylan