|
| From: | Stefan Berger |
| Subject: | Re: [PATCH 3/3] Add support for TPM devices over I2C bus |
| Date: | Tue, 21 Mar 2023 21:30:03 -0400 |
| User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 |
On 3/21/23 01:30, 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.
+
+/* Send data to TPM */
+static inline void tpm_tis_i2c_tpm_send(TPMStateI2C *i2cst)
+{
+ if ((i2cst->operation == OP_SEND) && (i2cst->offset > 1)) {
+ uint16_t tis_reg;
+ uint32_t data;
+ int i;
+
+ tis_reg = tpm_tis_i2c_to_tis_reg(i2cst->data[0], &i2cst->size);
+
+ /* Index 0 is always a register */
+ for (i = 1; i < i2cst->offset; i++) {
+ data = (i2cst->data[i] & 0xff);
+ tpm_tis_write_data(&i2cst->state, tis_reg, data, 1);
+ }
I think there should be tpm_tis_set_data_buffer function that you can call rather than transferring the data byte-by-byte. Thanks for the series! Stefan
| [Prev in Thread] | Current Thread | [Next in Thread] |