]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
crypto: ccp - reduce tee command status polling interval from 5ms to 1ms
authorRijo Thomas <Rijo-john.Thomas@amd.com>
Mon, 15 Mar 2021 08:25:28 +0000 (13:55 +0530)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 26 Mar 2021 09:02:34 +0000 (20:02 +1100)
The PSP TEE device driver polls the command status variable every
5ms to check for command completion. Reduce this time to 1ms so that
there is an improvement in driver response time to clients which submit
TEE commands.

Reviewed-by: Devaraj Rangasamy <Devaraj.Rangasamy@amd.com>
Signed-off-by: Rijo Thomas <Rijo-john.Thomas@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/ccp/tee-dev.c

index 5e697a90ea7f497082e05d9ac6aac49d1cfec530..910b71df2aefed6d9d07738a34f57c2d63daad7d 100644 (file)
@@ -5,7 +5,7 @@
  * Author: Rijo Thomas <Rijo-john.Thomas@amd.com>
  * Author: Devaraj Rangasamy <Devaraj.Rangasamy@amd.com>
  *
- * Copyright 2019 Advanced Micro Devices, Inc.
+ * Copyright (C) 2019,2021 Advanced Micro Devices, Inc.
  */
 
 #include <linux/types.h>
@@ -309,14 +309,14 @@ static int tee_wait_cmd_completion(struct psp_tee_device *tee,
                                   struct tee_ring_cmd *resp,
                                   unsigned int timeout)
 {
-       /* ~5ms sleep per loop => nloop = timeout * 200 */
-       int nloop = timeout * 200;
+       /* ~1ms sleep per loop => nloop = timeout * 1000 */
+       int nloop = timeout * 1000;
 
        while (--nloop) {
                if (resp->cmd_state == TEE_CMD_STATE_COMPLETED)
                        return 0;
 
-               usleep_range(5000, 5100);
+               usleep_range(1000, 1100);
        }
 
        dev_err(tee->dev, "tee: command 0x%x timed out, disabling PSP\n",