qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v10 3/3] tpm: Add support for TPM device over I2C bus


From: Cédric Le Goater
Subject: Re: [PATCH v10 3/3] tpm: Add support for TPM device over I2C bus
Date: Tue, 28 Mar 2023 08:31:01 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0

On 3/27/23 20:33, Ninad Palsule wrote:
Qemu already supports devices attached to ISA and sysbus. This drop adds
support for the I2C bus attached TPM devices. I2C model only supports
TPM2 protocol.

This commit includes changes for the common code.
- Added I2C emulation model. Logic was added in the model to temporarily
   cache the data as I2C interface works per byte basis.
- New tpm type "tpm-tis-i2c" added for I2C support. The user has to
   provide this string on command line.

Testing:
   TPM I2C device module is tested using SWTPM (software based TPM
   package). Qemu uses the rainier machine and is connected to swtpm over
   the socket interface.

   The command to start swtpm is as follows:
   $ swtpm socket --tpmstate dir=/tmp/mytpm1    \
                  --ctrl type=unixio,path=/tmp/mytpm1/swtpm-sock  \
                  --tpm2 --log level=100

   The command to start qemu is as follows:
   $ qemu-system-arm -M rainier-bmc -nographic \
             -kernel ${IMAGEPATH}/fitImage-linux.bin \
             -dtb ${IMAGEPATH}/aspeed-bmc-ibm-rainier.dtb \
             -initrd ${IMAGEPATH}/obmc-phosphor-initramfs.rootfs.cpio.xz \
             -drive 
file=${IMAGEPATH}/obmc-phosphor-image.rootfs.wic.qcow2,if=sd,index=2 \
             -net nic -net 
user,hostfwd=:127.0.0.1:2222-:22,hostfwd=:127.0.0.1:2443-:443 \
             -chardev socket,id=chrtpm,path=/tmp/mytpm1/swtpm-sock \
             -tpmdev emulator,id=tpm0,chardev=chrtpm \
             -device tpm-tis-i2c,tpmdev=tpm0,bus=aspeed.i2c.bus.12,address=0x2e

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>

Reviewed-by: Cédric Le Goater <clg@kaod.org>

Thanks,

C.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]