CYW43438 DHD Driver error

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Leo_Liu
Level 2
Level 2
10 replies posted 10 sign-ins 5 replies posted

Hi ,

我使用的平台是IMX8,海华197模组,目前在调试WiFi的时候,驱动下载FW,NVRAM都是可以的,但是会卡在dhdsdio_htclk,请帮忙分析下,是什么原因导致的,谢谢。

完整的log如下:

dhd_module_init in

no wifi platform data, skip

DHD wifi platform data is required for Android build

DHD registeing bus directly

F1 signature read @0x18000000=0x1541a9a6

F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x1 pkg:0x4

DHD: dongle ram size is set to 524288(orig 524288) at 0x0

CFG80211-ERROR) wl_setup_wiphy :

Registering Vendor80211

wl_create_event_handler(): thread:wl_event_handler:e28 started

CFG80211-ERROR) wl_event_handler :

tsk Enter, tsk = 0xffff800074aa1b70

dhd_attach(): thread:dhd_watchdog_thread:e2a started

dhd_attach(): thread:dhd_dpc:e2b started

dhd_attach(): thread:dhd_rxf:e2c started

dhd_deferred_work_init: work queue initialized

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

dhdsdio_htclk: HT Avail timeout (1000000): clkctl 0x50

dhd_bus_init: clock state is wrong. state = 1

dhd_bus_start, dhd_bus_init failed -1

dhdsdio_probe: dhd_bus_start failed

dhdsdio_htclk: HT Avail timeout (1000000): clkctl 0x50

dhd_wlfc_deinit():3750, Already disabled!

dhd_detach(): thread:dhd_watchdog_thread:e2a terminated OK

dhd_detach(): thread:dhd_rxf:e2c terminated OK

dhd_dpc_thread: Unexpected up_cnt 0

dhd_detach(): thread:dhd_dpc:e2b terminated OK

CFG80211-ERROR) wl_event_handler :

was terminated

wl_destroy_event_handler(): thread:wl_event_handler:e28 terminated OK

bcmsdh_sdmmc: probe of mmc1:0001:2 failed with error -12

dhd_module_init out        ot@imx8mqevk:~# insmod cywdhd.ko dhd_ms               oot@imx8mqevk:~# insmod cywdhd.ko dhd_msg_level=3 firmware_path=/home/root/fw197.ywdhd.ko dhd_mg_level=3 firmware_path=/home/root/fw197.

dhd_module_init inhome/root/nvram197.txtfg_level=3 firmware_path=/home/root/fw197

no wifi platform data, skip

DHD wifi platform data is required for Android build

DHD registeing bus directly

dhd_bus_register: Enter

dhdsdio_probe: Enter

F1 signature read @0x18000000=0x1541a9a6

F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x1 pkg:0x4

DHD: dongle ram size is set to 524288(orig 524288) at 0x0

dhd_attach: Enter

CFG80211-ERROR) wl_setup_wiphy :

Registering Vendor80211

wl_create_event_handler(): thread:wl_event_handler:e3d started

CFG80211-ERROR) wl_event_handler :

tsk Enter, tsk = 0xffff800074901b70

dhd_attach(): thread:dhd_watchdog_thread:e40 started

dhd_attach(): thread:dhd_dpc:e41 started

dhd_attach(): thread:dhd_rxf:e42 started

dhd_deferred_work_init: work queue initialized

dhd_tcpack_suppress_set: 0 -> 2

_tdata_psh_info_pool_init 219: Enter

dhdsdio_probe_malloc: Enter

dhdsdio_probe_init: Enter

Enter dhd_bus_start:

dhdsdio_download_firmware: firmware path=/home/root/fw197.bin, nvram path=/home/root/nvram197.txt

dhdsdio_clkctl: Enter

dhdsdio_htclk: Enter

dhd_os_wd_timer: Enter

dhdsdio_downloadvars: Enter

dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

dhdsdio_clkctl: Enter

dhdsdio_htclk: Enter

dhd_os_wd_timer: Enter

dhd_os_wd_timer: Enter

dhd_bus_init: Enter

dhdsdio_clkctl: Enter

dhdsdio_htclk: Enter

dhdsdio_htclk: HT Avail timeout (1000000): clkctl 0x50

dhd_bus_init: clock state is wrong. state = 1

dhd_bus_start, dhd_bus_init failed -1

dhdsdio_probe: dhd_bus_start failed

dhdsdio_release: Enter

dhd_detach: Enter state 0x2ee

dhd_bus_detach: Enter

dhd_bus_stop: Enter

dhdsdio_clkctl: Enter

dhdsdio_htclk: Enter

dhdsdio_htclk: HT Avail timeout (1000000): clkctl 0x50

dhdsdio_clkctl: Enter

dhd_wlfc_deinit():3750, Already disabled!

dhd_detach(): thread:dhd_watchdog_thread:e40 terminated OK

dhd_detach(): thread:dhd_rxf:e42 terminated OK

dhd_dpc_thread: Unexpected up_cnt 0

dhd_detach(): thread:dhd_dpc:e41 terminated OK

CFG80211-ERROR) wl_event_handler :

was terminated

wl_destroy_event_handler(): thread:wl_event_handler:e3d terminated OK

wd wakelock count:1

dhd_tcpack_suppress_set: 2 -> 0

_tdata_psh_info_pool_deinit 253: Enter

dhdsdio_release_dongle: Enter bus->dhd ffff800074ab0000 bus->dhd->dongle_reset 0

dhdsdio_clkctl: Enter

dhdsdio_sdclk: Enter

dhd_os_wd_timer: Enter

dhdsdio_release_dongle: Disconnected

dhd_free: Enter

dhdsdio_release_malloc: Enter

dhdsdio_release: Disconnected

bcmsdh_sdmmc: probe of mmc1:0001:2 failed with error -12

BR,

Leo

0 Likes
1 Solution
lock attach
Attachments are accessible only for community members.

尝试下附件的patch.

View solution in original post

8 Replies
Zhengbao_Zhang
Moderator
Moderator
Moderator
250 sign-ins First comment on KBA 10 questions asked

Hi Leo:

  Which version of the kernel are you using now on imx8 ?   and is the imx release having a default bcmdhd release ?

0 Likes

Hi Zhengbao,

Kernel是4.14,我使用的DHD是15版本的,kernel里面有默认的bcmdhd。

我现在是在IMX8开发板上面调试的,IMX8板子上面硬件上默认接的是AMPAK的模组,与SD卡共用一组SDIO,我现在是通过SD卡外接海华197模组验证DHD driver。

BR,

Leo

0 Likes

default DHD 可以跑起来吗? 我看下是否有针对imx的dhd的patch。

0 Likes
lock attach
Attachments are accessible only for community members.

Hi Zhengbao,

default DHD是可以跑起来的,我打包放在附件了,你看下。

0 Likes

好的, 多谢。

0 Likes
lock attach
Attachments are accessible only for community members.

尝试下附件的patch.

Hi Zhengbao,

太棒了,打上你给patch,目前可以生成interface了。完整的log如下,请帮忙看下这样部分error是否有影响。

[   60.169240] cywdhd: loading out-of-tree module taints kernel.

[   60.191662] dhd_module_init in

[   60.193594] no wifi platform data, skip

[   60.196355] DHD wifi platform data is required for Android build

[   60.201199] DHD registeing bus directly

[   60.212579] F1 signature read @0x18000000=0x1541a9a6

[   60.221186] F1 signature OK, socitype:0x1 chip:0xa9a6 rev:0x1 pkg:0x4

[   60.229159] DHD: dongle ram size is set to 524288(orig 524288) at 0x0

[   60.235051] CFG80211-ERROR) wl_setup_wiphy :

[   60.235055] Registering Vendor80211

[   60.241281] wl_create_event_handler(): thread:wl_event_handler:dd9 started

[   60.241283] CFG80211-ERROR) wl_event_handler :

[   60.241288] tsk Enter, tsk = 0xffff800074901b70

[   60.247194] dhd_attach(): thread:dhd_watchdog_thread:ddb started

[   60.258617] dhd_attach(): thread:dhd_dpc:ddc started

[   60.262633] dhd_attach(): thread:dhd_rxf:ddd started

[   60.266482] dhd_deferred_work_init: work queue initialized

[   60.360287] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.

[   60.429424] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)

[   60.435943] dhdsdio_readshared: sdpcm_shared version 1 in dhd is different than sdpcm_shared version 64 in dongle

[   60.446802] dhdsdio_readshared: sdpcm_shared version 1 in dhd is different than sdpcm_shared version 64 in dongle

[   60.456095] Disable tdls_auto_op failed. -1

[   60.464279] Firmware up: op_mode=0x0005, MAC=80:c5:f2:dc:09:21

[   60.480173] dhd_preinit_ioctls Set txbf failed  -23

[   60.486013] dhd_preinit_ioctls Set ampdu_mpdu to 16 failed  -29

[   60.491868] dhd_preinit_ioctls pspretend_threshold for HostAPD failed  -23

[   60.510123] Firmware version = wl0: Jun 12 2019 21:30:19 version 7.46.58.28 (r717266 CY) FWID 01-d43eaba6 es4.c3.n4

[   60.522882] dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64

[   60.535453] dhd_pno_init: Support Android Location Service

[   60.569644] MACEVENT: WLC_E_IF 54, MAC 80:c5:f2:dc:09:21, status 0, reason 0, auth 0

[   60.576661] rtt_do_get_ioctl: failed to send getbuf proxd iovar (CMD ID : 1), status=-23

[   60.583588] dhd_rtt_init : FTM is not supported

[   60.593343] dhd_interworking_enable: failed to set WNM info, ret=-23

[   60.598413] Dongle Host Driver, version 1.363.125.15 (r)

               Compiled in /home/myzr/cywdhd/dhd-android-1.363.125.15_4.14 on Aug  3 2020 at 17:34:20

[   60.614709] Register interface [wlan0]  MAC: 80:c5:f2:dc:09:21

[   60.620611] dhd_module_init out

[   68.738417] MACEVENT: WLC_E_IF 54, MAC 80:c5:f2:dc:09:21, status 0, reason 0, auth 0

[   68.745713] MACEVENT: WLC_E_IF 54, MAC 80:c5:f2:dc:09:21, status 0, reason 0, auth 0

[   68.766113] CFG80211-ERROR) wl_update_wiphybands :

[   68.766119] error reading vhtmode (-23)

[   68.811935] wl_create_event_handler(): thread:wl_event_handler:ded started

[   68.811938] CFG80211-ERROR) wl_event_handler :

[   68.811946] tsk Enter, tsk = 0xffff800074901b70

0 Likes

这些fail 没有影响的,只是firmware 不支持这些功能。

0 Likes