Re: [PATCH] tpm: sleep at least <...> ms in tpm_msleep()

From: Jarkko Sakkinen
Date: Wed May 11 2022 - 11:18:02 EST


On Tue, May 10, 2022 at 01:29:03PM +0200, Johannes Holland wrote:
> To comply with protocol requirements, minimum polling times must often
> be adhered to. Therefore, a macro like tpm_msleep() should sleep at
> least the given amount of time (not up to the given period). Have
> tpm_msleep() sleep at least the given number of milliseconds.
>
> Signed-off-by: Johannes Holland <johannes.holland@xxxxxxxxxxxx>
> ---
> drivers/char/tpm/tpm.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h
> index 2163c6ee0d36..0971b55fffe3 100644
> --- a/drivers/char/tpm/tpm.h
> +++ b/drivers/char/tpm/tpm.h
> @@ -185,8 +185,8 @@ int tpm_pm_resume(struct device *dev);
>
> static inline void tpm_msleep(unsigned int delay_msec)
> {
> - usleep_range((delay_msec * 1000) - TPM_TIMEOUT_RANGE_US,
> - delay_msec * 1000);
> + usleep_range(delay_msec * 1000, (delay_msec * 1000)
> + + TPM_TIMEOUT_RANGE_US);
> };
>
> int tpm_chip_start(struct tpm_chip *chip);
> --
> 2.34.1
>

For this I would really like to hear a 2nd opinion from Nayna and Mimi.

BR, Jarkko