tpm_tis: Check return code from getting timeouts/durations
authorStefan Berger <stefanb@linux.vnet.ibm.com>
Fri, 11 Nov 2011 17:57:05 +0000 (12:57 -0500)
committerRajiv Andrade <srajiv@linux.vnet.ibm.com>
Wed, 16 Nov 2011 11:43:01 +0000 (09:43 -0200)
Check the return code from getting the TPM's timeouts and durations
and reject the driver if they could not be read.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
drivers/char/tpm/tpm_tis.c

index d30d5c3..34832bc 100644 (file)
@@ -614,7 +614,11 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
                dev_dbg(dev, "\tData Avail Int Support\n");
 
        /* get the timeouts before testing for irqs */
-       tpm_get_timeouts(chip);
+       if (tpm_get_timeouts(chip)) {
+               dev_err(dev, "Could not get TPM timeouts and durations\n");
+               rc = -ENODEV;
+               goto out_err;
+       }
 
        if (tpm_do_selftest(chip)) {
                dev_err(dev, "TPM self test failed\n");