FH8856移植BL-8812CU2WiFi模组

FH8856移植BL-8812CU2WiFi模组

8856平台作FPV,之前用到的是UB25,现在需替换成BL-8812CU2。看着像是pin对pin替换,但是PA供电的5v没定义,不知是不是3.3v的PA,需要后续验证。目前先打通再说吧。

1.拿到驱动版本

tar解压。

修改Makefile,按照BL一贯作风,增加:

平台信息:CONFIG_PLATFORM_FH8856 =

指定编译链:CROSS_COMPILE =

内核路径:KSRC =

配置如下:

 1 CONFIG_PLATFORM_FH8856 = y
 2 ifeq ($(CONFIG_PLATFORM_FH8856), y)
 3 EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE
 4 EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211
 5 #EXTRA_CFLAGS += -DRTW_USE_CFG80211_STA_EVENT
 6 EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
 7 #EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR
 8 #EXTRA_CFLAGS += -DCONFIG_PLATFORM_MSTAR_HIGH
 9 CROSS_COMPILE := arm-fullhan-linux-uclibcgnueabi-
10 KSRC := /source/FH8856/board_support/kernel_amped/linux-3.0.8
11 ARCH := arm
12 endif

其他EXTRA_CFLAGS选项配置,看到有个HISi平台的配置,直接拿过来试试。

保存退出 & make clean & make

编译通过,拿到88x2cu.ko。还蛮顺利的。

编出来3.1MB,有点大,strip一下。

Emm------2.9M还是大。

2.加载到平台:

# insmod 88x2cu.ko

[  239.583946] 88x2cu: module has no symbols (stripped?)

insmod: can't insert '88x2cu.ko': invalid module format

就知道不能strip,很容易出现has no symbols,再来一次,不strip直接3M的试下:

# insmod 88x2cu.ko //加载成功了

# ifconfig -a  //发现出现了wlan0设备。

# ifconfig wlan0 172.16.11.1 netmask 255.255.255.0 //配置起来了,没出错

继续配置成AP模式:

#hostapd -B hostapd.conf

这一步出错了:

nl80211: 'nl80211' generic netlink not found

Failed to initialize driver 'nl80211'

wlan0: interface state UNINITIALIZED->DISABLED

wlan0: AP-DISABLED

什么问题?

a. 换个hostapd试试,2.0的换成2.6版本的hostapd,同样报错。

b. Hostapd.conf 去掉80211的选项,也报错。

c. 回到驱动编译的步骤,去掉一些编译选项,再来一遍,还是报错。

d.看来是内核的cfg80211配置选项的问题,menuconfig 去掉内核包含的cfg80211,在外面编译cfg80211。烧录加载,还是出错;

得嘞GG---,下周发邮件,求助原厂吧!

 

猜你喜欢

转载自www.cnblogs.com/TiddlerYu/p/12632573.html
FH