制作A20蜂鸟开发板干净系统[初涉AP6210驱动]

关于AP6210这个芯片,是非常神奇的,Linux Sunxi的WIKI说,这个驱动到Linux 3.4之后就不再支持了,但是RockChip的WIKI说的是这样的:

The AP6210 will be supported by the brcmfmac driver of the mainline kernel tree. It apparently is a BCM43362 / BCM20710 combo, the former is the WIFI chip, the latter Bluetooth. See the mailing list entry for more details.

大致意思说的是AP6210这个芯片,其实是胶水做的,由BCM43362和BCM20710组成,也是哦,以前加载AP6210驱动时候,都不能用BCM驱动,呵呵,不过这个驱动至少应该不用自己改太多了,就加dts的样子么.他们的驱动文件应该是bcm20710a1.hcd和brcmfmac43362-sdio.bin.

主要是内核先启动CFG80211,然后,再启动BRCMFMAC驱动,最好打上Debug Function,这样调试好一些,最后编译uImage,如果以模块形式来玩,还需要编译模块.现在大致看看这个WIFI模块的连接方式:

AP6210_SCH

 

大致分析以下,PI12连接CLK-32K,PH10连接WIFI-HOST-WAKE,PH9连接WIFI-SHDN,PI21连接BT-HOST-WAKE,PI20连接BT-WAKE,PB5连接BT-REST,CARD3[MMC3]连接WIFI模块SDIO引脚,UART2连接蓝牙模块串口脚,BT-PCM-OUT连接I2S_DO0/AC97_DO[PB8]引脚,我猜这就是接音频I2S的,因为对这个蓝牙模块不是特别了解,也只能靠这样猜测一下.

直接编译uImage替换发生如下事情:

root@Tater-ARM:~# dmesg | grep brcmfmac
[    2.957355] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
root@Tater-ARM:~#

难道WLAN默认好用了,不过/sys/class/net/下还没设备,还是等下回分解吧.

找到一些资料,就分享一下:

Cubietruck 蓝牙配置[http://linux-sunxi.org/Cubietruck/Bluetooth]

BRCM 固件文件存档[http://ftp2.halpanet.org/source/_dev/linux-firmware.git/brcm/]

AP6210 简短介绍[http://linux-rockchip.info/mw/index.php?title=AP6210]

《制作A20蜂鸟开发板干净系统[初涉AP6210驱动]》有6个想法

  1. 为什么我加了这个驱动后 log是这样的
    [ 1.491146] brcmfmac: F1 signature read @0x18000000=0x1591a962
    [ 1.494170] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43362-sdio.bin failed with error -2
    [ 2.534618] brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
    [ 3.543327] brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
    我的/lib/firmware下也放了这个固件 请问这个是怎么回事呢?

发表评论

电子邮件地址不会被公开。 必填项已用*标注