目前共有11篇帖子。 字體大小:較小 - 100% (默認)▼  內容轉換:大陆简体▼
 
點擊 回復
92 10
insmod aic8800_fdrv.ko和aic8800_netdrv.ko没有成功。
一派掌門 二十級
1樓 發表于:2025-4-22 16:40
insmod /oem/usr/ko/cfg80211.ko
insmod /oem/usr/ko/aic8800_btlpm.ko
insmod /oem/usr/ko/aic8800_bsp.ko
insmod /oem/usr/ko/aic8800_fdrv.ko
insmod /oem/usr/ko/aic8800_netdrv.ko
一派掌門 二十級
2樓 發表于:2025-4-22 16:40

Welcome to luckfox pico
luckfox login: root
Password:
[root@luckfox root]#
[root@luckfox root]#
[root@luckfox root]#
[root@luckfox root]# insmod /oem/usr/ko/cfg80211.ko
[   20.046530] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   20.064563] cfg80211: Problem loading in-kernel X.509 certificate (-22)
[root@luckfox root]# [   20.064756] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[   20.064772] cfg80211: failed to load regulatory.db

[root@luckfox root]# insmod /oem/usr/ko/aic8800_btlpm.ko
[   24.688561] aic_bluetooth_mod_init
[   24.688913] -->rfkill_bluetooth_init
[root@luckfox root]# [   24.688926] <--rfkill_bluetooth_init

[root@luckfox root]# insmod /oem/usr/ko/aic8800_bsp.ko
[   34.230617] aicbsp_init
[   34.230644] RELEASE_DATE:2024_0615_c3cb37b3
[root@luckfox root]# [   34.230654] aicbsp_resv_mem_init

[root@luckfox root]# insmod /oem/usr/ko/aic8800_fdrv.ko
[   39.876415] aicbsp: aicbsp_set_subsys, subsys: AIC_WIFI, state to: 1
[   39.876443] aicbsp: aicbsp_set_subsys, power state change to 1 dure to AIC_WIFI
[   39.876451] aicbsp: aicbsp_platform_power_on
[   41.935766] aicbsp: aicbsp_set_subsys, fail to set AIC_WIFI power state to 1
[   41.945478] aicbsp: aicbsp_set_subsys, subsys: AIC_WIFI, state to: 1
[   41.945498] aicbsp: aicbsp_set_subsys, power state change to 1 dure to AIC_WIFI
[   41.945507] aicbsp: aicbsp_platform_power_on
[   44.015764] aicbsp: aicbsp_set_subsys, fail to set AIC_WIFI power state to 1
insmod: can't insert '/oem/usr/ko/aic8800_fdrv.ko': No such device
[root@luckfox root]# insmod /oem/usr/ko/aic8800_netdrv.ko
[   46.189708] >>> rwnx_mod_init()
[   46.189733] rwnx v6.4.4.0 - bbec44fc (master)
[   46.189741] RELEASE DATE:2023_0103_2239
[   52.320683] register_driver timeout or error
[   52.322940] >>> rwnx_mod_init()
[   52.322961] rwnx v6.4.4.0 - bbec44fc (master)
[   52.322969] RELEASE DATE:2023_0103_2239
[   58.720683] register_driver timeout or error
insmod: can't insert '/oem/usr/ko/aic8800_netdrv.ko': No such device
[root@luckfox root]#

 
一派掌門 二十級
3樓 發表于:2025-4-22 16:41
[root@luckfox root]# lsusb
Bus 001 Device 001: ID 1d6b:0002
Bus 001 Device 002: ID a69c:88dc
Bus 002 Device 001: ID 1d6b:0003
[root@luckfox root]# lsmod
Module                  Size  Used by    Tainted: G
aic8800_bsp            46005  0
aic8800_btlpm           1382  0
cfg80211              168737  0
rve                    23436  0
rockit                225880  0
rknpu                  27019  0
mpp_vcodec            414257  1 rockit
rga3                   90762  1 rockit
phy_rockchip_csi2_dphy     9338  0
phy_rockchip_csi2_dphy_hw    10066  0
video_rkisp           171838  1 rockit
video_rkcif           162117  1 rockit
rk_dvbm                 5941  2 mpp_vcodec,video_rkisp
[root@luckfox root]#
 
一派掌門 二十級
4樓 發表于:2025-4-22 17:45

aic8800_netdrv(aic8800_netdrv.ko)和aic8800_usb(aic8800_fdrv.ko和aic_load_fw.ko)是USB接口(受build-usb开关控制)。

aic8800dc(aic8800_bsp.ko、aic8800_btlpm.ko和aic8800_fdrv.ko)是SDIO接口(受build-sdio开关控制)。

 

USB和SDIO两种接口各有一个aic8800_fdrv.ko,两个ko虽然名字是一样的,但是内容是不一样的。

编译的时候两个都编译了,但只复制了SDIO接口的那个aic8800_fdrv.ko,所以insmod就走了SDIO接口,当然就检测不到设备了。

 
巨大八爪鱼

SDIO接口的aic8800_fdrv.ko是依赖aic8800_bsp.ko的。

而USB接口的aic8800_fdrv.ko不依赖aic8800_bsp.ko。

  2025-4-22 17:50 回復
一派掌門 二十級
5樓 發表于:2025-4-22 19:47

export RK_ENABLE_WIFI=y
export RK_ENABLE_WIFI_CHIP="AIC8800DW_USB"

正常编译出来的以aic8800开头的ko文件应该只有一个:/oem/usr/ko/aic8800_fdrv.ko

 

开机后的模块插入顺序:

insmod /oem/usr/ko/cfg80211.ko
insmod /oem/usr/ko/aic_load_fw.ko
insmod /oem/usr/ko/aic8800_fdrv.ko
 
一派掌門 二十級
6樓 發表于:2025-4-22 19:48

[root@luckfox root]# insmod /oem/usr/ko/cfg80211.ko
[   46.567140] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   46.585457] cfg80211: Problem loading in-kernel X.509 certificate (-22)
[root@luckfox root]# [   46.585648] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[   46.585665] cfg80211: failed to load regulatory.db

[root@luckfox root]# insmod /oem/usr/ko/aic_load_fw.ko
[   52.909036] aic_bluetooth_mod_init
[   52.909066] RELEASE DATE:2023_1219_3cf85031
[root@luckfox root]# [   52.909182] usbcore: registered new interface driver aic_load_fw

[root@luckfox root]# insmod /oem/usr/ko/aic8800_fdrv.ko
[   59.616438] AICWFDBG(LOGINFO)        rwnx v6.4.3.0 - 1a4b0054d2M (master)
[   59.616468] AICWFDBG(LOGINFO)        RELEASE DATE:2023_1219_3cf85031
[   59.616644] AICWFDBG(LOGINFO)        aicwf_usb_chipmatch USE AIC8800DC
[   59.616658] AICWFDBG(LOGINFO)        aicwf_parse_usb endpoints = 4
[   59.616667] AICWFDBG(LOGINFO)        Aic high speed USB device detected
[   59.616676] AICWFDBG(LOGINFO)        aicwf_usb_alloc_rx_urb AICWF_USB_RX_URBS:20
[   59.616694] AICWFDBG(LOGINFO)        aicwf_usb_alloc_tx_urb AICWF_USB_TX_URBS:200
[   59.616765] AICWFDBG(LOGINFO)        aicwf_usb_alloc_msg_rx_urb AICWF_USB_MSG_RX_URBS:100
[   59.616998] AICWFDBG(LOGINFO)        usb_busrx_thread the policy of current thread is:1
[   59.617014] AICWFDBG(LOGINFO)        usb_busrx_thread the rt_priority of current thread is:1
[   59.617022] AICWFDBG(LOGINFO)        usb_busrx_thread the current pid is:771
[   59.617044] AICWFDBG(LOGINFO)        aicwf_bus_init waiting for rx/tx thread init finish
[   59.617063] AICWFDBG(LOGINFO)        usb_bustx_thread the policy of current thread is:1
[   59.617072] AICWFDBG(LOGINFO)        usb_bustx_thread the rt_priority of current thread is:1
[   59.617078] AICWFDBG(LOGINFO)        usb_bustx_thread the current pid is:772
[   59.731420] AICWFDBG(LOGINFO)        rwnx_platform_init rwnx_cfg80211_init enter
[   59.731453] AICWFDBG(LOGINFO)        rwnx_cfg80211_init sizeof(struct rwnx_hw):11080
[   59.731630] AICWFDBG(LOGINFO)        usb_msg_busrx_thread the policy of current thread is:1
[   59.731644] AICWFDBG(LOGINFO)        usb_msg_busrx_thread the rt_priority of current thread is:1
[root@luckfox root]# [   59.731652] AICWFDBG(LOGINFO)   usb_msg_busrx_thread the current pid is:773
[   59.731712] AICWFDBG(LOGINFO)        aicwf_prealloc_txq_alloc size is diff will to be kzalloc
[   59.731740] AICWFDBG(LOGINFO)        aicwf_prealloc_txq_alloc txq kzalloc successful
[   59.732085] AICWFDBG(LOGINFO)        usb config read 11d
[   59.732566] AICWFDBG(LOGINFO)        chip_id=7, chip_sub_id=1
[   59.732811] [0x40500010]=0
[   59.737072] AICWFDBG(LOGINFO)        testmode=0
[   59.737087] AICWFDBG(LOGINFO)        ### Upload fmacfw_patch_8800dc_u02.bin firmware, @ = 180000
[   59.737094] AICWFDBG(LOGINFO)        ### Load file fmacfw_patch_8800dc_u02.bin
[   59.737104] AICWFDBG(LOGINFO)        rwnx_load_firmware :firmware path = /lib/firmware/aic8800DC/fmacfw_patch_8800dc_u02.bin
[   59.737135] AICWFDBG(LOGERROR)       rwnx_load_firmware: fmacfw_patch_8800dc_u02.bin file failed to open
[   59.737143] AICWFDBG(LOGERROR)       No such file or directory
[   59.737149] AICWFDBG(LOGINFO)        load patch bin fail: -1
[   59.737156] AICWFDBG(LOGERROR)       err_lmac_reqs
[   59.737234] AICWFDBG(LOGINFO)        rwnx_platform_init rwnx_cfg80211_init exit
[   59.737246] AICWFDBG(LOGERROR)       aicwf_rwnx_usb_platform_init err -1
[   59.737254] AICWFDBG(LOGINFO)        aicwf_bus_deinit Enter
[   59.737262] AICWFDBG(LOGINFO)        aicwf_usb_bus_stop
[   59.737327] AICWFDBG(LOGINFO)        aicwf_usb_rx_complete need to wait for disconnect callback
[   59.746732] AICWFDBG(LOGINFO)        aicwf_bus_deinit g_rwnx_plat->enabled is false
[   59.746752] AICWFDBG(LOGINFO)        aicwf_bus_deinit stop to bustx_thread!!
[   59.746770] AICWFDBG(LOGINFO)        usb bustx thread will to stop
[   59.746778] AICWFDBG(LOGINFO)        usb bustx thread stop
[   59.746842] AICWFDBG(LOGINFO)        aicwf_rx_deinit Enter
[   59.746850] AICWFDBG(LOGINFO)        stio rx thread
[   59.746863] AICWFDBG(LOGINFO)        usb busrx thread will to stop
[   59.746868] AICWFDBG(LOGINFO)        usb busrx thread stop
[   59.746905] AICWFDBG(LOGINFO)        usb msg busrx thread will to stop
[   59.746913] AICWFDBG(LOGINFO)        usb msg busrx thread stop
[   59.746980] AICWFDBG(LOGINFO)        aicwf_rx_deinit Exit
[   59.747039] AICWFDBG(LOGINFO)        aicwf_bus_deinit Exit
[   59.747206] usb_err:<aicwf_usb_probe,2228>: failed with errno -1
[   59.747285] aic8800_fdrv: probe of 1-1:1.2 failed with error -1
[   59.747408] usbcore: registered new interface driver aic8800_fdrv

[root@luckfox root]#

[root@luckfox root]# lsmod
Module                  Size  Used by    Tainted: G
aic8800_fdrv          293542  0
aic_load_fw            33008  1 aic8800_fdrv
cfg80211              168737  1 aic8800_fdrv
rve                    23436  0
rockit                225880  0
rknpu                  27019  0
mpp_vcodec            414257  1 rockit
rga3                   90762  1 rockit
phy_rockchip_csi2_dphy     9338  0
phy_rockchip_csi2_dphy_hw    10066  0
video_rkisp           171838  1 rockit
video_rkcif           162117  1 rockit
rk_dvbm                 5941  2 mpp_vcodec,video_rkisp
[root@luckfox root]#

 
巨大八爪鱼

其实fmacfw_patch_8800dc_u02.bin这个文件是有的,只不过不在/lib/firmware里面。

[root@luckfox root]# find / -name fmacfw_patch_8800dc_u02.bin
/oem/usr/ko/aic_fw/aic8800DC/fmacfw_patch_8800dc_u02.bin
[root@luckfox root]#

  2025-4-22 19:49 回復
一派掌門 二十級
7樓 發表于:2025-4-22 19:56

mkdir -p /lib/firmware/aic8800DC
ln -s /oem/usr/ko/aic_fw/aic8800DC/fmacfw_patch_8800dc_u02.bin /lib/firmware/aic8800DC
ln -s /oem/usr/ko/aic_fw/aic8800DC/fmacfw_calib_8800dc_u02.bin /lib/firmware/aic8800DC

 

insmod /oem/usr/ko/cfg80211.ko
insmod /oem/usr/ko/aic_load_fw.ko
insmod /oem/usr/ko/aic8800_fdrv.ko

就可以成功了。

 

可以用ifconfig看到wlan0接口。

[root@luckfox ~]# ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 2C:C3:E6:1F:0C:96
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

[root@luckfox ~]#

 
一派掌門 二十級
8樓 發表于:2025-4-23 09:46

今天发现根本不需要把固件文件复制到/lib/firmware里面,可以直接用/oem/usr/ko/aic_fw里面的bin文件。只要在插入aic_load_fw.ko模块的时候指定aic_fw_path参数就行了。

insmod /oem/usr/ko/cfg80211.ko
insmod /oem/usr/ko/aic_load_fw.ko aic_fw_path=/oem/usr/ko/aic_fw
insmod /oem/usr/ko/aic8800_fdrv.ko

 
一派掌門 二十級
9樓 發表于:2025-4-23 10:43

【sysdrv/drv_ko/wifi/insmod_wifi.sh】

把下面的代码删除掉。

#aic8800
if [ -n "$(cat /proc/device-tree/model | grep "W")" ]; then
 insmod cfg80211.ko
 insmod libarc4.ko
 insmod ctr.ko
 insmod ccm.ko
 insmod libaes.ko
 insmod aes_generic.ko
 insmod aic8800_bsp.ko
 sleep 0.2
 insmod aic8800_fdrv.ko
 sleep 2
 insmod aic8800_btlpm.ko
 sleep 0.1
fi

改成

#aic8800
if [ -f /oem/usr/ko/aic8800_fdrv.ko ]
then
 insmod /oem/usr/ko/cfg80211.ko
 insmod /oem/usr/ko/aic_load_fw.ko aic_fw_path=/oem/usr/ko/aic_fw
 insmod /oem/usr/ko/aic8800_fdrv.ko
fi

 

【project/cfg/BoardConfig_IPC/BoardConfig-SPI_NAND-Buildroot-RV1106_Luckfox_Pico_Pro-IPC.mk】

添加下面的内容。

# enable rockchip wifi
export RK_ENABLE_WIFI=y
export RK_ENABLE_WIFI_CHIP=AIC8800DW_USB

# config wifi ssid and passwd
# this will generate /etc/wpa_supplicant.conf
export LF_WIFI_SSID="路由器名称"
export LF_WIFI_PSK="路由器密码"

 

编译镜像,烧录并重启板子后,就能看到板子的wifi已经自动连上热点了,能获取到IP地址,还能ping通百度。

 

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:92 回複數:10
評論數: ?
作者:巨大八爪鱼
最後回復:巨大八爪鱼
最後回復時間:2025-4-23 10:43
 
©2010-2025 Purasbar Ver2.0
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。