ガジェットの大容量ストレージを通過

ガジェットの大容量ストレージを通過

私はカーネル4.14(コンピュータ1)でYoctoを使用しています。 2つのUSBポートがあります。

ホスト:USBキーの挿入(大容量記憶装置)

OTG:他のコンピュータに接続する(コンピュータ2)

             ################    ###############
|USB_KEY|----## COMPUTER 1 ##----## COMPUTER 2##---|screen, keyboard, ...
             ################    ###############
           ^                   ^
      USB link 1            USB link 2

コンピュータ2からコンピュータ1に接続されているUSBフラッシュドライブにアクセスしようとしています。

USB接続2としてg_etherガジェットを使用しており、大容量ストレージガジェットなどの他のガジェットモジュールを使用する必要があります。

コンピュータ1は大容量記憶装置に接続できますか?

ありがとう

答え1

解決策は次のとおりです。

g_multi

編集する:

g_multiはカーネルで「Multi-Function Composite Gadget」と呼ばれるUSBガジェットです。このモジュールには2つのオプションがあります。

< > Multifunction Composite Gadget
[ ]    RNDIS + CDC Serial + Storage configuration
[ ]    CDC Ethernet + CDC Serial + Storage configuration

私の場合は、最初のオプションを使用します。しかし、CDC Serialを使用する理由はありません。

有効にするには:

modprobe g_multi file=/dev/sda # sda is your USB mass storage device

このコマンドは、ホストデバイスにUSB0ネットワークインターフェイスと大容量ストレージデバイスを作成します。また、CDC Serialを生成します。

configfsで設定されたUSBガジェットを使用します。ドキュメントを参照してください。 ガジェット configfs ドキュメント

この「新しい」USBデバイスシステムを使用すると、必要なすべてのデバイスを選択できます。

関連情報