Thread 中讨论的其他部件:AM5728、 WL1271、 SysConfig
您好!
我将 TI AM5728 EVM 与 Android PSDK5.03搭配使用、Linux 内核版本为4.14。 我已按照此帖子中描述的步骤为我的 AM5728 EVM 移植了 wl18x 的 HAL 实现- https://e2e.ti.com/support/wireless-connectivity/....WL1837MOD%20Android%20Pie
当我的 EVM 使用 Android 8.0启动时、WiFi 首次工作。 它通过 GUI 和命令行(ifconfig wlan0 up)工作。 我可以连接列表中的任何可用 WiFi、并可以进行网上冲浪。
但是、当我从 GUI 或命令行(ifconfig wlan0 down)关闭 wifi 并尝试再次打开时、它会失败并抛出错误。 我将附上一些有关内核打印和我在使用 wifi 进行分析时获得的中断的有用信息。
1.打开 wifi 前 -
am57xevm:/vendor/lib/modules # cat /proc/interrupts | grep wl 209: 0 0 4805b000。GPIO 7边缘 wl18xx am57xevm:/vendor/lib/modules # lsmod | grep wl12xx 65536 0 wl18xx 98304 0 wlcore 184320 2 wl12xx、wl18xx mac80211 602112 3 wl12xx、wl18xx、wlcore cfg80211 540672 3 wl18xx、wlcore、mac80211 wlcore_SDIO 16384 0 am57xevm:/vendor/lib/modules # ifconfig 低 链路环状图:本地环回 iNet addr:127.0.0.1掩码:255.0.0.0 inet6 addr:::1/128范围: host 正在运行 MTU:65536公制:1的上环回 RX 数据包:0错误:0丢弃:0超限:0帧:0 TX 数据包:0错误:0丢弃:0超限:0载波:0 冲突:0 txqueuelen:1000 RX 字节:0 TX 字节:0 ETH1 链接地址:以太网 HWaddr 94:E3:6d:4F:14:af 驱动程序 cpsw 上广播多播 MTU:1500公制:1 RX 数据包:0错误:0丢弃:0超限:0帧:0 TX 数据包:0错误:0丢弃:0超限:0载波:0 冲突:0 txqueuelen:1000 RX 字节:0 TX 字节:0
2.打开无线网络 -
am57xevm:/vendor/lib/modules # ifconfig wlan0 up [750.159892] wl18xx_driver wl18xx.2.auto: ti-connectivity firmware load for ti-connectivity wl18xx-fw-4.bin wl18xx.2.auto/firmware/ti-connectivity!wl' failed with error -2 [750.170700] wl18xx_driver wl18xx.2.auto: fallback to user helper [750.178922] ueventd:firmware:loading 'ti-connectivity/wl18xx-fW-4.bin' for '/devices/platform/44000000.ocp/480ad000.mmc/mmc_host/mmc2/mmc2 wl18xx.2.auto/firmware/ti-connectivity!wl18xx-fw-4.bin:wl3502/mml240001] wl240.0001] bin 2:/devices/platform/44000000.ocp/480ad000.mmc/mmc_host/mmc2/mmc2 固件已启动(版本8.9.0.0.70) am57xevm:/vendor/lib/modules # cat /proc/interrupts | grep wl 209: 1 0 4805b000。GPIO 7边缘 wl18xx am57xevm:/vendor/lib/modules # ifconfig wlan0 Link encap:Ethernet HWaddr 50:33:8b:62:0a:f3驱动程序 wl18xx_driver inet addr:192.168.43.109 Bcast:inet43.255 Mask:192.168.6 addr:2405:204:122A:2aad:184c:inetd addr:192.168.64:10064 :36246:dr:362682a:netd :fb:fb:3672a 运行 多播的全局广播 MTU:1500公制:1 RX 数据包:28错误:0丢弃:0溢出:0帧:0 TX 数据包:42错误:0丢弃:0溢出:0载波:0 冲突:0 txqueuelen:1000 RX 字节:6691 TX 字节:5884 lo Link encap:Local Loopback inet addr:127.0.0.1 范围:0.0.0 inetr:255.6:128 主机 上环回运行 MTU:65536公制:1 RX 数据包:0错误:0丢弃:0溢出:0帧:0 TX 数据包:0错误:0溢出:0载波:0 冲突:0 txqueuelen:1000 RX 字节:0 TX 字节:0 ETH1链路 传输:1500:以太网 HWaddr 94:E3:6d:14:1000:1000 RX:1000传输: 0:1000传输帧:0:1000传输错误:0:1000:1000:1000 RX 字节:0 TX 字节:0
3.单击 Android GUI 上的 wifi 并成功连接到任何可用的 wifi
am57xevm:/vendor/lib/modules #[889.891118] init:正在启动服务'wpa_supplicant'... [889.900971] init:created socket '/dev/socket/wpa_wlan0、mode 660、user 1010、group 1010 [956.881194] wlan0:使用4e:62:E3:3c:2b [ 956.898471] wlan0:将 3c 发送到4e:62:E3:3c:c4:c4 (尝试1/3)[ 956.898471] wlan0:956.9362] wlan0:9364e:956.9364c:956.4c4:956.93642b 从4e:62:E3:3c:2b:C4起的 RX 等效值(capab=0x1421 STATUS=0 AID = 1) [957.087507] wlan0:关联 的[957.101213] wlcore:关联已完成。 [957.731958] init:处理操作(sysctl.tcp_def_init_rwnd=*),来自(/init.rc.696) am57xevm:/vendor/lib/modules # cat /proc/interrupts | grep wl 209: 858 0 4805b000。GPIO 7边缘 wl18xx
4.关闭 WiFi - (来自 GUI)
am57xevm:/vendor/lib/modules #[1138.467470] wlan0:通过本地选择从4e:62:E3:3c:2b:C4进行身份验证(原因:3=DEAU489] [1138.574854] type=1400 unicastic /vendor/lib/modules/wl12xx.ko common (1592218459.336:37):AVC:denied{module_load}for wpa18572_definc :tine_ened}[1138.572_define_envategrobatur= ine_enic v_ence= 1138015804_sbategintran1:113804_sbategine_enic tran1:113804pid:tines= 13804bateginu_f_f_f_f_enic tran1:tenu_enu_enu_enu_enu_enu_enoverview1:[113642415804bategines= pic tran1:tenu_f_f_enu_enu_enu_f_ 正在将信号9发送到服务'wpa_supplicant'(pid 1504)处理组... [1138.661318] init:在6ms 内成功终止进程 cgroup uid 0 pid 1504 [1138.670357] init:服务'wpa_supplicant'(pid 1504)被信号9 [1138.782940] wlcore :down [1138.828701] wlcore:down
现在 ifconfig 中没有 wlan0条目。 如果我再次尝试打开 wifi、它会立即抛出错误。
5.再次打开 wifi - (从命令行)
am57xevm:/vendor/lib/modules # ifconfig wlan0 up [1252.562350] wlcore:等待硬件完成初始化的错误超时 [1254.352523]--- [在此处剪切]----- [1254.357180]警告:CPU:1 PID:1630 at drivers/net/wireless/ti/wlcore/SDIO.c:145 wl12xx_SDIO_raW_write+0xd8/0x164 [wlcore_sdio] [1254.369334]链接的模块:wl12xx pru_rprod_proc_wds_dcp v_soc :wmcp v_wl8024_proc:w_t_wmcp v_g_proc v_wl8024_t_g_g_mcu v_w_w_proc:wmcp v_g_proc o 4.14.80-g384658809d #4 [1254.418295]硬件名称:通用 DRA74X (平展设备树) [1254.424412]背板: [ 1254.42681][ ](dump_backtrace)从[ ](show_stack+0x18/0x1c) [1254.434486] r7:00000009 R6:60070013 R5:00000000 R4:c128e3c8 [ 1254.440177][ ](show_stack)从[ ](dump_stack+0x90/0xa4) [1254.447436][ ](dump_stack)从[ ](_warn+0xf0/0x108) [ 1254.454431] r7:00000009 r6:bf0dbae8 r5:00000000 r4:00000000 [ 1254.460118][ ](__warn)从[ ](warn_slespath_null + 0x28/0x30) [ 1254.467723] R9:00004000 R8:d29c0000 r7:e3dabc10 R6:00000000 R5:c1205188 R4:e4702000 [ 1254.475507][ ](warn_slowpath_null)、来自[ ](wl12xx_SDIO_RAW_WRITE+0xd8/0x164 [wlcore_SDIO]) [1254.485777][ ](wl12xx_SDIO_RAW_WRITE [wlcore_SDIO])从[ ](wlcore_boot_upload_firmware+0x180/0x4ac [wlcore]) [1254.497655] R10:d29c0000 R9:bf4c9d00 R8:bf0da228 r7:00014000 R6:00000000:80900000 [ 1254.505517] r4:e9250119][1254.508DE0 ](wlcore_boot_upload_firmware [wlcore])、来自[ ](wl18xx_boot+0x824/0xc90 [wl18xx]) [1254.518689] R10:00000000 R9:00000002 R8:c0edadd4 r7:bf4c9d00 R6:c1205188 R5:00000000 [1254.526550] R4:e923e0 [1254.295140 ](wl18xx_boot [wl18xx])从[ ](wl1271_op_add_interface+0x734/0x918 [wlcore]) [1254.539360] r8:e3e92e20 r7:bf4c9d00 r6:c1205188 r5:e3e92de0 r4:00000000 [1254.546225][ ](wl1271_op_add_interface [wlcore])、来自[ ](drv_add_interface+0x44/0x1f8 [mac80211]) [1254.557058] r10:00000000 R9:00000001 R8:e3fdb540 r7:e3fdb674 R6:e3fdb000 R5:e3e92460 [ 1254.564919] r4:e3fdb540 r6:e3f676454637][125db4 ](drv_add_interface [mac80211])、来自[ ](ieee80211_do_open+0x430/0x93c [mac80211]) [1254.578204] r7:e3fdb674 R6:e3fdb000 R5:e3e92460 R4:e3fdb548 [1254.584065][ ](ieee80211_do_open [mac80211])、来自[ ](ieee80211_open+0x4c/0x58 [mac80211]) [1254.594198] r10:e3fbd50c r9:00000000 r8:e3fdb030 r7:bf44c60c r6:00001043 r5:c1205188 [ 1254.602060] r4:e3f4698][125f4660] ](ieee80211_open [mac80211])从[ ](_DEV_OPEN+0xCC/0x130) [ 1254.613347] R5:c1205188 R4:e3fdb000 [ 1254.616941][ ](_DEV_open)从[ ](_DEV_CHANGE_FLAGS+0x168/0x1a0) [ 1254.625068] R8:00000001 r7:00001002 R6:00001043 R5:c1205188 R4:e3fdb000 [ 1254.631802][ ](_DEV_CHANGE_FLAGS)从[ ](DEV_CHANGE_FLAGS+0x20/0x50) [1254.640277] R9:00000000 R8:00008914 r7:e3fdb140 R6:00000000 R5:00001002 R4:e3fdb000 [1254.648059][ ](DEV_CHANGE_FLAGS)从[ ](devinet_ioctl+0x644/0x738) [1254.656274] R9:00000000 R8:00008914 r7:bed50938 R6:c1205188 R5:d339de6c R4:00000000 [ 1254.664054][ ](devinet_ioctl)从[ ](inet_ioctl+0x1a0/0x1c8) [1254.671745] r10:e1fb6020 r9:00000003 r8:bed50938 r7:c1284ac0 r6:bed50938 r5:bed50938 [1254.679605] r4:00008914 [1254.682156] ](inet_ioctl)从[ ](sock_ioctl+0x12c/0x2d0) [1254.689589][ ](sock_ioctl)从[ ](do_vfs_ioctl+b58/0x7f0) [1254.697105] r7:00008914 r6:e3872180 r5:bed50938 r4:c1205188 [ 1254.702792][ ](do _vfs_ioctl)、从[ ](sys_ioctl+0x6c/0x7c) [ 1254.710134] R10:00000036 R9:00000003 R8:bed50938 r7:00008914 R6:00000000 R5:e3872180 [ 1254.717996] R4:e3872180 [ 1254.720546][ ](sys_ioctl)从[ ](RET_FAST_SYSCALL+0x0/0x4c) [1254.728149] r9:d339c000 r8:c02083a4 r7:00000036 r6:bed50938 r5:aed6bc4fc r4:00008914 [1254.736550]--[结束跟踪336224240001r6:bed4212241s- 2013- mmc2412247212240001s- 2013- mmc241224721224721224] (-1224122412241224122412241c)- 2013c:122424242424242472- 2013c:122424242472- 2013 [在此处剪切]----- [1257.086665]警告:CPU:0 PID:1630 at drivers/net/wireless/ti/wlcore/SDIO.c:145 wl12xx_SDIO_raW_write+0xd8/0x164 [wlcore_sdio] [cfg1257.09843]链接的模块:wl12xx pru_rprod_proc prue_wds_dcp v_soc :wl38_wlic v_soc:wlic v_proc v_soc v_proc:wl38_wlic v_proc v_g_proc:wlic v_wlic v_sc v_wlic v_soc v_wlic v_proc:wlic v_wlic v_somp v_somp v_somp v_wlic v_somp v_sc:w w o 4.14.80-g384658809d #4 [1257.147313]硬件名称:通用 DRA74X (平展设备树) [1257.153432]背板: [ 1257.155898][ ](dump_backtrace)从[ ](show_stack+0x18/0x1c) [1257.163502] r7:00000009 r6:60070013 r5:00000000 r4:c128e3c8 [ 1257.169190][ ](show_stack)从[ ](dump_stack+0x90/0xa4) [1257.176447][ ](dump_stack)从[ ](__warn+0xf0/0x108) [1257.183441] r7:00000009 r6:bf0dbae8 r5:00000000 r4:00000000 [ 1257.189127][ ](__warn)从[ ](warn_slespath_null+0x28/0x30) [ 1257.196731] R9:00004000 R8:d29c0000 r7:e3dabc10 R6:00000000 R5:c1205188 R4:e4702000 [ 1257.204514][ ](warn_slowpath_null)、来自[ ](wl12xx_SDIO_RAW_WRITE+0xd8/0x164 [wlcore_SDIO]) [1257.214782][ ](wl12xx_SDIO_RAW_WRITE [wlcore_SDIO])从[ ](wlcore_boot_upload_firmware+0x180/0x4ac [wlcore]) [1257.226660] R10:d29c0000 R9:bf4c9d00 R8:bf0da228 r7:00014000 R6:00000000:80900000 [ 1257.234522] r4:e9237122] [ 1257.122] ](wlcore_boot_upload_firmware [wlcore])、来自[ ](wl18xx_boot+0x824/0xc90 [wl18xx]) [1257.247691] R10:00000000 R9:00000001 R8:c0edadd4 r7:bf4c9d00 R6:c1205188 R5:00000000 [1257.255553] R4:e923e0 [1257.258143] ](wl18xx_boot [wl18xx])从[ ](wl1271_op_add_interface+0x734/0x918 [wlcore]) [1257.268363] R8:e3e92e20 r7:bf4c9d00 R6:c1205188 R5:e3e92de0 R4:00000000 [1257.275233][ ](wl1271_op_add_interface [wlcore])、来自[ ](drv_add_interface+0x44/0x1f8 [mac80211]) [1257.286065] r10:00000000 R9:00000001 R8:e3fdb540 r7:e3fdb674 R6:e3fdb000 R5:e3e92460 [ 1257.293927] r4:e3fdb540 r6:e3f29644r6:e3f647.5[125db64 ](drv_add_interface [mac80211])、来自[ ](ieee80211_do_open+0x430/0x93c [mac80211]) [1257.307213] r7:e3fdb674 R6:e3fdb000 R5:e3e92460 R4:e3fdb548 [1257.313072][ ](ieee80211_do_open [mac80211])、来自[ ](ieee80211_open+0x4c/0x58 [mac80211]) [1257.323307] r10:e3fbd50c r9:00000000 r8:e3fdb030 r7:bf44c60c r6:00001043 r5:c1205188 [ 1257.331069] r4:e3fdb3304][1257.33540 ](ieee80211_open [mac80211])从[ ](_DEV_OPEN+0xCC/0x130) [ 1257.342352] R5:c1205188 R4:e3fdb000 [ 1257.345948][ ](_DEV_open)从[ ](_DEV_CHANGE_FLAGS+0x168/0x1a0) [ 1257.354076] R8:00000001 r7:00001002 R6:00001043 R5:c1205188 R4:e3fdb000 [ 1257.360810][ ](_DEV_CHANGE_FLAGS)从[ ](DEV_CHANGE_FLAGS+0x20/0x50) [1257.369287] R9:00000000 R8:00008914 r7:e3fdb140 R6:00000000 R5:00001002 R4:e3fdb000 [1257.377067][ ](DEV_CHANGE_FLAGS)从[ ](devinet_ioctl+0x644/0x738) [1257.385282] R9:00000000 R8:00008914 r7:bed50938 R6:c1205188 R5:d339de6c R4:00000000 [1257.393061][ ](devinet_ioctl)从[ ](inet_ioctl+0x1a0/0x1c8) [1257.400753] R10:e1fb6020 R9:00000003 R8:bed50938 r7:c1284ac0 R6:bed50938 R5:bed50938 [1257.408614] R4:00008914 [ 1257.41165] ](inet_ioctl)从[ ](sock_ioctl+0x12c/0x2d0) [1257.418597][ ](sock_ioctl)从[ ](do_vfs_ioctl+b58/0x7f0) [1257.426113] r7:00008914 r6:e3872180 r5:bed50938 r4:c1205188 [ 1257.431800][ ](do _vfs_ioctl)、从[ ](sys_ioctl+0x6c/0x7c) [ 1257.439141] R10:00000036 R9:00000003 R8:bed50938 r7:00008914 R6:00000000 R5:e3872180 [ 1257.447003] R4:e3872180 [ 1257.49552][ ](sys_ioctl)从[ ](RET_FAST_SYSCALL+0x0/0x4c) [1257.457156] R9:d339c000 R8:c02083a4 r7:00000036 r6:bed50938 r5:aed6bc4fc r4:00008914 [1257.466024]--[结束跟踪33622462:00000036 r6:bedtl 50938 r5:gc:125c 4fc r4: 0004 :gc:gc 122412241224](在计时后重试失败
我不确定为什么会出现此错误。 我在 TI 论坛上研究了此问题、并发现以下与 此问题相关的主题。
https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/t/181835
我认为上述线程中提供的解决方案与我的电路板无关。 与 AM335X 不同、我的 SDK 中没有任何特定于电路板的配置文件-(arch/arm/mach-omap2/board-am335xevm.c)。
我没有 像 wl12xx_platform_data 那样初始化任何 platform_data 结构。 我阅读了以下与移植指南和无线连接相关的文档-
但我无法实现 SET_POWER 功能。
请查看并建议我如何解决此错误。
谢谢、此致、
Devashish