Rockchip基于RK3566/RK3568 WiFi AP6256调试笔记
1、开发平台
CPU:RK3566
编译环境:Ubuntu18.04
内核版本:kernel 4.19
2、目的
因为RK3566/RK3568支持SDIO3.0并且向下兼有SDIO2.0接口,由于核心板在VCC_IO6上将电压定为了3.3V,无法改变为1.8V,所以没有办法支持SDIO3.0,所以这次需要调试SDIO2.0模式下的WiFi。
3、原理图
4、调试分析
从Rockchip软件包中的Rockchip_Developer_Guide_Linux_WIFI_BT_CN.pdf doc操作文档可以得出:WiFi 部分共有两部分供电组成,一个是主控端的IO:SDIO_CLK/CMD/D0~D3,它需要外部供电,如VCCIO6。另一个是WiFi模块的IO的供电,wifi模块中的22引脚,两部分供电必须一致否则会导致WiFi异常;对于支持SDIO3.0 超高速模式的WiFi模块,必须供电1.8V,但对于仅支持SDIO2.0高速模式的WiFi模块,供电1.8/3.3V都是可以的,切记必须保持一致;
第一步
我们先用万用表测量这些引脚的电压,如果SDIO_CLK/CMD/D0~D3、VCCIO6电压都一样的话,视为正常,可以认为电源管理这一项没有问题。
第二步
查看一下ap6256芯片手册文档,看到如下图,其中wifi中的第9脚表明,如果需要SDIO3.0模式的话就把该引脚拉高,并且SDIO_CLK/CMD/D0~D3这些引脚电平为1.8V,如果SDIO2.0的话把该引脚拉低,并且SDIO_CLK/CMD/D0-D3这些引脚电平为3.3V。显然,这次我们需要将该引脚拉低。
这里有个小贴士,如果将WIFI第29脚接地的话,用O欧电阻串联,我试过用10K电阻串联,结果还是高电平1。
第三步
设备树的配置和WiFi驱动模块的编译
DTS:IO电源域的配置
&pmu_io_domains {status = "okay";pmuio1-supply = <&vcc3v3_pmu>;pmuio2-supply = <&vcc3v3_pmu>;vccio1-supply = <&vccio_acodec>;vccio3-supply = <&vccio_sd>;vccio4-supply = <&vcc_3v3>;vccio5-supply = <&vcc_3v3>;vccio6-supply = <&vcc_3v3>;vccio7-supply = <&vcc_3v3>;
};sdio_pwrseq: sdio-pwrseq {compatible = "mmc-pwrseq-simple";clocks = <&rk809 1>;clock-names = "ext_clock";pinctrl-names = "default";pinctrl-0 = <&wifi_enable_h>;/** On the module itself this is one of these (depending* on the actual card populated):* - SDIO_RESET_L_WL_REG_ON* - PDN (power down when low)*/reset-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>;
};wireless_wlan: wireless-wlan {compatible = "wlan-platdata";pinctrl-names = "default";rockchip,grf = <&grf>;wifi_chip_type = "ap6256";pinctrl-0 = <&wifi_host_wake_irq>;WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>;status = "okay";
};&sdmmc2 {max-frequency = <50000000>;supports-sdio;bus-width = <4>;disable-wp;cap-sd-highspeed;cap-sdio-irq;keep-power-in-suspend;mmc-pwrseq = <&sdio_pwrseq>; non-removable;pinctrl-names = "default";pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>;sd-uhs-sdr104;status = "okay";
};
第四步
模块正常加载的打印信息
安装上一步编译好的wifi模块
[root@RK356X:/]# insmod bcmdhd.ko
[ 13.746289] dhd_module_init: in Dongle Host Driver, version 1.57# 9.77.41.22 (r-20191105-2)(20191120-1)
[ 13.746322] ======== dhd_wlan_init_plat_data ========
[ 13.746332] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[ 13.746431] dhd_wlan_init_gpio: WL_HOST_WAKE=-1, oob_irq=101, oob_irq_flags=0x414
[ 13.746444] dhd_wlan_init_gpio: WL_REG_ON=-1
[ 13.746454] dhd_wifi_platform_load: Enter
[ 13.746465] Power-up adapter 'DHD generic adapter'
[ 13.747680] wifi_platform_set_power = 1
[ 13.747702] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 13.747709] [WLAN_RFKILL]: rockchip_wifi_power: 1
[ 13.747716] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 13.747723] [WLAN_RFKILL]: wifi turn on power [GPIO-1-0]
[ 14.052582] wifi_platform_bus_enumerate device present 1
[ 14.052607] ======== Card detection to detect SDIO card! ========
[ 14.052614] mmc3:mmc host rescan start!
[ 14.068802] bcmsdh_register: register client driver
[ 14.069043] bcmsdh_sdmmc_probe: Enter num=1
[ 14.069667] bcmsdh_sdmmc_probe: Enter num=2
[ 14.069692] bus num (host idx)=3, slot num (rca)=1
[ 14.069704] found adapter info 'DHD generic adapter'
[ 14.069862] sdioh_attach: set sd_f2_blocksize 256
[ 14.069981] sdioh_attach: sd clock rate = 0
[ 14.070303] dhdsdio_probe : no mutex held. set lock
[ 14.070426] F1 signature read @0x18000000=0x15294345
[ 14.073767] F1 signature OK, socitype:0x1 chip:0x4345 rev:0x9 pkg:0x2
[ 14.074377] DHD: dongle ram size is set to 819200(orig 819200) at 0x198000
[ 14.074471] [dhd] dhd_conf_set_chiprev : chip=0x4345, chiprev=9
[ 14.074598] [dhd] CFG80211-ERROR) wl_setup_wiphy : Registering Vendor80211
[ 14.074923] [dhd] CFG80211-ERROR) wl_setup_wiphy : SAE support
[ 14.075159] [dhd] CFG80211-ERROR) wl_init_prof : wl_init_prof: No profile
[ 14.076396] dhd_attach(): thread:dhd_watchdog_thread:2cf started
[ 14.076531] dhd_attach(): thread:dhd_dpc:2d0 started
[ 14.076639] dhd_attach(): thread:dhd_rxf:2d1 started
[ 14.076666] dhd_deferred_work_init: work queue initialized
[ 14.076678] dhd_tcpack_suppress_set: TCP ACK Suppress mode 0 -> mode 2
[ 14.076715] dhd_bus_set_default_min_res_mask: Unhandled chip id
[ 14.077020] sdioh_cis_read: func_cis_ptr[0]=0x10ac
[ 14.086499] Dongle Host Driver, version 1.579.77.41.22 (r-20191105-2)(20191120-1)
[ 14.087282] Register interface [wlan0] MAC: d4:9c:dd:23:dc:e4
[ 14.087282]
[ 14.087394] dhd_tcpack_suppress_set: TCP ACK Suppress mode 2 -> mode 0
[ 14.087415] dhd_wl_ioctl: returning as busstate=0
[ 14.087427] dhd_dbg_detach_pkt_monitor, 2204
[ 14.087437] dhd_bus_devreset: == Power OFF ==
[ 14.087710] bcmsdh_oob_intr_unregister: Enter
[ 14.087723] bcmsdh_oob_intr_unregister: irq is not registered
[ 14.087738] dhd_txglom_enable: enable 0
[ 14.087747] dhd_bus_devreset: WLAN OFF DONE
[ 14.087798] wifi_platform_set_power = 0
[ 14.087811] ======== PULL WL_REG_ON(-1) LOW! ========
[ 14.087822] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 14.087840] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 14.087850] [WLAN_RFKILL]: wifi shut off power [GPIO-1-1]
[ 14.087860] dhdsdio_probe : the lock is released.
[ 14.088309] dhd_module_init: Exit err=0
[ 14.089291] dhd_ioctl_entry: Interface is down
[ 14.089316] [dhd] WEXT-ERROR) wl_iw_get_essid : Error getting the SSID -22
[ 14.109960] dhd_open: Enter 00000000e8c47884
[ 14.109987] dhd_open : no mutex held. set lock
[ 14.110002]
[ 14.110002] Dongle Host Driver, version 1.579.77.41.22 (r-20191105-2)(20191120-1)
[ 14.110021] [dhd-wlan0] wl_android_wifi_on : in g_wifi_on=0
[ 14.110030] wifi_platform_set_power = 1
[ 14.110040] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 14.110049] [WLAN_RFKILL]: rockchip_wifi_power: 1
[ 14.110058] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 14.110067] [WLAN_RFKILL]: wifi turn on power [GPIO-1-0]
[ 14.436192] sdio_reset_comm():
[ 14.451491] mmc_host mmc3: Bus speed (slot 0) = 375000Hz (slot req 400000Hz, actual 375000HZ div = 0)
[ 14.468368] dwmmc_rockchip fe000000.dwmmc: failed to set rate 100000Hz
[ 14.468387] mmc_host mmc3: Bus speed (slot 0) = 375000Hz (slot req 100000Hz, actual 93750HZ div = 2)
[ 14.522770] mmc3: queuing unknown CIS tuple 0x80 (2 bytes)
[ 14.529588] mmc3: queuing unknown CIS tuple 0x80 (3 bytes)
[ 14.536495] mmc3: queuing unknown CIS tuple 0x80 (3 bytes)
[ 14.549329] mmc3: queuing unknown CIS tuple 0x80 (7 bytes)
[ 14.565034] mmc3: queuing unknown CIS tuple 0x81 (9 bytes)
[ 14.784621] dwmmc_rockchip fe000000.dwmmc: failed to set rate 100000Hz
[ 14.784782] mmc_host mmc3: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[ 14.784933] sdioh_start: set sd_f2_blocksize 256
[ 14.785560]
[ 14.785560]
[ 14.785560] dhd_bus_devreset: == WLAN ON ==
[ 14.785793] F1 signature read @0x18000000=0x15294345
[ 14.791979] F1 signature OK, socitype:0x1 chip:0x4345 rev:0x9 pkg:0x2
[ 14.793292] DHD: dongle ram size is set to 819200(orig 819200) at 0x198000
[ 14.793477] dhd_bus_set_default_min_res_mask: Unhandled chip id
[ 14.797068] [dhd] dhd_conf_read_config : Ignore config file /vendor/etc/firmware/config.txt
[ 14.797158] [dhd] dhd_conf_set_path_params : Final fw_path=/vendor/etc/firmware/fw_bcm43456c5_ag.bin
[ 14.797204] [dhd] dhd_conf_set_path_params : Final nv_path=/vendor/etc/firmware/nvram_ap6256.txt
[ 14.797243] [dhd] dhd_conf_set_path_params : Final clm_path=/vendor/etc/firmware/clm_bcm43456c5_ag.blob
[ 14.797280] [dhd] dhd_conf_set_path_params : Final conf_path=/vendor/etc/firmware/config.txt
[ 14.798975] dhd_os_open_image: /vendor/etc/firmware/fw_bcm43456c5_ag.bin (612559 bytes) open success
[ 15.086703] dhd_os_open_image: /vendor/etc/firmware/nvram_ap6256.txt (2732 bytes) open success
[ 15.088667] NVRAM version: AP6256_NVRAM_V1.4_06112021
[ 15.091514] dhdsdio_write_vars: Download, Upload and compare of NVRAM succeeded.
[ 15.182315] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)
[ 15.183212] bcmsdh_oob_intr_register: HW_OOB irq=101 flags=0x4
[ 15.183786] dhd_get_memdump_info: File [/data/misc/wifi/.memdump.info] doesn't exist
[ 15.183849] dhd_get_memdump_info: MEMDUMP ENABLED = 2
[ 15.188370] Disable tdls_auto_op failed. -1
[ 15.188431] dhd_tcpack_suppress_set: TCP ACK Suppress mode 0 -> mode 1
[ 15.189623] dhd_apply_default_clm: Ignore clm file /vendor/etc/firmware/clm_bcm43456c5_ag.blob
[ 15.194103] Firmware up: op_mode=0x0005, MAC=d4:9c:dd:23:dc:e4
[ 15.210297] Driver: 1.579.77.41.22 (r-20191105-2)(20191120-1)
[ 15.210297] Firmware: wl0: Jun 11 2021 13:06:16 version 7.45.96.91 (8d24bff@SYNA) (r745790) FWID 01-82a62ae es7.c5.n4.a3
[ 15.210297] CLM: 9.2.9 (2016-02-03 04:34:31)
[ 15.210751] dhd_txglom_enable: enable 1
[ 15.210771] [dhd] dhd_conf_set_txglom_params : txglom_mode=copy
[ 15.210781] [dhd] dhd_conf_set_txglom_params : txglomsize=36, deferred_tx_len=0
[ 15.210794] [dhd] dhd_conf_set_txglom_params : txinrx_thres=128, dhd_txminmax=-1
[ 15.210807] [dhd] dhd_conf_set_txglom_params : tx_max_offset=0, txctl_tmo_fix=300
[ 15.210824] [dhd] dhd_conf_get_disable_proptx : fw_proptx=1, disable_proptx=-1
[ 15.211894] dhd_wlfc_hostreorder_init(): successful bdcv2 tlv signaling, 64
[ 15.213700] dhd_pno_init: Support Android Location Service
[ 15.233986] [dhd] CFG80211-ERROR) wl_cfg80211_event : Event handler is not created
[ 15.234698] dhd_rtt_init : FTM is supported
[ 15.234717] dhd_preinit_ioctls: SensorHub diabled 0
[ 15.235545] dhd_preinit_ioctls failed to set ShubHub disable
[ 15.237655] [dhd] CFG80211-ERROR) wl_cfg80211_event : Event handler is not created
[ 15.237677] [dhd] dhd_conf_map_country_list : CN/38
[ 15.237686] [dhd] dhd_conf_set_country : set country CN, revision 38
[ 15.240675] [dhd] dhd_conf_set_country : Country code: CN (CN/38)
[ 15.245912] [dhd-wlan0] wl_android_wifi_on : Success
[ 15.301768] dhd_open : the lock is released.
[ 15.301835] dhd_open: Exit ret=0
查看是否有wlan节点
[root@RK356X:/]# ifconfig
eth0 Link encap:Ethernet HWaddr 06:51:A7:C1:B1:A4 UP BROADCAST MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)Interrupt:35 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:84 errors:0 dropped:0 overruns:0 frame:0TX packets:84 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:5488 (5.3 KiB) TX bytes:5488 (5.3 KiB)wlan0 Link encap:Ethernet HWaddr D4:9C:DD:23:DC:E4 inet addr:169.254.14.168 Bcast:169.254.255.255 Mask:255.255.0.0inet6 addr: fe80::5340:dd3a:6601:58d7/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:19 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:2681 (2.6 KiB)
异常分析
如果在加载模块的时候报以下错误:
[root@RK356X:/]# insmod bcmdhd.ko
[ 17.552661] dhd_module_init: in Dongle Host Driver, version 1.57
9.77.41.22 (r-20191105-2)(20191120-1)
[ 17.552700] ======== dhd_wlan_init_plat_data ========
[ 17.552708] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[ 17.552804] dhd_wlan_init_gpio: WL_HOST_WAKE=-1, oob_irq=101, oob_irq_flags=0x414
[ 17.552817] dhd_wlan_init_gpio: WL_REG_ON=-1
[ 17.552827] dhd_wifi_platform_load: Enter
[ 17.552840] Power-up adapter 'DHD generic adapter'
[ 17.552900] wifi_platform_set_power = 1
[ 17.552943] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 17.552954] [WLAN_RFKILL]: rockchip_wifi_power: 1
[ 17.552975] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 17.552983] [WLAN_RFKILL]: wifi turn on power [GPIO-1-0]
[ 17.859951] wifi_platform_bus_enumerate device present 1
[ 17.860022] ======== Card detection to detect SDIO card! ========
[ 17.860047] mmc3:mmc host rescan start!
[ 19.876530] failed to power up DHD generic adapter, 1 retry left
[ 19.892724] wifi_platform_set_power = 0
[ 19.892744] ======== PULL WL_REG_ON(-1) LOW! ========
[ 19.892752] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 19.892766] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 19.892773] [WLAN_RFKILL]: wifi shut off power [GPIO-1-1]
[ 19.892779] wifi_platform_bus_enumerate device present 0
[ 19.892785] ======== Card detection to remove SDIO card! ========
[ 19.892791] mmc3:mmc host rescan start!
[ 19.892841] wifi_platform_set_power = 1
[ 19.892853] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 19.892862] [WLAN_RFKILL]: rockchip_wifi_power: 1
[ 19.892871] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 19.892880] [WLAN_RFKILL]: wifi turn on power [GPIO-1-0]
[ 20.196502] wifi_platform_bus_enumerate device present 1
[ 20.196567] ======== Card detection to detect SDIO card! ========
[ 20.196594] mmc3:mmc host rescan start!
[ 22.223271] failed to power up DHD generic adapter, 0 retry left
[ 22.239490] wifi_platform_set_power = 0
[ 22.239511] ======== PULL WL_REG_ON(-1) LOW! ========
[ 22.239520] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 22.239536] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 22.239544] [WLAN_RFKILL]: wifi shut off power [GPIO-1-1]
[ 22.239550] wifi_platform_bus_enumerate device present 0
[ 22.239556] ======== Card detection to remove SDIO card! ========
[ 22.239563] mmc3:mmc host rescan start!
[ 22.239569] failed to power up DHD generic adapter, max retry reached**
[ 22.239608] unregister wifi platform drivers
[ 22.239620] wifi_platform_bus_enumerate device present 0
[ 22.239637] ======== Card detection to remove SDIO card! ========
[ 22.239654] mmc3:mmc host rescan start!
[ 22.239668] ======== dhd_wlan_deinit_plat_data ========
[ 22.239680] dhd_module_init: Failed to load the driver, try cnt 0
[ 22.239730] dhd_module_init: Failed to load driver max retry reached**
[ 22.239745] dhd_module_init: Exit err=-19
首先检查一下WL_REG_ON的引脚在设备树DTS中无有配置错误,有没有被拉高。在加载的WiFi模块的时候,用万用表测量一下WL_REG_ON引脚有拉高过没有。
你可以尝试屏蔽一下sdmmc2节点中的sd-uhs-sdr104;
如果重启后再次加载WIFI模块,报以下错误:
[root@RK356X:/]# insmod bcmdhd.ko
[ 10.928437] dhd_module_init: in Dongle Host Driver, version 1.579.77.41.22 (r-20191105-2)(20191120-1)
[ 10.928479] ======== dhd_wlan_init_plat_data ========
[ 10.928488] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[ 10.928578] dhd_wlan_init_gpio: WL_HOST_WAKE=-1, oob_irq=101, oob_irq_flags=0x414
[ 10.928593] dhd_wlan_init_gpio: WL_REG_ON=-1
[ 10.928602] dhd_wifi_platform_load: Enter
[ 10.928617] Power-up adapter 'DHD generic adapter'
[ 10.930180] wifi_platform_set_power = 1
[ 10.930202] ======== PULL WL_REG_ON(-1) HIGH! ========
[ 10.930209] [WLAN_RFKILL]: rockchip_wifi_power: 1
[ 10.930216] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 10.930223] [WLAN_RFKILL]: wifi turn on power [GPIO-1-0]
[ 11.235616] wifi_platform_bus_enumerate device present 1
[ 11.235685] ======== Card detection to detect SDIO card! ========
[ 11.235711] mmc3:mmc host rescan start!
[ 11.251918] bcmsdh_register: register client driver
[ 11.252159] bcmsdh_sdmmc_probe: Enter num=1
[ 11.252732] bcmsdh_sdmmc_probe: Enter num=2
[ 11.252752] bus num (host idx)=3, slot num (rca)=1
[ 11.252761] found adapter info 'DHD generic adapter'
[ 11.252847] sdioh_attach: set sd_f2_blocksize 256
[ 11.252896] sdioh_attach: sd clock rate = 0
[ 11.253474] dhdsdio_probe : no mutex held. set lock
[ 11.253613] F1 signature read @0x18000000=0x19258389
[ 11.254260] bcmsdh_sdmmc: Failed to Read word F1:@0x0e000=ffffffff, Err: 0xffffffac
[ 11.254283] bcmsdh_reg_read: error reading addr 0xe000 size 4
[ 11.254352] bcmsdh_sdmmc: Failed to Read word F1:@0x0e004=ffffffff, Err: 0xffffffac
[ 11.254364] bcmsdh_reg_read: error reading addr 0xe004 size 4
[ 11.254449] bcmsdh_sdmmc: Failed to Read word F1:@0x0e008=ffffffff, Err: 0xffffffac
[ 11.254462] bcmsdh_reg_read: error reading addr 0xe008 size 4
[ 11.254528] bcmsdh_sdmmc: Failed to Read word F1:@0x0e00c=ffffffff, Err: 0xffffffac
[ 11.254541] bcmsdh_reg_read: error reading addr 0xe00c size 4
[ 11.254606] bcmsdh_sdmmc: Failed to Read word F1:@0x0e010=ffffffff, Err: 0xffffffac
[ 11.254618] bcmsdh_reg_read: error reading addr 0xe010 size 4
[ 11.254684] bcmsdh_sdmmc: Failed to Read word F1:@0x0e014=ffffffff, Err: 0xffffffac
[ 11.254696] bcmsdh_reg_read: error reading addr 0xe014 size 4
[ 11.288620] bcmsdh_sdmmc: Failed to Read word F1:@0x0e6c4=ffffffff, Err: 0xffffffac
[ 11.288634] bcmsdh_reg_read: error reading addr 0xe6c4 size 4
[ 11.288715] bcmsdh_sdmmc: Failed to Read word F1:@0x0e6c8=ffffffff, Err: 0xffffffac
[ 11.288732] bcmsdh_reg_read: error reading addr 0xe6c8 size 4
** 165 console messages dropped **
[ 23.502328] dhd_wifi_platform_load_sdio: sdio_register_driver timeout or error
[ 23.502577] wifi_platform_set_power = 0
[ 23.502598] ======== PULL WL_REG_ON(-1) LOW! ========
[ 23.502612] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 23.502637] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 23.502651] [WLAN_RFKILL]: wifi shut off power [GPIO-1-1]
[ 23.502662] wifi_platform_bus_enumerate device present 0
[ 23.502674] ======== Card detection to remove SDIO card! ========
[ 23.502687] mmc3:mmc host rescan start!
[ 23.502698] unregister wifi platform drivers
[ 23.502709] wifi_platform_bus_enumerate device present 0
[ 23.502720] ======== Card detection to remove SDIO card! ========
[ 23.502732] mmc3:mmc host rescan start!
[ 23.502744] ======== dhd_wlan_deinit_plat_data ========
[ 23.502753] dhd_module_init: Failed to load the driver, try cnt 0
[ 23.502803] dhd_module_init: Failed to load driver max retry reached**
[ 23.502817] dhd_module_init: Exit err=-62
[ 33.955649] vcc3v3_lcd1_n: disabling
这个错误大多原因是WiFi模块中SDIO接口有问题,导致通讯不了,识别不到。
这个你可以将sdmmc2节点中的bus-width = <4>改成bus-width = <1>,这样重新测试,如果成功了,证明是SDIO线序问题。
总结
这次的WiFi模块调试相比上次ap6212WiFi驱动调试笔记又有不一样的收获,这次是纠结在bus-width=<4>为4线一直不行,当把bus-width改为1后(sdio单线模式)后,就能顺利加载模块了。电压不一样也会影响WIFI不能正常工作,如何去切换SDIO3.0和SDIO2.0模式。
Rockchip基于RK3566/RK3568 WiFi AP6256调试笔记相关推荐
- [基于瑞芯微RV1126调试RTL8818FU WIFI模组支持STA和AP模式]
基于瑞芯微RV1126调试RTL8818FU WIFI模组支持STA和AP模式 内核menuconfig配置 内核dts配置 文件系统配置和更改 驱动编译 wifi工具编译 libnl库编译 open ...
- 2020-02-24 RK3288 Android7.1 5.1 增加AP6256 WI-FI Bluetooth调试记录
RK3288 Android7.1 5.1 增加AP6256 WI-FI Bluetooth调试记录 一.硬件连接图,AP6335.AP6255.AP6256 Pin对Pin,可以直接替换. 二.原本 ...
- wifi(rtl8188eu)移植及调试笔记
/* * Dave/nova_wangwenbo@126.com */ wifi移植及调试笔记 一.rtl8188eu 1.修改设备树: 添加wifi ap电源控制引脚 WIFI,power_ap_g ...
- 基于Android和WI-FI通信的智能家居系统
针对传统智能家居系统存在的操作复杂.可移动性差.升级维护成本高等缺点,本文提出了一种基于Android的智能家居系统的设计和实现方案.采用了具有Android操作系统的智能手机或平板电脑作为家居控制终 ...
- gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】
Platform: ROCKCHIP OS: Android 6.0 Kernel: 3.10.92 由于板子没有lcd无法得知sd卡升级是否完成,因此使用LED显示. Recovery中升级完成后控 ...
- keil4怎么移植其他人的程序_【调试笔记】韦东山:在100ask_imx6ull上移植使用六轴传感器ICM20608...
之前发了LCD调试笔记,大家很感兴趣,所以这次再来一篇:六轴传感器ICM20608驱动移植笔记,大家还需要什么移植笔记?可以留言.我们尽量满足. 1.1 移植思路 先找到驱动:也许内核里已经有,也许需 ...
- php与硬件通过wifi对接,基于ESP8266的WiFi排插接入贝壳互联实现天猫精灵控制
认识众多玩家高手/拆客/DIYer,查阅更多资源,一起学习技术知识 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 本帖最后由 hzy3774 于 2020-1-8 00:45 编辑 * 实验 ...
- STM32F103代码远程升级(五)基于MQTT协议WiFi远程升级代码的实现
文章目录 一.WiFi模块的选用与介绍 二.ESP8266的固件擦除与烧写 1.ESP8266 Flash擦除工具的安装与使用. 2.ESP8266固件烧写 (1)在线获取固件文件 (2)获取SDK ...
- qcc514x-qcc304x调试笔记
QCC514X-QCC304X系列调试笔记,用的高通QCC5141芯片,基于qcc514x-qcc304x-src-1-0_qtil_standard_oem_earbud-ADK-21.1-CS2- ...
最新文章
- python无法导入pyaudio_python – pyaudio无法导入_portaudio
- 遗传算法系统辨识matlab程序,8.8 基于遗传算法的机械手参数辨识 系统辨识理论及Matlab仿真课件.ppt...
- Linux中写入union作用,Linux进程描述符中union的用法
- oracle利用游标添加数据库,Oracle数据库游标的类型及使用实例全解
- java策略模式详解_Java经典设计模式之策略模式原理与用法详解
- 《混合云计算》——2.3 整合势在必行
- 在docker 中配置hadoop1.2.1 cluser
- 大组合数:Lucas定理
- 管理新语:如果经验有用,大家都去养老院招人了
- 设置google浏览器为黑色底色
- 工业界和学术界最大区别是什么?
- 谷歌浏览器扩展v3版本总结
- 时间转换 秒(s)转 ()天 ()小时() 分钟 ()秒
- OSCHINA博文抄袭检查
- mc服务器语音,《我的世界》语音聊天Mod安装使用教程
- iMX RT FlexSPI 时序及驱动程序参数设置解析 (一)
- JVM crash 异常分析
- 苏州和上海在生活和工作方面的比较
- SRS和杜比认证音效
- 快速建站该怎么实现?
热门文章
- 《C++ 黑客编程揭秘与防范(第2版)》——6.2 详解PE文件结构
- scipy库 signal 导入_Python scipy.signal方法代码示例
- linux 命令:who 详解
- 王权富贵:使用pytorch复现Fater-RCNN
- 使用 CSS 追踪用户
- 100+大屏模板免费领!葡萄城BI行业应用方案重磅发布!
- 网络主流平台可以买到 龙芯3A5000 处理器的电脑了。
- wamp环境变量配置php,WAMP环境配置-PHP安装
- 一个0中间一斜杠_斜杠青年喜欢的“网红台灯”:会唱歌,能无线充电,抖音获赞16W+...
- STM32-M3(野火)SD卡读写/移植znFAT文件访问系统