tpm: fix type of a local variables in tpm_tis_spi.c
authorJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Wed, 13 Sep 2017 17:17:25 +0000 (10:17 -0700)
committerJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Wed, 18 Oct 2017 15:28:48 +0000 (18:28 +0300)
Use __le32 type for data in that format.

Fixes: 0edbfea537d1 ("tpm/tpm_tis_spi: Add support for spi phy")
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
drivers/char/tpm/tpm_tis_spi.c

index 8ab0bd8445f6d2ba818653d642bd32d4a97b8b20..424ff2fde1f2d60e3e42298153cffbf16758cedd 100644 (file)
@@ -152,29 +152,40 @@ static int tpm_tis_spi_write_bytes(struct tpm_tis_data *data, u32 addr,
 
 static int tpm_tis_spi_read16(struct tpm_tis_data *data, u32 addr, u16 *result)
 {
+       __le16 result_le;
        int rc;
 
-       rc = data->phy_ops->read_bytes(data, addr, sizeof(u16), (u8 *)result);
+       rc = data->phy_ops->read_bytes(data, addr, sizeof(u16),
+                                      (u8 *)&result_le);
        if (!rc)
-               *result = le16_to_cpu(*result);
+               *result = le16_to_cpu(result_le);
+
        return rc;
 }
 
 static int tpm_tis_spi_read32(struct tpm_tis_data *data, u32 addr, u32 *result)
 {
+       __le32 result_le;
        int rc;
 
-       rc = data->phy_ops->read_bytes(data, addr, sizeof(u32), (u8 *)result);
+       rc = data->phy_ops->read_bytes(data, addr, sizeof(u32),
+                                      (u8 *)&result_le);
        if (!rc)
-               *result = le32_to_cpu(*result);
+               *result = le32_to_cpu(result_le);
+
        return rc;
 }
 
 static int tpm_tis_spi_write32(struct tpm_tis_data *data, u32 addr, u32 value)
 {
-       value = cpu_to_le32(value);
-       return data->phy_ops->write_bytes(data, addr, sizeof(u32),
-                                          (u8 *)&value);
+       __le32 value_le;
+       int rc;
+
+       value_le = cpu_to_le32(value);
+       rc = data->phy_ops->write_bytes(data, addr, sizeof(u32),
+                                       (u8 *)&value_le);
+
+       return rc;
 }
 
 static const struct tpm_tis_phy_ops tpm_spi_phy_ops = {