2011-07-19 2 views
2

プラットフォームデバイスのI/Oメモリレジスタに読み書きしようとしていますが、システムが読み取り/書き込みが行われる。Linuxモジュール - I/Oメモリレジスタ読み取り/書き込みシステムがハングアップする

私は、次の項目をチェックすることができました:

  • request_mem_regionが

  • 正しい物理addrには

  • 有効な論理アドレスが返される(ioremapはOKです)要求されたOKを返します。
    レジスタを読み取るためにこれを使用しました。 ioread32(logical_addr)

私はLinuxカーネルの新機能ですが、I/Oレジスタが無効になっていますか? 私は/ proc/iomemをチェックし、アクセスしたいメモリ領域がリストに表示されます。

ここから行く場所は?

+0

このiomap/ioreadを実行しようとしているハードウェアはありますか?たぶん、ハードウェアに事前初期化が必要なのでしょうか? – Longfield

+0

ARMv6 System-on-Chipです。私はプラットフォームデバイス用のロード可能なモジュールを作成しようとしています。 (メディアコーデックハードウェアアシストコンポーネント)。私はすでに初期化をチェックして、もう一度チェックします。ありがとう! LinuxカーネルでI/Oメモリレジスタを無効/有効にする方法はありますか? – JonathanC

答えて

1

答えが見つかりました。ロングフィールドに感謝します。 ドライバで使用されている名前を確認するのを忘れました。登録されているデバイス名と一致しませんでした。彼らは一致する必要があります。

関連する問題