|
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] |