メインラインカーネルを使用してBanana PI M2MでWiFiを操作しようとしています。
バナナパイm2mのデバイスツリー定義は非常に不完全です。sun8i-r16-bananapi-m2m.dts
SPIが動作するように管理しましたが、今はWiFiドライバを動作させるのに苦労しています。
Banana Pie M2MはAP6212チップを使用し、一見するとBRCM4329チップを使用しています。
WL_PMU_EN
AP6212はSDIO1、PL6接続、PL7接続を介してAllwinner A33に接続されていますWL-WAKE-AP
。 (https://drive.google.com/file/d/0B4PAo2nW2KfndHY1VF9UWXl2Rm8/view?usp=sharing)
次のようにdtsを修正しました。
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pg_pins>;
vmmc-supply = <®_aldo1>;
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
non-removable;
status = "okay";
brcmf: wifi@1 {
reg = <1>;
compatible = "brcm,bcm4329-fmac";
interrupt-parent = <&r_pio>;
interrupts = <0 7 IRQ_TYPE_LEVEL_LOW>; /* PL7 */
interrupt-names = "host-wake";
};
};
カーネル80211でbcrm-fmacドライバとbrcm-fmac-sdioを有効にしました。 buildrootにwireless-regdbパッケージを追加しました。また、/lib/firmware/brcm
バナナパイの公式イメージ(カーネル3.4)から取得したファームウェアと設定をコピーしました。
この時点でmodprobeを使用してドライバをロードできますが、タイムアウトの問題が発生し、ここでどこを見るべきかわかりません...
# modprobe brcmfmac
[ 67.440758] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 67.513578] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 67.595615] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
# [ 68.745996] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
[ 69.767856] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
私の推測は(実際には単なる推測にすぎません)、Wi-Fiチップを正しく目覚めさせるためのいくつかのステップがありません。しかし、ボードで測定してみると、さまざまなレールが正しいレベルにあるようです。
バナナパイm2mで他のドライバと連携する最新のカーネルを入手する機会がある人はいますか?
答えやヒントを送ってくれてありがとう!
答え1
私は同じマザーボードを持っていて、メインラインLinuxを使いたいです。
Banana pi m2m bspの3.4カーネルログで次の行が見つかりました。
[ 14.519605] DHD: dongle ram size is set to 524288(orig 524288) at 0x0
[ 14.535387] dhd_conf_read_others: ccode = CN
[ 14.535623] dhd_conf_read_others: regrev = 0
[ 14.535763] Final fw_path=/lib/firmware/ap6212/fw_bcm43438a1.bin
[ 14.535959] Final nv_path=/lib/firmware/ap6212/nvram.txt
/lib/firmware/ap6212/fw_bcm43438a1.bin
したがって、コピーして/lib/firmware/brcm/brcmfmac43430-sdio.bin
コピーする/lib/firmware/ap6212/nvram.txt
と/lib/firmware/brcm/brcmfmac43430-sdio.sinovoip,bananapi-m2m.txt
トリックが実行されます。
これでWi-Fiに接続できるようになりました。