On 6/15/20 11:06 AM, Marc-André Lureau wrote:
> Hi
>
> On Mon, Jun 15, 2020 at 6:23 PM Stefan Berger
> <stefanb@linux.vnet.ibm.com> wrote:
>> From: Stefan Berger <stefanb@linux.ibm.com>
>>
>> This patch fixes a bug that occurs when using interrupts. It
>> allows to lower the IRQ also when a locality is not active.
>>
> Can you quote the specification, or is it purely based on testing
> (Windows & Linux) or checking expected behaviour from Linux code?
There's no spec for this detail. It's purely based on testing.
also: Linux 5.x had interrupt support for a short while but this was
removed due to some laptops receiving an interrupt storm following
enablement: https://www.spinics.net/lists/linux-integrity/msg11870.html
[ reason seems to be misconfiguration of some GPIO pin]
I tested it with this patch: https://lkml.org/lkml/2019/8/20/421
5.4 kernel:
https://elixir.bootlin.com/linux/v5.4/source/drivers/char/tpm/tpm_tis_core.c#L983
Stefan
>
>> Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
>> ---
>> hw/tpm/tpm_tis_common.c | 4 ----
>> 1 file changed, 4 deletions(-)
>>
>> diff --git a/hw/tpm/tpm_tis_common.c b/hw/tpm/tpm_tis_common.c
>> index 1af4bce139..0f42696f1f 100644
>> --- a/hw/tpm/tpm_tis_common.c
>> +++ b/hw/tpm/tpm_tis_common.c
>> @@ -601,10 +601,6 @@ static void tpm_tis_mmio_write(void *opaque, hwaddr addr,
>> /* hard wired -- ignore */
>> break;
>> case TPM_TIS_REG_INT_STATUS:
>> - if (s->active_locty != locty) {
>> - break;
>> - }
>> -
>> /* clearing of interrupt flags */
>> if (((val & TPM_TIS_INTERRUPTS_SUPPORTED)) &&
>> (s->loc[locty].ints & TPM_TIS_INTERRUPTS_SUPPORTED)) {
>> --
>> 2.24.1
>>