2017-03-07 5 views
0

Sysインターフェイスを介してArtik 710開発ボード上の2つのLED(LED400とLED401)を制御したいとします。これを達成するために、LinuxカーネルのArtik710のdtsiファイルを変更しました。しかし、イメージをビルドしてボードをブートした後、LEDは/ sys/classディレクトリには表示されません。 dtsiファイルのコードは次のとおりですSamsung Artik 710開発モジュールでのLEDサポートの追加

gpio-leds { 
      compatible = "gpio-leds"; 

      Blue { 
        label = "Blue"; 
        gpios = <&gpio_a 28 0>; 
        linux,default-trigger = "heartbeat"; 
        linux,default-state = "on"; 
      }; 

      Red { 
        label = "Red"; 
        gpios = <&gpio_b 6 0>; 
        linux,default-trigger = "heartbeat"; 
        linux,default-state = "on"; 
      }; 

    }; 

誰かが問題をここで指摘できますか?

+0

gpio-ledsをどこかで有効にしましたか? (つまり、 'status =" okay ";'?)の行 – Anders

+0

私は恐れていません。私は最近、設定でgpio-ledドライバを有効にする必要があることを知りました。しかし、Linuxカーネルには非常に多くの設定ファイルが存在しており、どちらを編集するのか混乱しています。 – shery6405

+0

さて、あなたはカーネル設定でドライバを有効にする必要があります。次に、 'compatible =" gpio-leds ";'行の下に 'status =" okay ";'を追加することによって、dts-node 'gpio-leds'を有効にする必要があります。 – Anders

答えて

0

問題はdtsiファイルに関連していませんでした。 gpio主導のドライバが私が使っていたカーネル(Artik 710のLinuxカーネル)で設定されていなかったので、私はこの問題に直面していました。カーネル設定でLEDを有効にすると、LEDが動作し始め、/ sys/classディレクトリに現れました。

1

まあ、2例のいずれかがあるかもしれません:

  1. あなたはDTのノードを有効にするのを忘れ

  2. 、これはノードでstatus = "okay";を追加することによって行われるにカーネルモジュールを有効にするのを忘れ例えば、compatible = "gpio-leds";以下である。

関連する問題