On Tue, 23 Sep 2014, Stefan Berger wrote: > On 09/23/2014 07:55 AM, Scot Doyle wrote: >> On Tue, 23 Sep 2014, Scot Doyle wrote: >> +static void disable_interrupts(struct tpm_chip *chip) >> +{ >> + u32 intmask; >> + intmask = >> + ioread32(chip->vendor.iobase + >> + TPM_INT_ENABLE(chip->vendor.locality)); >> + intmask |= TPM_INTF_CMD_READY_INT | TPM_INTF_LOCALITY_CHANGE_INT | >> + TPM_INTF_DATA_AVAIL_INT | TPM_INTF_STS_VALID_INT; > > You want to disable interrupts but you set all the flags? Maybe you meant: > > intmask &= ~(FOO|BAR) > > ?
Thanks, would this work? I think it's how tpm_tis_init masks during a probe. static void disable_interrupts(struct tpm_chip *chip) { u32 intmask; intmask = ioread32(chip->vendor.iobase + TPM_INT_ENABLE(chip->vendor.locality)); intmask &= ~TPM_GLOBAL_INT_ENABLE; iowrite32(intmask, chip->vendor.iobase + TPM_INT_ENABLE(chip->vendor.locality)); free_irq(chip->vendor.irq, chip); chip->vendor.irq = 0; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/