私は機械を作っています。ヨクトプロジェクト。しなければならないTPMモジュール一部の目的には使用できませんが、有効にすることはできません。
私は次のことを試しました:
走って
bitbake -c menuconfig virtual/kernel
行きました。デバイスドライバ > 文字デバイス > TPMハードウェアサポートそして、すべてのTPM関連オプションが表示されます。
bitbake -c savedefconfig virtual/kernel
その後、設定をdeconfig
カーネルビルドディレクトリにファイルとして保存を実行しました。ファイルを確認し、TPMオプションを有効にしました。CONFIG_TCG_TPM=y
CONFIG_HW_RANDOM_TPM=y
コピーして次のバージョンに追加しました。
再度実行し
bitbake core-image-minimal
てrunを介して起動しましたrunqemu
。確認しました/開発/tpm*まだ存在しません。
答え1
カーネルでTPMサポートを有効にすることは設定の一部にすぎず、実際のTPMまたはTPMエミュレータへのアクセスも提供する必要があります。
他の場所で使用されていない実際のTPMがある場合は、次のようにQEMUに渡すことができます。
runqemu qemuparams="-tpmdev passthrough,id=tpm0 -device tpm-tis,tpmdev=tpm0"
使いたいならTPMシミュレータ(より良いエミュレータがあるかもしれません。これが私が見つけた最初のエミュレータです)
runqemu qemuparams="-chardev socket,id=chrtpm,path=/tmp/swtpm-sock -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis,tpmdev=tpm0"
QEMUマニュアルこのトピックに関する追加情報を提供します。