私は、ARMv7チップの一部のカーネルモード専用機能(具体的にはキャッシュコントロール)へのユーザスペースアクセスを提供するために、小さなカーネルモジュールを作っています。私はを読んでいます。Corbet、Rubini、HartmanのLinuxデバイスドライバです。その中には、完全なドライバ+デバイス+バスの作り方が記述されています。私はバスドライバーをまったく作りたくありません。実際、私が作っている 'ドライバ'は、実際にはデバイスの定義とまったくマッチする必要はありません。プラットフォームのCPUに暗黙的にマッチします。誰でも私に説明することができます:sysfsによるLinuxドライバへのアクセス
- ここでsysfsは私の属性にする必要がありますか?それは私のモジュールエントリ
/sysfs/modules/mymodule
の下にあるべきですか?/sys/devices/platform
も有望であると思われますので、/sys/devices/system/cpu
もそうです。 kobject
/属性を置くべき既存の場所がある場合は、どうすればそれに接続できますか?必要なのはどうすれば入手できますかkset
?私が見たすべての例はkset
を作成し、kobject
からリンクしています - 既存のkset
という名前のAPIを見たことがありませんか?
申し訳ありませんが、本当にわかりやすく簡単に見つかった例が何らかの理由で見つからない場合は、申し訳ありません。誰もこれにどのような光を当てることができますか?
私はcoretemp.cドライバを見ていきます。ありがとう! –
更新 - coretempモジュールは完璧なテンプレートでした。私はいくつかのsysfs属性がきれいに働いています。再度、感謝します。 –