2

8250.c (低レベルの UART ドライバー) モジュールを無効化または削除し、ユーザー空間からの読み取りおよび書き込み要求を実行するように、基本的な機能で同じ機能を実装したいと考えています。

ここに私の質問があります:

  1. 8250.0 モジュールを削除/無効にする方法
  2. 可能であれば、基本的な機能を備えた 8250 ドライバーを実装するための参照リンク/例を教えてください。

私は Linux デバイス ドライバーの初心者です。間違っていたらすみません。私はたくさんグーグルで検索しましたが、適切な解決策が得られませんでした

4

1 に答える 1

2

回答 1) 現在のシステムに 8250 ドライバーがモジュールとして組み込まれている場合は、それをアンロードします。

$ lsmod | grep 8250
# rmmod 8250-driver-name

(ドライバーの正確な名前は確認していません)

現在のシステムのカーネル内に 8250 ドライバーが組み込まれている場合 (または新しいシステム用に Linux カーネルを構築している場合)、カーネルをコンパイルする必要があります。現在の構成を編集してドライバーを削除する必要があります。以下を使用できます。

$ make xconfig

また

$ make menuconfig

グラフィック インターフェイス用 (Linux カーネル ソース内でこれらのコマンドを実行します)。ファイルを手動で編集し.configてドライバーを削除することもできます

 CONFIG_SERIAL_8250=n

または、次のように設定してモジュールとしてコンパイルします。

 CONFIG_SERIAL_8250=m

(このドライバーにはお勧めしません。xconfig または menuconfig でドキュメントを読んでください)

作業用の構成ファイルが既にある場合は、それをカーネル ソースに次のようにコピーできます。.config

cp /path/to/you/config/file /path/to/your/kernel/source/.config

次に、フィールド CONFIG_SERIAL_8250 を上記のように編集します。

回答 2) リンクできる最良の例は8250.c ドライバーです。しかし、Linux ドライバーの開発方法を学びたい場合は、Linux Device Driverを読むことができます。

于 2013-04-12T20:18:40.527 に答える