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.
工具/软件:Linux
您好!
我们在 iMX27 SoC 上使用 WL1835MOD 与 Linux 4.4.38 (主线/香草)。 用户土地是基于 Debian Jessie (Armel)/ busybox 的。 WiLink 连接到第一个 SD 接口(sdhci1)。
&sdhci1{
pinctrl-names ="default";
pinctrl-0 =<&pinctrl_sdhc1>;
总线宽度=<4>;
VMMC-supply =<
_WLAN>;
status ="确定";
#address-cells =<1>;
#size-cells =<0>;
wlcore:wlcore@2{
compatible ="ti、wl1835";
reg =<2>;
interrupt-parent =<&GPIO6>;
interrupts =<3 IRQ_TYPE_HIGH_HIGH;
};
};}
我们使用 TI 的'linux-firmware' git 存储库中的固件。
Git:/git.ti.com/wilink8-wlan/linux-firmware.git
我们已经测试了'8.9.0.0.69'和'8.9.0.5.55'版本。
我们不使用任何自定义固件配置。
我们能够加载固件并分配静态 IP 地址。
ifconfig wlan0 up
[90.698270] wlcore:PHY 固件版本:版本8.2.0.233 [90.820751] wlcore:固件已启动(版本8.9.0.1.55)
我们可以扫描 AP 并连接到未加密 AP。
iw wlan0 connect -w testwifi ifconfig wlan0 192.168.0.123
大多数情况下、我们甚至能够 ping 通 AP。
ping 192.168.0.254 ping 192.168.0.254 (192.168.0.254):56个数据字节 从192.168.0.254开始64字节:seq=0 TTL=64 time=997.957ms 从192.168.0.254开始64字节:seq=1 TTL=64 time=2.798ms 从192.168.0.254开始64字节:seq=2 TTL=64 time=3.238ms 从192.168.0.254开始64字节:seq=3 TTL=64 Timer=5.58ms ………
如果我们尝试下载带有 wget 的 AP 状态页面、我们会收到以下警告。
[2472.440442] wlcore:警告 RX 中损坏的数据包:status:0x1 len:1536 [2472.622218] wlcore:警告 RX 中损坏的数据包:status:0x1 len:480 [2473.042119] wlcore:警告 RX 中损坏的数据包:status:0x1 len:480 [ 2473.882080] wlen:警告:RX 中损坏的数据包: 480 [2475.563958] wlcore:警告 RX 中损坏的数据包:状态:0x1 len:480 [2478.922844] wlcore:警告 RX 中损坏的数据包:状态:0x1 len:480
当我们尝试从 DHCP 服务器获取 IP 地址时、它会紧张成功。
udhcpc -i wlan0 udhcpc:启动、v1.25.0 udhcpc:发送 discover udhcpc:发送192.168.0.101的 select udhcpc:发送192.168.0.101的 select udhcpc:发送192.168.0.101的 select udhcpc:发送 discover udhcpc:发送 udhcpc: 发现发送 udhcpc :发现发送 udhcpc:发现发送 udhcpc:发现发送 udhcpc 发送 udhcpc:发现发送 udhcpc:发现发送 udhcpc 发送 ud
如果我们在终止 DHCP 客户端后尝试分配 IP 地址、则会出现以下错误。
# ifconfig wlan0 192.168.0.123 [2966.252744] mxc-mmc 10013000.sdhci:mxcmci_watchdog:写入超时(状态= 0x32000840) [2966.261070]--- [在此处剪切]----- [2966.26733]警告:CPU:0 PID:913 at /home/ilu/projects/ruag/src/linux/drivers/net/wireless/ti/wlcore/sdio.c:145 wl12xx_SDIO_RAW_WRITE+0xe4/0x11c () [2966.282447]--[结束跟踪32b5decc7ca8bc96 ]-- [2966.293169] wl12110_SDIO (296.71 SDIO:296.0001失败 )---- [在此处剪切]----- [2966.31187] WARNING:CPU:0 PID:913 at /home/ilu/projects/ruag/src/linux/drivers/net/wireless/ti/wlcore/main.c:802 wl12xx_queue_recovery_work + 0x2C/0x78 () [2966.327238]--[ End trace 32b5decc7ca8bc97 ]-- [2966.331982] wlcore:warning cmd set_template failed: 296.3710] wlcore:296.374p failed in hardware recovery:[296.3710] 固件 已完成:版本8.9.0.1.55 #[2966.365976] wlcore:down [2966.370853] ie80211 phy0:已请求硬件重新启动[2966.835159] wlcore:PHY 固件版本:版本8.2.0.233 [2966.957965] wlcore:固件版本(版本8.9.835159] wlcore 关联:2967.453]。
似乎一段时间内、如果通过 WiFi 发送的 ICMP 小型包不止一次、它通常会起作用。 但是、如果我们开始在接口上进行少量通信、固件将不再响应。
您好、Eyal、
感谢您的重播。
我们使用您提到的两个选项测试了连接。 但没有成功。
当我尝试从我的接入点下载 index.html 时、在1MHz 和禁用 ELP 之后会发生这种情况:
[254.461493] wlcore:警告 TX 完成中的非法 ID:3 [254.467167] wlcore:警告 TX 完成中的非法 ID:8 [254.472692] wlcore:警告 TX 完成中的非法 ID:0 [254.478317] wlcore:警告 TX 完成中的非法 ID:64 [ 254.484014] wlcore 警告:TX 完成中的非法 ID:警告 3 [254.489537] wlcore:警告 TX 完成中的非法 ID:8 [254.495131] wlcore:警告 TX 完成中的非法 ID:0 [254.500654] wlcore:警告 TX 完成中的非法 ID:64 [254.50634] wlcore:警告 TX 完成中的非法 ID:3 [254.511856] wlcore 警告:TX 完成中的非法 ID:警告 TX 完成中的非法 ID: 8 [254.517450] wlcore:警告 TX 完成中的非法 ID:0 [254.523056] wlcore:警告 TX 完成中的非法 ID:64 [254.528665] wlcore:警告 TX 完成中的非法 ID:3 [254.534257] wlcore:警告 TX 完成中的非法 ID:8 [254.539779] wlcore 警告:TX 完成中的非法 ID:警告 0 [254.545372] wlcore:警告 TX 完成中的非法 ID:64 [254.550981] wlcore:警告 TX 完成中的非法 ID:3 [254.556571] wlcore:警告 TX 完成中的非法 ID:8 [254.562094] wlcore:警告 TX 完成中的非法 ID:8 [254.567702] wlcore 警告:TX 完成中的非法 ID:警告 0 [254.573312] wlcore:警告 TX 完成中的非法 ID:64 [254.588243] wlcore:警告接收到的空数据 [254.596204] wlcore:警告 TX 完成中的非法 ID:0 [254.603856] wlcore:警告 TX 完成中的非法 ID:0 [254.612068] wlcore:警告 TX 完成中的非法 ID:警告: 0 [254.620421] wlcore:警告 TX 完成中的非法 ID:0 [254.628758] wlcore:警告 TX 完成中的非法 ID:0 [254.637098] wlcore:警告 TX 完成中的非法 ID:0 [254.645423] wlcore:警告 TX 完成中的非法 ID:0 [254.653753] wlcore 警告:TX 完成中的非法 ID: 0 [254.662012] wlcore:警告 TX 完成中的非法 ID:0 [254.670357] wlcore:警告 TX 完成中的非法 ID:0 [254.678715] wlcore:警告 TX 完成中的非法 ID:0 [254.687025] wlcore:警告 TX 完成中的非法 ID:0 [254.695360] wlcore 警告:TX 完成中的非法 ID:警告 0 [254.703692] wlcore:警告 TX 完成中的非法 ID:0 [254.711947] wlcore:警告 TX 完成中的非法 ID:0 [254.720294] wlcore:警告 TX 完成中的非法 ID:0 [254.728623] wlcore:警告 TX 完成中的非法 ID:124 [254.737128] wlcore 警告:TX 完成中的非法 ID:警告 127 [254.745649] wlcore:警告 TX 完成中的非法 ID:127 [254.754145] wlcore:警告 TX 完成中的非法 ID:127 [254.762574] wlcore:警告 TX 完成中的非法 ID:4 [254.770919] wlcore:警告 TX 完成中的非法 ID:2 [254.779250] wlcore:警告非法 wlid:TX 完成中的非法 3 [254.787581] wlcore:警告 TX 完成中的非法 ID:4 [254.795916] wlcore:警告 TX 完成中的非法 ID:10 [254.804336] wlcore:警告 TX 完成中的非法 ID:10 [254.8126679] wlcore:警告 TX 完成中的非法 ID:32 [254.821107] wlcore 完成中的非法 ID:警告 0 [254.829438] wlcore:警告 TX 完成中的非法 ID:0 [254.837788] wlcore:警告 TX 完成中的非法 ID:0 [254.847235] wlcore:警告 TX 完成中的非法 ID:0 [254.854568] wlcore:警告 TX 完成中的非法 ID:0 [254.862840] wlcore:警告 TX 完成中的非法 ID:警告 0 [254.871094] wlcore:警告 TX 完成中的非法 ID:0 [254.879445] wlcore:警告 TX 完成中的非法 ID:0 [254.887779] wlcore:警告 TX 完成中的非法 ID:0 [254.896121] wlcore:警告 TX 完成中的非法 ID:0 [254.904452] wlcore 完成中的非法 ID:警告 0 [254.911636] wlcore:警告 TX 完成中的非法 ID:0 [254.917230] wlcore:警告 TX 完成中的非法 ID:0 [254.922833] wlcore:警告 TX 完成中的非法 ID:0 [254.928358] wlcore:警告 TX 完成中的非法 ID:0 [254.933951] wlcore 完成中的非法 ID:警告 0 [254.939475] wlcore:警告 TX 完成中的非法 ID:0 [254.945071] wlcore:警告 TX 完成中的非法 ID:1 [254.985257] wlcore:警告 TX 完成中的非法 ID:64 [254.993045] wlcore:警告 TX 完成中的非法 ID:3 [001231] wlcore 完成中的非法 ID:警告 TX 完成中的非法 ID: 8 [255.00978] wlcore:警告 TX 完成中的非法 ID:0 [255.017925] wlcore:警告 TX 完成中的非法 ID:64 [255.026349] wlcore:警告 TX 完成中的非法 ID:3 [255.034680] wlcore:警告 TX 完成中的非法 ID:8 [255.043011] wlcore:警告 TX 完成中的非法 ID:警告 0 [255.051270] wlcore:警告 TX 完成中的非法 ID:64 [255.059708] wlcore:警告 TX 完成中的非法 ID:3 [255.068032] wlcore:警告 TX 完成中的非法 ID:8 [255.076365] wlcore:警告 TX 完成中的非法 ID:0 [255.084700] wlcore:警告 TX 完成中的非法 ID:警告 TX 完成中的非法 ID: 64 [255.093115] wlcore:警告 TX 完成中的非法 ID:3 [255.10137] wlcore:警告 TX 完成中的非法 ID:8 [255.109712] wlcore:警告 TX 完成中的非法 ID:8 [255.118045] wlcore:警告 TX 完成中的非法 ID:0 [255.126375] wlcore:警告 TX 完成中的非法 ID:警告 64 [265.392848] mxc-MMC 10013000.sdhci:mxcmci_watchdog:读取超时(状态= 0x10000908) [265.401088]--- [在此处剪切]----- [265.405927]警告:CPU:0 PID:689 at /home/ilu/projects/ruag/src/linux/drivers/net/wireless/ti/wlcore/sdio.c:10 7 wl12xx_SDIO_RAW_READ+0xe4/0x11c () [265.419490]链接的模块: [265.419559] CPU:0 690:689污染的通信:IRQ/23-wl18xx Not 4.4.4.3.38-00037-265.19592]硬件树[ 265.19592][265.419592] ](展开回扫)从[ ](show_stack+0x10/0x14) [265.419768][ ](show_stack)从[ ](warn_slespath_common+0x80/0xa8) [265.419833][ ](warn_slowpath_common)、来自[ ](warn_slespath_null+0x18/0x20) [265.419904][ ](warn_slowpath_null)、来自[ ](wl12xx_SDIO_RAW_READ+0xe4/0x11c) [265.419987][ ](wl12xx_SDIO_RAW_READ)从[ ](wlcore_rx+0x248/0x65c) [265.420055][ ](wlcore_rx)从[ ](wlcore_irq_locked+0x110/0x2b4) [265.420113][ ](wlcore_irq_locked)从[ ](wlcore_IRQ+0x14c/0x214) [265.420178][ ](wlcore_IRQ)、来自[ ](IRQ_thread_fn+0x1c/0x34) [265.420238][ ](IRQ_THREAD_Fn)、来自[ ](IRQ_THREAD+0xc0/0x1cc) [265.420309][ ](IRQ_THread)、来自[ ](kthread+0xc4/0xd8) [265.420372][ ](kthread)、来自[ ](RET_FANK_+0x14/0x24) [265.420403]--[结束跟踪 f112cc175e0933b2]-- [265.425194] wl1271_SDIO mmc0:0001:2:SDIO 读取失败(-110) [265.430895]---- [在此处剪切]----- [265.435683]警告:CPU:0 PID:689 at /home/ilu/projects/ruag/src/linux/drivers/net/wireless/ti/wlcore/main.c:80 2 wl12xx_queue_recovery_work + 0x2C/0x78 () [265.449631]链接的模块: [265.449701] CPU:0 PID:689 Comm:污染/243-wl18xx IRQ:g W 4.4.4.38-00037-g32c6899-M脏#76 [265.449736]硬件名称:Freescale i.MX27 (器件树支持) [ 265.449821][ ](展开回扫)从[ ](show_stack+0x10/0x14) [265.449893][ ](show_stack)从[ ](warn_slespath_common+0x80/0xa8) [265.449960][ ](warn_slowpath_common)、来自[ ](warn_slespath_null+0x18/0x20) [265.450027][ ](warn_slowpath_null)、来自[ ](wl12xx_queue_recovery_work + 0x2C/0x78) [265.450089][ ](wl12xx_queue_recovery_work)从[ ](wlcore_IRQ+0x15c/0x214) [265.450156][ ](wlcore_IRQ)、来自[ ](IRQ_thread_fn+0x1c/0x34) [265.450215][ ](IRQ_THREAD_Fn)、来自[ ](IRQ_thread+0xc0/0x1cc) [265.450284][ ](IRQ_THread)、来自[ ](kthread+0xc4/0xd8) [265.450345][ ](kthread)、来自[ ](RET_FAND_FANK+0x14/0x24) [265.450377]--[结束轨迹 f112cc175e0933b3]-- [265.458400] wlcore:正在进行硬件恢复。 固 件已完成:版本8.9.0.69 [265.479282] wlcore:down [ 265.488082] regulator regulator .14:mc13xxx_regulator _disable id:22 [ 265.489554] ie80211 phy0:硬件重新启动被请求[265.523047] regulator regulator .14:mc13xxx_regulator _disable id:22[265.48954] wcore (版本267.55296.526.526.526.523.phyb)固件:lcore (已启动)[版本267.526.526.526.526.526.526.526.526.526.526.526.526.526.526.526.523. [268.674102] wlcore:警告 TX 完成中的非法 ID:0 [268.679648] wlcore:警告 TX 完成中的非法 ID:0 [268.685314] wlcore:警告 TX 完成中的非法 ID:0
(笑声)
是否有适用于 wl18xx 的其他驱动程序可与4.4 Linux 内核配合使用? 4.4 Linux 主线驱动程序是否可靠工作?
此致
菲律宾
你好,Saurabh
我仍然不清楚的是中断极性和边沿。 我们使用的 IRQ_TYPE_LEVEL_HIGH, can you confirm that this setting matching the default settings of the chip firmware?
最好的 Dani
你好,Saurabh
我们现在使用最新的固件和配置文件、但仍使用原始的 Linux 内核代码。 我从日志中得出结论、TI 驱动程序未命中中断。 我们应该继续在中断控制器端搜索、您可以确认吗?
最好的 Dani
[1294.994725] wlcore:INTR:0x40 (FW_Rx_COUNTER = 21、drv_Rx_counter = 20、TX_Results_counter = 0) [1294.994777] wlcore:WL1271_ACX_INTR_DATA [1294.995028] wlcore:rx skb 0xc778] wlid:lid:1299248[1278] wlid:tl bt lid:tf 248bt:tf 248bt 1:tf 248bt lid:tl 248bt 1:tf c248bt lid:tf 248bt 1:tf 0 [ 1294.995530] wlcore:TX_FLOAD_HDR:hlid:1 len:257 life:2000 mem:2 [1294.997302] wlcore:IRQ work [ 1294.997603] wlcore:INTR:0x40 (FW_RX_COUNTER = 22、drv_Rx_counter = 21、TX_results_lcore = 1294.997603] wlcore = 0x40 (wlcore = 1294.997608)、lcore = 1299768] 当前版本3:wlcore = 1294.990x = 129499768] TX 状态 id 0 skb 0xc7bea3c0成功1 [1294.997754] wlcore:WL1271_ACX_INTR_DATA [1294.998066] wlcore:Rx skb 0xc7beacc0:241 B SEQ 2336 htr 1 [1313.922421] wlcore:IRQ work [ 1294.998066] wlcore: Rx sr = 139224] wlcore [WL1329_intr_intrf = 1329_w24]计数器:wlcore = 13.2981329_w24]计数器1329_wlcore [w24_wlcore = w24_rf = 1393x intrf = w24_intrl intrf = 1393_r_r_r_ RX skb 0xc7bea9c0:280 B 序列0 hlid 0 [1313.92333] wlcore:Rx skb 0xc7beaa80:268 B 0 hlid 0 [1338.144392] wlcore:queue skb h38.1 q 0 len 241 [1338144566] wlcore:TX_LOCATE:1338.14432] hlcore:13247_hlid:13247rid:rid:1338.1:lid:lid:lfill cid:13249rid:1324id:1324id:1324id:13 257使用寿命:2000 mem:2 [1343.152784] wlcore:queue skb hlid 1 q 0 len 60 [1344.152803] wlcore:queue skb hlid 1 q 0 len 60 [1345.152795] wlcore:queue skb hlid 1 q 0 hld 60 [1348.172736] mxc-mmc_s100cmci: 写超时(状态= 0x32000840) [1348.181098]------ [在此处剪切]----- [1348.187249]警告:CPU:0 PID:754 at drivers/net/wireless/ti/wlcore/SDIO.c:145 wl12xx_SDIO_raW_write+0xe4/0x11c () [1348.198033]链接的模块: [1348.19812111] CPU:0:phyComm:kworker/westore 0x247cr [1348.174r e2]] 硬件 支持[1348.198242r [1348.174w:1348.174bg:[1348.174bg:1348.174bg ](展开回扫)从[ ](show_stack+0x10/0x14) [ 1348.198390][ ](show_stack)从[ ](warn_slespath_common+0x80/0xa8) [1348.198456][ ](warn_slowpath_common)、来自[ ](warn_slespath_null + 0x18/0x20) [1348.198527][ ](warn_slowpath_null)、来自[ ](wl12xx_SDIO_RAW_WRITE+0xe4/0x11c) [1348.198607][ ](wl12xx_SDIO_RAW_WRITE)从[ ](wlcore_TX_Work_Locked+0xd4c/0xde0) [1348.198681][ ](wlcore_tx_work 已锁定)从[ ](wl1271_TX_Work+0x2C/0x50) [1348.198748][ ](wl1271_TX_work)、来自[ ](Process_One_Work+0x1ec/0x338) [1348.198806][ ](Process_One_Work)、来自[ ](worker_thread+0x318/0x46c) [1348.198871][ ](worker_thread)、来自[ ](kthread+0xc4/0xd8) [1348.198929][ ](kthread)、来自[ ](RET_FAND_FANK+0x14/0x24) [1348.198959]----[结束线迹1658d315c1a4fc80 ]-- [ 1348.209341] wl1271_SDIO mmc0:0001:2:SDIO 写入失败(-110) [1348.217842]---- [在此处剪切]----- [1348.222571]警告:CPU:0 PID:754 at drivers/net/wireless/ti/wlcore/main.c:802 wl12xx_queue_recovery_work+0x2C/0x78 () [1348.234667]链接的模块: [1348.234754] CPU:0 PID:kworker/U2:w4824742] 硬件 名称[1348.234865][1348.234865 ](展开回扫)从[ ](show_stack+0x10/0x14) [ 1348.235037][ ](show_stack)从[ ](warn_slespath_common+0x80/0xa8) [1348.235106][ ](warn_slowpath_common)、来自[ ](warn_slespath_null+0x18/0x20) [ 1348.235176][ ](warn_slowpath_null)、来自[ ](wl12xx_queue_recovery_work + 0x2C/0x78) [ 1348.235246][ ](wl12xx_queue_recovery_work)从[ ](wl1271_TX_Work+0x3c/0x50) [ 1348.235317][ ](wl1271_TX_work)、来自[ ](Process_One_Work+0x1ec/0x338) [1348.235374][ ](Process_One_Work)、来自[ ](worker_thread+0x318/0x46c) [1348.235437][ ](worker_thread)、来自[ ](kthread+0xc4/0xd8) [1348.235498][ ](kthread)、来自[ ](RET_FAND_FANK+0x14/0x24) [1348.235531]--[结束线迹1658d315c1a4fc81 ]-- [ 1348.240280] wlcore:正在进行硬件恢复。 固件:版本8.9.0.0.70 [1348.252889] wlcore:MEM_START 00700000 mem_size 0000030C [1348.252941] wlcore:REG_START 00802000 REG_SIZE 00014578 [1348.252968] wlcore:MEM2_START 00404MEM2_SIZE 00482593] wlcore [1348.25300253843] wlcore:1348.25384384240003 wlcore [w64] wlcore:w642400038_lcore [1348.0025382400038_lcore [_lcore 3003843064] 链路 physkb 0xc7bea9c0 [1348.255703] wlcore:链路释放 skb 0xc7bea6c0 [1348.255752] wlcore:链路释放 skb 0xc7bea300 [1348.255850] wlcore:macskb 0xc7beab40 [1348.262348] wlcore:请求 重新启动硬件稳压器[1348.25272be_restarted vrator :1348.0215272b
尊敬的 Saurabh:
我们找到了问题。 我们禁用了 MMC 驱动程序 DMA、现在 ping 是稳定的。 必须立即修复 DMA。
我们发现、从其他主机 ping 嵌入式器件效果良好、而涉及 DMA (较大的有效负载)时、其他方向会导致问题。
是否有关于 DMA 中断优先级的提示或任何其他平台配置缺陷?
最好的 Dani
你好,Saurabh
MMC 驱动程序可与 SD 卡正常配合使用。 我们将首先详细了解 TI 驱动程序、因为我们目前使用的是内核随附的 TI 驱动程序。 TI 评估板驱动程序存在一些差异...
最好的 Dani
Eyal、您好、它现在可以使用禁用 的 DMA。 时钟没有帮助。 看起来像是 CPU DMA 问题、无论是芯片还是内核驱动程序。 最好的 Dani