qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v2 4/5] acpi: Enable TPM IRQ


From: Stefan Berger
Subject: Re: [PATCH v2 4/5] acpi: Enable TPM IRQ
Date: Tue, 16 Jun 2020 10:05:01 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1

On 6/16/20 9:01 AM, Auger Eric wrote:
Hi Stefan,

On 6/15/20 7:11 PM, Stefan Berger wrote:
On 6/15/20 11:13 AM, Marc-André Lureau wrote:
diff --git a/include/hw/acpi/tpm.h b/include/hw/acpi/tpm.h
index 1a2a57a21f..063a9eb42a 100644
--- a/include/hw/acpi/tpm.h
+++ b/include/hw/acpi/tpm.h
@@ -24,7 +24,7 @@
   #define TPM_TIS_ADDR_BASE           0xFED40000
   #define TPM_TIS_ADDR_SIZE           0x5000

-#define TPM_TIS_IRQ                 5
+#define TPM_TIS_IRQ                 13

Eric,

  does this change have any negative side effects on ARM? If you prefer,
we can split this part here up into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS
IRQ and leave the latter at '5' because we know that this is working.
The IRQ is not advertised in dt nor ACPI on ARM. However it is
advertised in the capability reg and in the vector. reg So I think this
should be fixed? I guess on ARM we will pick up a completely different
IRQ num, allocated from the platform bus slot.


The specification

https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2p0-v1p04_r0p37_pub-1.pdf

declares several fields in the Interface Capability Register (table 23, pdf page 89) to be mandatory and they must be set to '1'. So I would not want to touch those. We can set the interrupt vector register to '0' in case interrupts are not supported. Following the spec 0 means that no interrupts are supported. I will now split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ and will in the end set TPM_TIS_SYSBUS_IRQ to 'disabled', indicating that IRQs are not supported, though they should work even though on ARM there may not be a driver to test this with. Does this sound ok?


   Stefan



Thanks

Eric
    Stefan


   #define TPM_TIS_NUM_LOCALITIES      5     /* per spec */
   #define TPM_TIS_LOCALITY_SHIFT      12
--
2.24.1





reply via email to

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