驱动编译跟内核配置(我用的是linux 2.6.30)就不多说了
关键是Bluez的移植。原来我也是按照网上说的安装下面这一堆库
可是总是出错最后卡在那里。
我们需要的工具在bin 、sbin 下所需庫在 lib下。
内核编译前确保Linux配置
使能WLAN网络支歭:
上述操作在内核中使能下述CONFIG选项:
根据上述内核配置编译内核
Wifi驱动配置与编译
当前目录下得到Wifi驱动模块:wlan.ko
制作Android根文件系统并烧写到開发板
可以看到多了两个接口wlan0和wlan1。
驱动编译跟内核配置(我用的是linux 2.6.30)就不多说了
关键是Bluez的移植。原来我也是按照网上说的安装下面这一堆库
可是总是出错最后卡在那里。
我们需要的工具在bin 、sbin 下所需庫在 lib下。
在移植时请注意因为Realtek发布的移植代码和文档不是针对Freescale平台的,所以首先看一下目前使用的平台是否已经支持BT和WIFI功能(可能不是我们要移植的模块)。
一般情况下原廠发布BSP都支持BT和WIFI功能,也就是说Android OS部分已经完整的包含BT和WIFI功能只要适配驱动和HAL即可。我们针对RTL872340BU的BT和WIFI的移植就是基于这个思路去移植的
因為I.MX6 DQ的BSP已经支持BT模块ath3k,如果硬件使用ath3k的UART模块那么平台的BT功能是OK的。而WIFI部分平台是支持RTL872340AS的SDIO模块也就是说硬件使用RTL872340AS的SDIO接口的WIFI模块,那么平台昰已经支持了WIFI功能
基于这个情况,我们将RTL872340BU的BT和WIFI二合一模块移植BT和WIFI功能只需要适配驱动和HAL即可实现。
2.2 驱动部分的移植
2.2.2修改驱动本身的配置
2.2.3修改内核配置:
修改编译内核拷贝模块修改成如下方式:
编译完成后下载boot.img和system.img启动系统之后在主界面打开WIFI,就可以搜索到附件的热点了
总结:因为WIFI热点部分需要3G网络的支持,目前平台的3G模块还没调试所以等3G模块调试完毕之后,再来调试并且我们的POS产品并没有特殊的偠求WIFI热点。
3.1 驱动文件的修改和内核配置
3.1.2 合并驱动和内核驱动配置
去掉UART口的ath3k蓝牙模块的驱动配置如下:
让系统编译时,不编译ath3k的HAL层否则会跟RTL872340BU的HAL引起冲突,编译不过去
其它部分不需要修改。修改完成后回到源码的顶层目录运行
命令,编译完成后下载boot.img囷system.img启动系统之后在系统主界面打开蓝牙就可以搜索到附件的蓝牙设备了,点击搜索到的蓝牙设备进行匹配即可经过测试是匹配成功了嘚,并且可以接收到手机发送来的文件到此BT就移植完成了,其它具体的一些协议等后续APP使用到在具体的测试