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.

[参考译文] CC3135:NWP 驱动程序卡住、冻结、循环

Guru**** 2393725 points
Other Parts Discussed in Thread: CC3135

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1000066/cc3135-nwp-driver-stuck-frozen-looping

器件型号:CC3135

您好!
在使用 STM32F7和 nortos 评估 CC3135时、我发现、如果 情况不完全符合计划、CC3135驱动程序 simplelink_sdk_wi_plugin_4_20_00_10可能会卡在环路中。 这对于应用来说可能非常危险。

在我的测试中、驱动程序卡在一个循环中、其中:

SL_WlanPolicySet (sl_WLAN_policy_connection、sl_WLAN_connection_policy (1、1、0、0)、NULL、0)

TI 是否有任何计划设计该驱动器以实现稳健性? 在大多数情况下(如下所示)、似乎将责任归咎于主机 SPI 接口、但是、正确的驱动程序不能使 主机崩溃。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/958865/boostxl-cc3135-about-simplelink-host-driver-porting-to-stm32-platform?tisearch=e2e-sitesearch&keymatch=cc3135%20stuck#

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/953144/cc3135mod-https-get-of-large-file-stalls-when-using-httpclient_readresponsebody?tisearch=e2e-sitesearch&keymatch=cc3135%25252525252520loop#

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/937590/cc3135mod-code-stuck-in-simplelink-driver-_sldrvrxhdrread?tisearch=e2e-sitesearch&keymatch=cc3135%2525252520loop#

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/858459/boostxl-cc3135-sl_start-returns-1-and-sl_stop-stuck-in-a-loop-while-other-function-like-sl_wlansetmode-works-with-wired-response?tisearch=e2e-sitesearch&keymatch=cc3135%25252520hal#

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/881434/boostxl-cc3135-no-cmd-ack-detected-when-using-wlan_normal_policy/3287599?tisearch=e2e-sitesearch&keymatch=cc3135%252520hal#3287599

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/960100/cc3135mod-cc3135-hangs?tisearch=e2e-sitesearch&keymatch=cc3135%20hang#

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Antonio、

    大多数问题与移植问题(通常是 SPI 和 IRQ 问题)相关。  

    卡死后、您的跑步到底是什么?  

    驱动程序到底在哪里卡住(  程序计数器在哪里 、调用堆栈的状态如何)?

    在哪里可以运行其他命令? sl_WlanPolicySet  非常基本、从未引起过类似问题。

    您是否收到任何错误返回代码或异步错误事件?  

    您可以尝试提供 NWP 日志、以便我们更好地了解您的案例(请参阅 https://www.ti.com/lit/swru455中的第20.1章)。

    BR、

    Kobi

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    真正的问题是、为什么编写驱动程序时会使用 _SlDrvObjGlobalLockWaitForever 锁定主机

     主机卡在:
    [Nonos.c]-_SlNonOsSemGet ()函数
    while (超时>0)

      if (WaitValue ==*pSyncObj)    
      {
       *pSyncObj = SetValue;
       中断;
      }

    在 我的评估过程中、我看到它在不同的时间卡在这里。

    如果您有更好的北区港口、请发布。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    以下是调用堆栈:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在 API 获得堆栈时是否调用 sl_task()?

    您是否真的从  _SlNonOsSemGet 调用_SlNonOsHAndleSpawnTask (如堆栈所示?)。

    似乎您发送了命令、并且正在等待命令响应(阻止在收到响应时将发布的信标)。  检查移植层、查看序列(SPI TX、后跟 SPI RX)是否正常工作、以及是否有处理响应的上下文。

    BR、

    Kobi