The sanity check mask for TPM_INT_ENABLE register was off by 8 bits,
resulting in failure to probe if the TPM_INT_ENABLE register was a
valid value.
Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
Signed-off-by: Eddie James <[email protected]>
---
drivers/char/tpm/tpm_tis_i2c.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/char/tpm/tpm_tis_i2c.c b/drivers/char/tpm/tpm_tis_i2c.c
index 0692510dfcab..635a69dfcbbd 100644
--- a/drivers/char/tpm/tpm_tis_i2c.c
+++ b/drivers/char/tpm/tpm_tis_i2c.c
@@ -49,7 +49,7 @@
/* Masks with bits that must be read zero */
#define TPM_ACCESS_READ_ZERO 0x48
-#define TPM_INT_ENABLE_ZERO 0x7FFFFF6
+#define TPM_INT_ENABLE_ZERO 0x7FFFFF60
#define TPM_STS_READ_ZERO 0x23
#define TPM_INTF_CAPABILITY_ZERO 0x0FFFF000
#define TPM_I2C_INTERFACE_CAPABILITY_ZERO 0x80000000
--
2.31.1
On Wed, Aug 17, 2022 at 03:03:33PM -0500, Eddie James wrote:
> The sanity check mask for TPM_INT_ENABLE register was off by 8 bits,
> resulting in failure to probe if the TPM_INT_ENABLE register was a
> valid value.
>
> Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
> Signed-off-by: Eddie James <[email protected]>
> ---
> drivers/char/tpm/tpm_tis_i2c.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_tis_i2c.c b/drivers/char/tpm/tpm_tis_i2c.c
> index 0692510dfcab..635a69dfcbbd 100644
> --- a/drivers/char/tpm/tpm_tis_i2c.c
> +++ b/drivers/char/tpm/tpm_tis_i2c.c
> @@ -49,7 +49,7 @@
>
> /* Masks with bits that must be read zero */
> #define TPM_ACCESS_READ_ZERO 0x48
> -#define TPM_INT_ENABLE_ZERO 0x7FFFFF6
> +#define TPM_INT_ENABLE_ZERO 0x7FFFFF60
> #define TPM_STS_READ_ZERO 0x23
> #define TPM_INTF_CAPABILITY_ZERO 0x0FFFF000
> #define TPM_I2C_INTERFACE_CAPABILITY_ZERO 0x80000000
> --
> 2.31.1
>
Reviewed-by: Jarkko Sakkinen <[email protected]>
Thank you.
BR, Jarkko
On Fri, Aug 26, 2022 at 07:04:00AM +0300, Jarkko Sakkinen wrote:
> On Wed, Aug 17, 2022 at 03:03:33PM -0500, Eddie James wrote:
> > The sanity check mask for TPM_INT_ENABLE register was off by 8 bits,
> > resulting in failure to probe if the TPM_INT_ENABLE register was a
> > valid value.
> >
> > Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
> > Signed-off-by: Eddie James <[email protected]>
> > ---
> > drivers/char/tpm/tpm_tis_i2c.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/char/tpm/tpm_tis_i2c.c b/drivers/char/tpm/tpm_tis_i2c.c
> > index 0692510dfcab..635a69dfcbbd 100644
> > --- a/drivers/char/tpm/tpm_tis_i2c.c
> > +++ b/drivers/char/tpm/tpm_tis_i2c.c
> > @@ -49,7 +49,7 @@
> >
> > /* Masks with bits that must be read zero */
> > #define TPM_ACCESS_READ_ZERO 0x48
> > -#define TPM_INT_ENABLE_ZERO 0x7FFFFF6
> > +#define TPM_INT_ENABLE_ZERO 0x7FFFFF60
> > #define TPM_STS_READ_ZERO 0x23
> > #define TPM_INTF_CAPABILITY_ZERO 0x0FFFF000
> > #define TPM_I2C_INTERFACE_CAPABILITY_ZERO 0x80000000
> > --
> > 2.31.1
> >
>
> Reviewed-by: Jarkko Sakkinen <[email protected]>
>
> Thank you.
I used "6.3 Handling of Multi-Byte Registers" I2C specification
to check this. I do not posses I2C chip.
https://trustedcomputinggroup.org/wp-content/uploads/TCG-TPM-I2C-Interface-Specification-v1.00.pdf
BR, Jarkko
On Wed, 17 Aug 2022 at 20:03, Eddie James <[email protected]> wrote:
>
> The sanity check mask for TPM_INT_ENABLE register was off by 8 bits,
> resulting in failure to probe if the TPM_INT_ENABLE register was a
> valid value.
>
> Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
> Signed-off-by: Eddie James <[email protected]>
Tested-by: Joel Stanley <[email protected]>
Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
Jarkko, do you plan on sending this as a fix?
> ---
> drivers/char/tpm/tpm_tis_i2c.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/char/tpm/tpm_tis_i2c.c b/drivers/char/tpm/tpm_tis_i2c.c
> index 0692510dfcab..635a69dfcbbd 100644
> --- a/drivers/char/tpm/tpm_tis_i2c.c
> +++ b/drivers/char/tpm/tpm_tis_i2c.c
> @@ -49,7 +49,7 @@
>
> /* Masks with bits that must be read zero */
> #define TPM_ACCESS_READ_ZERO 0x48
> -#define TPM_INT_ENABLE_ZERO 0x7FFFFF6
> +#define TPM_INT_ENABLE_ZERO 0x7FFFFF60
> #define TPM_STS_READ_ZERO 0x23
> #define TPM_INTF_CAPABILITY_ZERO 0x0FFFF000
> #define TPM_I2C_INTERFACE_CAPABILITY_ZERO 0x80000000
> --
> 2.31.1
>
On Mon, Nov 14, 2022 at 03:16:00AM +0000, Joel Stanley wrote:
> On Wed, 17 Aug 2022 at 20:03, Eddie James <[email protected]> wrote:
> >
> > The sanity check mask for TPM_INT_ENABLE register was off by 8 bits,
> > resulting in failure to probe if the TPM_INT_ENABLE register was a
> > valid value.
> >
> > Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
> > Signed-off-by: Eddie James <[email protected]>
>
> Tested-by: Joel Stanley <[email protected]>
> Fixes: bbc23a07b072 ("tpm: Add tpm_tis_i2c backend for tpm_tis_core")
>
> Jarkko, do you plan on sending this as a fix?
Thanks for reminding! I picked it.
BR, Jarkko