[PATCH v3 0/1] tpm_crb_ffa: handle tpm busy return code

From: Prachotan Bathi
Date: Wed Jun 11 2025 - 15:30:37 EST


Platforms supporting direct message request v2 can
support Secure Partitions (SPs) that support multiple services.
If the TPM service is sharing the SP with another service,
it could get an error code of BUSY if the other service is
in process.
We need a way for the driver to retry sending the message
to the TPM service until it succeeds or we know that no forward progress
can be made.
This adds a parameterized variable (default 2000ms)
that indicates the maximum time to keep retrying for.

This is building on top of commit a85b55ee64a5.
A tpm service can be accessed by the driver using direct message
request v2 interface according to chapter 3.3, TPM
Service Command Response Buffer Interface Over FF-A
specificationi v1.0 EAC.
See:
https://developer.arm.com/documentation/den0138/latest/

Changes in v3:
- Comments re-written per kernel coding style.

Prachotan Bathi (1):
tpm_crb_ffa: handle tpm busy return code

drivers/char/tpm/tpm_crb_ffa.c | 78 +++++++++++++++++++++++-----------
1 file changed, 54 insertions(+), 24 deletions(-)

--
2.43.0