Re: question about setting TPM_CHIP_FLAG_IRQ in tpm_tis_core_init

From: Jerry Snitselaar
Date: Fri Nov 15 2019 - 14:15:00 EST


On Tue Nov 12 19, Jarkko Sakkinen wrote:
On Tue, Nov 12, 2019 at 08:28:57AM -0500, Stefan Berger wrote:
I set this flag for the TIS because it wasn't set anywhere else.
tpm_tis_send() wouldn't set the flag but go via the path:

if (!(chip->flags & TPM_CHIP_FLAG_IRQ) || priv->irq_tested)

        return tpm_tis_send_main(chip, buf, len);

Wondering why this isn't just "if (priv->irq_tested)"? Isn't that the
whole point. The tail is the test part e.g. should be executed when
IRQ testing is done.

/Jarkko


I wonder if it would make sense to rename tpm_tis_send_main to tpm_tis_send,
move the irq testing bits from the current tpm_tis_send to tpm_tis_gen_interrupt,
and have tpm_tis_gen_interrupt build its own tpmbufs to send via tpm_tis_send
for the testing. Have all the irq testing bits are off on their own and separated out
from sending commands.