tpm_tis: free irq after probing
authorMartin Wilck <Martin.Wilck@ts.fujitsu.com>
Thu, 5 Nov 2015 16:19:09 +0000 (17:19 +0100)
committerJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Mon, 9 Nov 2015 15:52:54 +0000 (17:52 +0200)
Release IRQs used for probing only. Otherwise the TPM will end up
with all IRQs 3-15 assigned.

Fixes: afb5abc262e9 ("tpm: two-phase chip management functions")
Signed-off-by: Martin Wilck <Martin.Wilck@ts.fujitsu.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>
Acked-by: Peter Huewe <PeterHuewe@gmx.de>
drivers/char/tpm/tpm_tis.c

index 696ef1d56b4f5830682bc1227b72686c2906eefb..19f9c7dc7bc0828064b9ea47c5850adfde992a80 100644 (file)
@@ -805,6 +805,8 @@ static int tpm_tis_init(struct device *dev, struct tpm_info *tpm_info,
                        iowrite32(intmask,
                                  chip->vendor.iobase +
                                  TPM_INT_ENABLE(chip->vendor.locality));
+
+                       devm_free_irq(dev, i, chip);
                }
        }
        if (chip->vendor.irq) {