aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/tpm/tpm_tis.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 47ba9c213cc..1250e3323c4 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -367,7 +367,7 @@ static int probe_itpm(struct tpm_chip *chip)
367 0x00, 0x00, 0x00, 0xf1 367 0x00, 0x00, 0x00, 0xf1
368 }; 368 };
369 size_t len = sizeof(cmd_getticks); 369 size_t len = sizeof(cmd_getticks);
370 int rem_itpm = itpm; 370 bool rem_itpm = itpm;
371 u16 vendor = ioread16(chip->vendor.iobase + TPM_DID_VID(0)); 371 u16 vendor = ioread16(chip->vendor.iobase + TPM_DID_VID(0));
372 372
373 /* probe only iTPMS */ 373 /* probe only iTPMS */
@@ -510,7 +510,7 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
510 resource_size_t len, unsigned int irq) 510 resource_size_t len, unsigned int irq)
511{ 511{
512 u32 vendor, intfcaps, intmask; 512 u32 vendor, intfcaps, intmask;
513 int rc, i, irq_s, irq_e; 513 int rc, i, irq_s, irq_e, probe;
514 struct tpm_chip *chip; 514 struct tpm_chip *chip;
515 515
516 if (!(chip = tpm_register_hardware(dev, &tpm_tis))) 516 if (!(chip = tpm_register_hardware(dev, &tpm_tis)))
@@ -540,11 +540,12 @@ static int tpm_tis_init(struct device *dev, resource_size_t start,
540 vendor >> 16, ioread8(chip->vendor.iobase + TPM_RID(0))); 540 vendor >> 16, ioread8(chip->vendor.iobase + TPM_RID(0)));
541 541
542 if (!itpm) { 542 if (!itpm) {
543 itpm = probe_itpm(chip); 543 probe = probe_itpm(chip);
544 if (itpm < 0) { 544 if (probe < 0) {
545 rc = -ENODEV; 545 rc = -ENODEV;
546 goto out_err; 546 goto out_err;
547 } 547 }
548 itpm = (probe == 0) ? 0 : 1;
548 } 549 }
549 550
550 if (itpm) 551 if (itpm)