AnsweredAssumed Answered

How to use the Chip on board WiFi QCA6174 of I.MX8M Quad EVK Board?

Question asked by weikang zhang on Oct 29, 2018
Latest reply on Oct 30, 2018 by weikang zhang

Hi,expert

      I have a I.MX8M Quad EVK board, and I want to use the  Chip on board WiFi QCA6174. My Linux BSP is L4.9.88_2.0.0_images_MX8MQ.tar.gz which download from Nxp.com. The Qca6174 wlan chip could be found as the log below:

     root@imx8mqevk:~# lspci
00:00.0 PCI bridge: Synopsys, Inc. Device abcd (rev 01)
01:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32).

    But I could not find the dev node such as wlan0 when I used the ifconfig, the log below:

root@imx8mqevk:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:04:9f:05:a8:48
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::204:9fff:fe05:a848/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39484 errors:0 dropped:0 overruns:0 frame:0
TX packets:18366 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46890238 (44.7 MiB) TX bytes:2959480 (2.8 MiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:10962 errors:0 dropped:0 overruns:0 frame:0
TX packets:10962 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:789580 (771.0 KiB) TX bytes:789580 (771.0 KiB)

    In addition, the wlan driver info is:

root@imx8mqevk:~# modinfo wlan
filename: /lib/modules/4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d/extra/wlan.ko
description: WLAN HOST DEVICE DRIVER
author: Qualcomm Atheros, Inc.
license: Dual BSD/GPL
alias: pci:v0000168Cd00000043sv*sd*bc*sc*i*
alias: pci:v0000168Cd00000042sv*sd*bc*sc*i*
alias: pci:v0000168Cd0000003Esv*sd*bc*sc*i*
alias: pci:v0000168Cd0000003Csv*sd*bc*sc*i*
depends:
vermagic: 4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d SMP preempt mod_unload aarch64
parm: msienable:int
parm: vow_config:Do VoW Configuration (uint)
parm: ioctl_debug:int
parm: con_mode:int
parm: enable_dfs_chan_scan:int
parm: enable_11d:int
parm: country_code:charp

 

Finally,I found those log which was printed by the wlan driver:

root@imx8mqevk:~# [ 242.655216] INFO: task systemd-udevd:2817 blocked for more than 120 seconds.
[ 242.662358] Tainted: G O 4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d #1
[ 242.670061] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 242.678010] systemd-udevd D 0 2817 2802 0x0000020d
[ 242.683635] Call trace:
[ 242.686094] [<ffff000008085e98>] __switch_to+0x90/0xc0
[ 242.691361] [<ffff000008c653f0>] __schedule+0x178/0x590
[ 242.696709] [<ffff000008c65844>] schedule+0x3c/0xa8
[ 242.701711] [<ffff000008c688e4>] schedule_timeout+0x174/0x248
[ 242.707580] [<ffff000008c67680>] __down+0x58/0x90
[ 242.712406] [<ffff000008102e74>] down+0x4c/0x68
[ 242.718035] [<ffff000000f4155c>] HIFExchangeBMIMsg+0x20c/0x330 [wlan]
[ 242.725445] [<ffff000000f47ac4>] bmi_download_firmware+0x64/0x130 [wlan]
[ 242.732900] [<ffff000000edff9c>] vos_open+0x174/0x6c0 [wlan]
[ 242.739277] [<ffff000000d9bca4>] hdd_wlan_startup+0x5ac/0x12e0 [wlan]
[ 242.746455] [<ffff000000f45cc8>] hif_pci_probe+0x5f8/0x858 [wlan]
[ 242.752676] [<ffff000008486c4c>] pci_device_probe+0x9c/0x140
[ 242.758453] [<ffff000008649a40>] driver_probe_device+0x1d0/0x2c8
[ 242.764574] [<ffff000008649bf4>] __driver_attach+0xbc/0xc0
[ 242.770176] [<ffff000008647b34>] bus_for_each_dev+0x4c/0x98
[ 242.775861] [<ffff0000086493b8>] driver_attach+0x20/0x28
[ 242.781286] [<ffff000008648fa8>] bus_add_driver+0x1b8/0x228
[ 242.787045] [<ffff00000864a578>] driver_register+0x60/0xf8
[ 242.792648] [<ffff0000084857a8>] __pci_register_driver+0x38/0x40
[ 242.799392] [<ffff000000f45630>] hif_register_driver+0x18/0x38 [wlan]
[ 242.806509] [<ffff000000d93d80>] hdd_hif_register_driver+0x30/0x78 [wlan]
[ 242.814025] [<ffff0000012010b4>] hdd_module_init+0xb4/0x1000 [wlan]
[ 242.820418] [<ffff000008083a50>] do_one_initcall+0x38/0x130
[ 242.826108] [<ffff0000081767d8>] do_init_module+0x5c/0x1bc
[ 242.831708] [<ffff000008139650>] load_module+0x1c50/0x20f8
[ 242.837310] [<ffff000008139d78>] SyS_finit_module+0xa8/0xc0
[ 242.842994] [<ffff0000080838d8>] __sys_trace_return+0x0/0x4
[ 363.487140] INFO: task systemd-udevd:2817 blocked for more than 120 seconds.
[ 363.494212] Tainted: G O 4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d #1
[ 363.501986] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 363.509938] systemd-udevd D 0 2817 2802 0x0000020d
[ 363.515567] Call trace:
[ 363.518025] [<ffff000008085e98>] __switch_to+0x90/0xc0
[ 363.523289] [<ffff000008c653f0>] __schedule+0x178/0x590
[ 363.528640] [<ffff000008c65844>] schedule+0x3c/0xa8
[ 363.533638] [<ffff000008c688e4>] schedule_timeout+0x174/0x248
[ 363.539508] [<ffff000008c67680>] __down+0x58/0x90
[ 363.544335] [<ffff000008102e74>] down+0x4c/0x68
[ 363.549960] [<ffff000000f4155c>] HIFExchangeBMIMsg+0x20c/0x330 [wlan]
[ 363.557449] [<ffff000000f47ac4>] bmi_download_firmware+0x64/0x130 [wlan]
[ 363.565110] [<ffff000000edff9c>] vos_open+0x174/0x6c0 [wlan]
[ 363.571488] [<ffff000000d9bca4>] hdd_wlan_startup+0x5ac/0x12e0 [wlan]
[ 363.578621] [<ffff000000f45cc8>] hif_pci_probe+0x5f8/0x858 [wlan]
[ 363.584840] [<ffff000008486c4c>] pci_device_probe+0x9c/0x140
[ 363.590619] [<ffff000008649a40>] driver_probe_device+0x1d0/0x2c8
[ 363.596737] [<ffff000008649bf4>] __driver_attach+0xbc/0xc0
[ 363.602343] [<ffff000008647b34>] bus_for_each_dev+0x4c/0x98
[ 363.608027] [<ffff0000086493b8>] driver_attach+0x20/0x28
[ 363.613456] [<ffff000008648fa8>] bus_add_driver+0x1b8/0x228
[ 363.619146] [<ffff00000864a578>] driver_register+0x60/0xf8
[ 363.624747] [<ffff0000084857a8>] __pci_register_driver+0x38/0x40
[ 363.631495] [<ffff000000f45630>] hif_register_driver+0x18/0x38 [wlan]
[ 363.638609] [<ffff000000d93d80>] hdd_hif_register_driver+0x30/0x78 [wlan]
[ 363.646136] [<ffff0000012010b4>] hdd_module_init+0xb4/0x1000 [wlan]
[ 363.652531] [<ffff000008083a50>] do_one_initcall+0x38/0x130
[ 363.658224] [<ffff0000081767d8>] do_init_module+0x5c/0x1bc
[ 363.663822] [<ffff000008139650>] load_module+0x1c50/0x20f8
[ 363.669424] [<ffff000008139d78>] SyS_finit_module+0xa8/0xc0
[ 363.675114] [<ffff0000080838d8>] __sys_trace_return+0x0/0x4

 

Can you tell me how I can solve this problem and the steps for using the wlan chip QCA6174.

Outcomes