Commit 8ab547a2 authored by Jarkko Sakkinen's avatar Jarkko Sakkinen

tpm: Fix some name collisions with drivers/char/tpm.h

* Rename TPM_BUFSIZE defined in drivers/char/tpm/st33zp24/st33zp24.h to
  ST33ZP24_BUFSIZE.
* Rename TPM_BUFSIZE defined in drivers/char/tpm/tpm_i2c_infineon.c to
  TPM_I2C_INFINEON_BUFSIZE.
* Rename TPM_RETRY in tpm_i2c_nuvoton to TPM_I2C_RETRIES.
* Remove TPM_HEADER_SIZE from tpm_i2c_nuvoton.

Cc: stable@vger.kernel.org
Fixes: bf38b871 ("tpm/tpm_i2c_stm_st33: Split tpm_i2c_tpm_st33 in 2 layers (core + phy)")
Fixes: aad628c1 ("char/tpm: Add new driver for Infineon I2C TIS TPM")
Fixes: 32d33b29 ("TPM: Retry SaveState command in suspend path")
Signed-off-by: default avatarJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
parent 3d7a850f
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
struct st33zp24_i2c_phy { struct st33zp24_i2c_phy {
struct i2c_client *client; struct i2c_client *client;
u8 buf[TPM_BUFSIZE + 1]; u8 buf[ST33ZP24_BUFSIZE + 1];
int io_lpcpd; int io_lpcpd;
}; };
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
* some latency byte before the answer is available (max 15). * some latency byte before the answer is available (max 15).
* We have 2048 + 1024 + 15. * We have 2048 + 1024 + 15.
*/ */
#define ST33ZP24_SPI_BUFFER_SIZE (TPM_BUFSIZE + (TPM_BUFSIZE / 2) +\ #define ST33ZP24_SPI_BUFFER_SIZE (ST33ZP24_BUFSIZE + (ST33ZP24_BUFSIZE / 2) +\
MAX_SPI_LATENCY) MAX_SPI_LATENCY)
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#define __LOCAL_ST33ZP24_H__ #define __LOCAL_ST33ZP24_H__
#define TPM_WRITE_DIRECTION 0x80 #define TPM_WRITE_DIRECTION 0x80
#define TPM_BUFSIZE 2048 #define ST33ZP24_BUFSIZE 2048
struct st33zp24_dev { struct st33zp24_dev {
struct tpm_chip *chip; struct tpm_chip *chip;
......
...@@ -26,8 +26,7 @@ ...@@ -26,8 +26,7 @@
#include <linux/wait.h> #include <linux/wait.h>
#include "tpm.h" #include "tpm.h"
/* max. buffer size supported by our TPM */ #define TPM_I2C_INFINEON_BUFSIZE 1260
#define TPM_BUFSIZE 1260
/* max. number of iterations after I2C NAK */ /* max. number of iterations after I2C NAK */
#define MAX_COUNT 3 #define MAX_COUNT 3
...@@ -63,11 +62,13 @@ enum i2c_chip_type { ...@@ -63,11 +62,13 @@ enum i2c_chip_type {
UNKNOWN, UNKNOWN,
}; };
/* Structure to store I2C TPM specific stuff */
struct tpm_inf_dev { struct tpm_inf_dev {
struct i2c_client *client; struct i2c_client *client;
int locality; int locality;
u8 buf[TPM_BUFSIZE + sizeof(u8)]; /* max. buffer size + addr */ /* In addition to the data itself, the buffer must fit the 7-bit I2C
* address and the direction bit.
*/
u8 buf[TPM_I2C_INFINEON_BUFSIZE + 1];
struct tpm_chip *chip; struct tpm_chip *chip;
enum i2c_chip_type chip_type; enum i2c_chip_type chip_type;
unsigned int adapterlimit; unsigned int adapterlimit;
...@@ -219,7 +220,7 @@ static int iic_tpm_write_generic(u8 addr, u8 *buffer, size_t len, ...@@ -219,7 +220,7 @@ static int iic_tpm_write_generic(u8 addr, u8 *buffer, size_t len,
.buf = tpm_dev.buf .buf = tpm_dev.buf
}; };
if (len > TPM_BUFSIZE) if (len > TPM_I2C_INFINEON_BUFSIZE)
return -EINVAL; return -EINVAL;
if (!tpm_dev.client->adapter->algo->master_xfer) if (!tpm_dev.client->adapter->algo->master_xfer)
...@@ -527,8 +528,8 @@ static int tpm_tis_i2c_send(struct tpm_chip *chip, u8 *buf, size_t len) ...@@ -527,8 +528,8 @@ static int tpm_tis_i2c_send(struct tpm_chip *chip, u8 *buf, size_t len)
u8 retries = 0; u8 retries = 0;
u8 sts = TPM_STS_GO; u8 sts = TPM_STS_GO;
if (len > TPM_BUFSIZE) if (len > TPM_I2C_INFINEON_BUFSIZE)
return -E2BIG; /* command is too long for our tpm, sorry */ return -E2BIG;
if (request_locality(chip, 0) < 0) if (request_locality(chip, 0) < 0)
return -EBUSY; return -EBUSY;
......
...@@ -40,9 +40,7 @@ ...@@ -40,9 +40,7 @@
#define TPM_DATA_FIFO_W 0x20 #define TPM_DATA_FIFO_W 0x20
#define TPM_DATA_FIFO_R 0x40 #define TPM_DATA_FIFO_R 0x40
#define TPM_VID_DID_RID 0x60 #define TPM_VID_DID_RID 0x60
/* TPM command header size */ #define TPM_I2C_RETRIES 5
#define TPM_HEADER_SIZE 10
#define TPM_RETRY 5
/* /*
* I2C bus device maximum buffer size w/o counting I2C address or command * I2C bus device maximum buffer size w/o counting I2C address or command
* i.e. max size required for I2C write is 34 = addr, command, 32 bytes data * i.e. max size required for I2C write is 34 = addr, command, 32 bytes data
...@@ -292,7 +290,7 @@ static int i2c_nuvoton_recv(struct tpm_chip *chip, u8 *buf, size_t count) ...@@ -292,7 +290,7 @@ static int i2c_nuvoton_recv(struct tpm_chip *chip, u8 *buf, size_t count)
dev_err(dev, "%s() count < header size\n", __func__); dev_err(dev, "%s() count < header size\n", __func__);
return -EIO; return -EIO;
} }
for (retries = 0; retries < TPM_RETRY; retries++) { for (retries = 0; retries < TPM_I2C_RETRIES; retries++) {
if (retries > 0) { if (retries > 0) {
/* if this is not the first trial, set responseRetry */ /* if this is not the first trial, set responseRetry */
i2c_nuvoton_write_status(client, i2c_nuvoton_write_status(client,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment