0

私はLinuxカーネル開発にはかなり新しいです。 私はPhytech.IのAM3354プロセッサーwegaキットを持っています。私はこのボードでカーネルをサポートしています。 ボードにはLCD接続があります。私のシステムではLCDは必要ありません。むしろ、私はより多くのGPIOが必要です。今私の質問は、これらのピンをGPIOとして使用することです。この目的のために、私は変更を加える必要があり、どのような変更が必要なのですか?GPIOとしてLCDピンを使用するためのカーネルの変更点

+1

プロセッサーや既存のコードの参考資料を読む必要があります。まず、これらのピンでGPIO機能がサポートされているかどうかを調べることから始めます。そうであれば、ピンマックスやその他のメカニズムなど、選択の仕方を決定します。次に、デバイス固有のルーチン内に明示的にコード化されているかどうか、デバイスツリー内にあるかどうか、および/または実行時に設定ユーティリティを使用して変更可能かどうかを判断します。 –

+0

@ChrisStratton:ピンがGPIOとしてサポートされていることを確認しました。今私は、カーネルコードのどこに変更を加えてGPIOとして機能させる必要があるのか​​知りません。カーネルは、どのファイルからピンの機能を判断し、そこからヒントを得ることができるかを教えてくれますか? –

+0

前にも述べたように、カーネルコード、デバイスツリー(使用されている場合)、またはuserspaceユーティリティ。マニュアルを読んだり、ボード固有のファイルと構成項目を探してください。 –

答えて

0

dtsファイルを再構成する必要があります。

実際に興味のあるものは、ピンマックス(pinctux)ロジックです。 linuxの観点から、ピンMODEに関する情報はdts(またはdtsi)ファイルに格納されています。さんはexampleを与えてみましょう:

BONE_P8_19 (PIN_INPUT | MUX_MODE7) /* gpmc_ad8.gpio0_22 */ 

これはモードGPIO(am335x上MUX_MODE7は常にGPIOである)と、入力としてgpio0.22またはgpmc_ad8ピンを設定します。

linkまた、上記の参考文献には、am335x beaglebone blackのdtオーバーレイの量が多いgitリポジトリが用意されています。もしあなたが私があなたがそれらを確認することができたと説明したものをキャッチしなかったなら、それはあなたがその論理を理解する方法である。

+0

私はボードのために正しいdtsファイルを見つけてそのファイルを変更する必要がありますか? –

+0

はい、変更し、カーネルを再コンパイルします。 –

関連する問題