tpm: Rename tpm_tis_infineon.h to tpm_tis.h and move infineon specific stuff in tpm_infineon.c

I2C protocol is not standardize for TPM 1.2.
TIS prococol is define by the Trusted Computing Group and potentially
available on several TPMs.

tpm_tis_infineon.h header is not generic enough.

Rename tpm_tis_infineon.h to tpm_tis.h and move infineon specific
defines/variables to tpm_tis_infineon.c

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
This commit is contained in:
Christophe Ricard 2016-01-21 23:27:12 +01:00 committed by Simon Glass
parent ca5bc1bc10
commit 1259dcd79c
2 changed files with 17 additions and 17 deletions

View File

@ -37,18 +37,12 @@ enum tpm_timeout {
#define TPM_RSP_SIZE_BYTE 2 #define TPM_RSP_SIZE_BYTE 2
#define TPM_RSP_RC_BYTE 6 #define TPM_RSP_RC_BYTE 6
enum i2c_chip_type {
SLB9635,
SLB9645,
UNKNOWN,
};
struct tpm_chip { struct tpm_chip {
int is_open; int is_open;
int locality; int locality;
u32 vend_dev; u32 vend_dev;
unsigned long timeout_a, timeout_b, timeout_c, timeout_d; /* msec */ unsigned long timeout_a, timeout_b, timeout_c, timeout_d; /* msec */
enum i2c_chip_type chip_type; ulong chip_type;
}; };
struct tpm_input_header { struct tpm_input_header {
@ -134,13 +128,4 @@ enum tis_status {
TPM_STS_DATA_EXPECT = 0x08, TPM_STS_DATA_EXPECT = 0x08,
}; };
/* expected value for DIDVID register */
#define TPM_TIS_I2C_DID_VID_9635 0x000b15d1L
#define TPM_TIS_I2C_DID_VID_9645 0x001a15d1L
#define TPM_ACCESS(l) (0x0000 | ((l) << 4))
#define TPM_STS(l) (0x0001 | ((l) << 4))
#define TPM_DATA_FIFO(l) (0x0005 | ((l) << 4))
#define TPM_DID_VID(l) (0x0006 | ((l) << 4))
#endif #endif

View File

@ -30,17 +30,32 @@
#include <linux/types.h> #include <linux/types.h>
#include <linux/unaligned/be_byteshift.h> #include <linux/unaligned/be_byteshift.h>
#include "tpm_tis_infineon.h" #include "tpm_tis.h"
#include "tpm_internal.h" #include "tpm_internal.h"
DECLARE_GLOBAL_DATA_PTR; DECLARE_GLOBAL_DATA_PTR;
enum i2c_chip_type {
SLB9635,
SLB9645,
UNKNOWN,
};
/* expected value for DIDVID register */
#define TPM_TIS_I2C_DID_VID_9635 0x000b15d1L
#define TPM_TIS_I2C_DID_VID_9645 0x001a15d1L
static const char * const chip_name[] = { static const char * const chip_name[] = {
[SLB9635] = "slb9635tt", [SLB9635] = "slb9635tt",
[SLB9645] = "slb9645tt", [SLB9645] = "slb9645tt",
[UNKNOWN] = "unknown/fallback to slb9635", [UNKNOWN] = "unknown/fallback to slb9635",
}; };
#define TPM_ACCESS(l) (0x0000 | ((l) << 4))
#define TPM_STS(l) (0x0001 | ((l) << 4))
#define TPM_DATA_FIFO(l) (0x0005 | ((l) << 4))
#define TPM_DID_VID(l) (0x0006 | ((l) << 4))
/* /*
* tpm_tis_i2c_read() - read from TPM register * tpm_tis_i2c_read() - read from TPM register
* @addr: register address to read from * @addr: register address to read from