Re: [BISECTED] tpm CLKRUN breaks PS/2 keyboard and touchpad on Braswell system

Jarkko Sakkinen
2017-12-19T12:59:29Z

James, Javier, thank you for sorting this out. I'll just have couple of
minor comments on the patch.

On Mon, Dec 18, 2017 at 01:22:28PM +0100, Javier Martinez Canillas wrote:
> + u32 vendor, intfcaps, intmask, clkrun_val;

Could these split into four lines (one declaration per line)?

> u8 rid;
> int rc, probe;
> struct tpm_chip *chip;
> @@ -772,6 +772,15 @@ int tpm_tis_core_init(struct device *dev, struct tpm_tis_data *priv, int irq,
> ILB_REMAP_SIZE);
> if (!priv->ilb_base_addr)
> return -ENOMEM;
> +
> + clkrun_val = ioread32(priv->ilb_base_addr + LPC_CNTRL_OFFSET);
> + /* Check if CLKRUN# is already not enabled in the LPC bus */

/*

> + if (!(clkrun_val & LPC_CLKRUN_EN)) {
> + priv->flags |= TPM_TIS_CLK_ENABLE;

Is the flag added just so surpress those WARN()'s?

I've forgot why the WARN()'s even exist assuming that driver is
functioning correctly.

/Jarkko