web-dev-qa-db-ja.com

Buildroot-i2cカーネルモジュールがありません

Buildrootを使用して、最小限のオペレーティングシステムを構築しました。 menuconfigユーティリティを使用した構成手順で、I2Cツールをインストールするように指定しました。オプションはでした

Target Package -> Hardware handling -> i2c-tools

しかし、対応するモジュールをロードすると、次のエラーが発生します。

$Sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep

さらに、modules.depファイルのリストは空です。

$ cat /lib/modules/$(uname -r)/modules.dep
$

私はおそらく重要な何かを見逃しました。

カーネルモジュールをBuildrootインストールフォルダーからターゲットシステムに手動でコピーする必要がありますか? i2cツールを機能させる方法は?

1
UserK

私が理解していることから、Target Package -> Hardware handling -> i2c-toolsはユーザースペースi2cユーティリティを指します。

見逃しているのはカーネルスペースi2cモジュールです。それらをmake linux-menuconfigに追加する必要があります。

1
Mali

Maliが提案したように、SPIおよびI2C伝送プロトコルのカーネルサポートを有効にする必要があります。カーネルを個別にコンパイルしましたが、make linux-menuconfigを実行しているBuildrootフォルダーから実行できます。

カーネル3.8.13の構成中に、以下を追加します。

linux-3.8.13$ make menuconfig    
  • Device Driversメニューに移動し、I2Cサポートをチェックして「Y」を押します。

  • I2Cメニューに入り、I2Cデバイスインターフェイスに移動し、 '[〜#〜] m [〜#〜 ] 'モジュールサポート用。

  • I2Cハードウェアバスサポートメニューに入り、「M」BCM2708 BSCを押します。

  • SPIサポートを確認し、「Y」を押してサブメニューに入ります

  • BCM2708 SPIコントローラードライバーの近くで「M」を押します

それをクロスコンパイルし、完了したら、モジュールをロードできます

modprobe i2c-dev
modprobe i2c-bcm2708
modprobe spi-bcm2708
1
UserK