aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/tpm/tpm_i2c_stm_st33.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/char/tpm/tpm_i2c_stm_st33.c b/drivers/char/tpm/tpm_i2c_stm_st33.c
index 8c60d33d116c..16f1f785c0b9 100644
--- a/drivers/char/tpm/tpm_i2c_stm_st33.c
+++ b/drivers/char/tpm/tpm_i2c_stm_st33.c
@@ -96,15 +96,13 @@ enum tis_defaults {
96static int write8_reg(struct i2c_client *client, u8 tpm_register, 96static int write8_reg(struct i2c_client *client, u8 tpm_register,
97 u8 *tpm_data, u16 tpm_size) 97 u8 *tpm_data, u16 tpm_size)
98{ 98{
99 u8 data;
100 int value = 0; 99 int value = 0;
101 struct st33zp24_platform_data *pin_infos; 100 struct st33zp24_platform_data *pin_infos;
102 101
103 pin_infos = client->dev.platform_data; 102 pin_infos = client->dev.platform_data;
104 103
105 data = tpm_register; 104 pin_infos->tpm_i2c_buffer[0][0] = tpm_register;
106 memcpy(pin_infos->tpm_i2c_buffer[0], &data, sizeof(data)); 105 memcpy(&pin_infos->tpm_i2c_buffer[0][1], tpm_data, tpm_size);
107 memcpy(pin_infos->tpm_i2c_buffer[0] + 1, tpm_data, tpm_size);
108 value = i2c_master_send(client, pin_infos->tpm_i2c_buffer[0], 106 value = i2c_master_send(client, pin_infos->tpm_i2c_buffer[0],
109 tpm_size + 1); 107 tpm_size + 1);
110 return value; 108 return value;