tpm: Trigger only missing TPM 2.0 self tests
authorAlexander Steffen <Alexander.Steffen@infineon.com>
Thu, 31 Aug 2017 17:18:56 +0000 (19:18 +0200)
committerJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Wed, 18 Oct 2017 15:28:46 +0000 (18:28 +0300)
tpm2_do_selftest is only used during initialization of the TPM to ensure
that the device functions correctly. Therefore, it is sufficient to request
only missing self tests (parameter full_test=0), not a reexecution of all
self tests, as was done before. This allows for a faster execution of this
command.

Signed-off-by: Alexander Steffen <Alexander.Steffen@infineon.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Tested-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
drivers/char/tpm/tpm2-cmd.c

index e1a41b788f081c829ad0d0353ac7d3622752c82f..8e940a530df8777854f392e1ec21afc93b2aa0fb 100644 (file)
@@ -865,7 +865,7 @@ static int tpm2_start_selftest(struct tpm_chip *chip, bool full)
 }
 
 /**
- * tpm2_do_selftest() - run a full self test
+ * tpm2_do_selftest() - ensure that all self tests have passed
  *
  * @chip: TPM chip to use
  *
@@ -886,7 +886,7 @@ static int tpm2_do_selftest(struct tpm_chip *chip)
 
        loops = jiffies_to_msecs(duration) / delay_msec;
 
-       rc = tpm2_start_selftest(chip, true);
+       rc = tpm2_start_selftest(chip, false);
        if (rc)
                return rc;