LinuxカーネルのLEDドライバーフレームワーク

1. LEDデバイスプロパティファイルの読み取りと書き込み-----> LEDデバイスプロパティのメソッドの表示と保存--------> LEDデバイスドライバー----- >> LEDハードウェアデバイスの操作。
図2に示すように、構造のled_classdev定義:
構造体led_classdev
{
CONST文字*名; //デバイス名
INT輝度; //輝度
INT max_brightness; //最大輝度
フラグにINT;
の#define LED_SUSPENDED(<< 1 0)
の#define LED_CORE_SUSPENDRESUME(1 <。 <16)
void(* bright_set)(struct led_classdev * led_cdev、enum led_brightness Bright); // LEDの明るさを設定します
enum led_brightness(* bright_get)(struct led_classdev * led_cdev); // LEDの明るさを取得し
ます...
}
3. LEDドライバーを書き込みます実際、led_classdev構造体のメンバーを入力し、モジュール初期化関数でint led_classdev_register(struct device * parent、struct led_classdev * led_cdev)関数を呼び出して、LEDデバイスをカーネルに登録します。

元の記事を2件公開しました 賞賛されました4 訪問数3213

おすすめ

転載: blog.csdn.net/qq_27630885/article/details/105599457