[北京Xunwei] i.MX6ULLターミネーターLinuxWIFIドライバー実験wifiドライバーの追加とコンパイル

USBインターフェースを備えたRTL8723wifiモジュールは、i.MX6ULターミネーター開発ボードで使用されます。回路図を図1に示します。
ここに画像の説明を挿入

図1

RTL8723モジュールのインターフェースは非常にシンプルで、DP1とDM1のみがusbHUBチップに接続されて通信回路を完成させていることがわかります。RTL8723はrealtek社のwifiチップです。wifiドライバーのソースコードが提供されているので、自分で書く必要はありません。提供されたwifiドライバーのソースコードをLinuxカーネルに追加してコンパイルするだけです。

1.1Linuxカーネルにwifiドライバーを追加する

図1.1.1に示すように、最初にWi-Fiドライバーのソースコードを取得し、Linuxカーネルdrivers / net / wirelessディレクトリに配置します。
ここに画像の説明を挿入

図1.1.1

rtl8723BUディレクトリの内容を図1.1.2に示します。
ここに画像の説明を挿入

図1.1.2

Kconfigファイルはrtl8723ドライバーの構成ファイルであるため、Linuxカーネルのグラフィカル構成インターフェイスを介してWIFIドライバーをコンパイルするかどうかを選択できます。Kconfigファイルの内容は次のとおりです。

config RTL8723BU
        tristate "Realtek 8723B USB WiFi"
        depends on USB
        ---help---
          Help message of RTL8723BU

rtl8723 Wi-Fiドライバーを追加した後、以前のKconfigとMakefileを変更する必要があります。
drivers / net / wireless / Kconfigを変更し、次のコンテンツを追加します。
ソース「drivers / net / wireless / rtl8723BU / Kconfig」が
図1.1.3に示すように追加されます。
ここに画像の説明を挿入

図1.1.3

追加が完了すると、rtl8723の構成オプションがLinuxカーネルのドライバー構成インターフェースに表示されます。
drivers / net /
softwareless / Makefileを変更し、次のコンテンツを追加します。obj-$(CONFIG_RTL8723BU)+ = rtl8723BU /
変更後、図1.1.4に示すように:
ここに画像の説明を挿入

図1.1.4

1.2Linuxカーネルを構成する

rtl8723 Wi-Fiドライバーを追加し、構成ファイルを変更した後、Linuxカーネルで構成する必要があります。
1.USBデバイスをサポートするための
Linuxカーネル構成パス次のように構成します。

Device Drivers  --->
[*] USB support  --->
<*>     EHCI HCD (USB 2.0) support
<*>   ChipIdea Highspeed Dual Role Controller
[*]     ChipIdea device controller
[*]     ChipIdea host controller

以下の図1.2.1に示すように、構成が完了します。
ここに画像の説明を挿入

図1.2.1

2.
次のようにwifiデバイスをサポートするためのLinuxカーネル構成パス構成します。

Device Drivers  --->
[*] Network device support  --->
[*]   Wireless LAN  --->
<*>   IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)
[*]     Support downloading firmware images with Host AP driver
[*]       Support for non-volatile firmware download

図1.2.2に示すように、構成が完了します。
ここに画像の説明を挿入

図1.2.2

3.構成サポートIEEE802.11Linux
カーネル構成パスは次のとおりです。

[*] Networking support  --->
-*-   Wireless  --->
[*]     cfg80211 wireless extensions compatibility
<*>   Generic IEEE 802.11 Networking Stack (mac80211)

図1.2.3に示すように、構成が完了します。
ここに画像の説明を挿入

図1.2.3

4.
次のようにrtl8723wifiドライバーのLinuxカーネル構成パスを構成します。

Device Drivers  --->
[*] Network device support  --->
[*]   Wireless LAN  --->
<*>   Realtek 8723B USB WiFi

構成結果を図1.2.4に示します。
ここに画像の説明を挿入

図1.2.4

rtl8723wifiモジュールのドライバーをカーネルに直接コンパイルします。

上記のLinuxカーネル構成が完了したら、カーネルを再コンパイルしてzImageを生成し、新しいzImageを使用して開発ボードを起動します。

1.3 Rtl8723wifiモジュールドライバーテスト

新しいzImageイメージを使用して開発ボードを起動すると、システムの起動時に図1.3.1に示す情報が出力されます。
ここに画像の説明を挿入

図1.3.1

上の図は、Linuxシステムの起動プロセス中にrtl8723wifiモジュールのドライバーが使用されることを示しています。ドライバが起動したら、「ifconfig -a」コマンドを使用して、wlanネットワークカードが存在するかどうかを確認します。結果を図1.3.2に示します。
ここに画像の説明を挿入

図1.3.2

rtl8723wifiモジュールに対応するネットワークカードデバイスであるwlan0デバイスがあることがわかります。これは、ドライバーテストが正常であることを意味しますが、インターネットに接続する場合は、サードパーティのコンポーネントが必要です。ネットワークテストにサードパーティコンポーネントを使用する方法を見てみましょう。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/BeiJingXunWei/article/details/112858002