Tina-t113 导入XR829模块 can't download firmware.
-
SDK:tina:sdk来源
主控:T113-S3按照tina 文档打开XR829模块编译之后。在导入的时候报错。
xradio_load_firmware: can't download firmware.
root@TinaLinux:/lib/modules/5.4.61# insmod xr829.ko [ 215.944636] ======== XRADIO WIFI OPEN ======== [ 215.950153] [XRADIO] Driver Label:XR_V02.16.85_P2P_HT40_01.31 [ 215.956901] [XRADIO] Allocated hw_priv @ (ptrval) [ 215.962194] [ADDR_MGT] get_addr_by_name: t->addr: [ 215.968136] sunxi-rfkill soc@3000000:rfkill@0: bus_index: 1 [ 215.984383] sunxi-rfkill soc@3000000:rfkill@0: wlan power on success [ 216.191530] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B [ 216.202619] [XRADIO] Detect SDIO card 1 [ 216.217044] sunxi-mmc 4021000.sdmmc: no vqmmc,Check if there is regulator [ 216.237173] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 216.261992] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 216.276520] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 216.298695] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B [ 216.310231] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 1 timing SD-HS(SDR25) dt B [ 216.322011] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 50000000Hz bm PP pm ON vdd 21 width 4 timing SD-HS(SDR25) dt B [ 216.334407] mmc1: new high speed SDIO card at address 0001 [ 216.340936] [SBUS] XRadio Device:sdio clk=50000000 [ 216.346750] [XRADIO] XRADIO_HW_REV 1.0 detected. [ 216.408411] [XRADIO] xradio_update_dpllctrl: DPLL_CTRL Sync=0x00c00000. [ 216.424968] random: crng init done [ 216.454054] [XRADIO] Bootloader complete [ 221.443915] [XRADIO_ERR] xradio_firmware: Timeout waiting for FIFO. [ 221.450997] [XRADIO_ERR] xradio_load_firmware: can't download firmware. [ 221.458404] [XRADIO_ERR] xradio_load_firmware failed(-110). [ 221.464781] sunxi-rfkill soc@3000000:rfkill@0: wlan power off success [ 221.572033] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 7, RTO !! [ 221.578763] [XRADIO] Remove SDIO card 1 [ 221.578774] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 7, RTO !! [ 221.589784] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 7, RTO !! [ 221.596510] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 7, RTO !! [ 221.603422] mmc1: card 0001 removed [ 221.607409] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 0Hz bm PP pm OFF vdd 0 width 1 timing LEGACY(SDR12) dt B [ 221.619841] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B [ 221.630976] sunxi-mmc 4021000.sdmmc: no vqmmc,Check if there is regulator [ 221.648184] xradio_core_init failed (-110)! [ 221.651088] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 221.677828] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 52, RTO !! [ 221.685467] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 52, RTO !! [ 221.692300] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 221.706848] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 221.720563] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 5, RTO !! [ 221.728149] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 5, RTO !! [ 221.735677] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 5, RTO !! [ 221.743222] sunxi-mmc 4021000.sdmmc: smc 1 p1 err, cmd 5, RTO !! [ 221.749973] sunxi-mmc 4021000.sdmmc: sdc set ios:clk 0Hz bm PP pm OFF vdd 0 width 1 timing LEGACY(SDR12) dt B failed to insert xr829.ko
-
@captain 我也遇到了同样的问题,不知道你解决了吗?
-
24M/40M晶振问题上看看
-
@yuzukitsuru
1.目前开发板上面是使用的24M晶振。
2.在tina 里面配置(make menuconfig)的时候,取消XR829_40M固件的选项。查看make 的日志,也是复制的不带40M标号的固件到文件系统里面。
3.使用之前下载的longan-sdk 验证过硬件是没有问题的,能够联网。
4.目前发现问题在于get 每次增加到25553(试了几次这个数是固定的)之后就不会增加了,而put 还会继续增加导致后面就会报错。static int xradio_firmware(struct xradio_common *hw_priv) { for (i = 0; i < 100; i++) { APB_READ(DOWNLOAD_GET_REG, get); if ((put - get) <= (DOWNLOAD_FIFO_SIZE - DOWNLOAD_BLOCK_SIZE)) break; mdelay(i); } xradio_dbg(XRADIO_DBG_WARN, "put:%d get :%d %d: \n", put,get,put -get); if ((put - get) > (DOWNLOAD_FIFO_SIZE - DOWNLOAD_BLOCK_SIZE)) { xradio_dbg(XRADIO_DBG_ERROR, "%s: Timeout waiting for FIFO.\n", __func__); ret = -ETIMEDOUT; goto error; } }
-
@captain 我已经解决这个问题了,在menuconfig里不止要把kernel module/wireless driver里的换成xr829,还需要进到firmware里把xr829 with 40m sdd这个选项关掉
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号