diff mbox

[04/12] tpm/st33zp24/spi: Remove field spi_xfer from st33zp24_spi_phy structure

Message ID 1455010021-21927-5-git-send-email-christophe-h.ricard@st.com (mailing list archive)
State New, archived
Headers show

Commit Message

Christophe Ricard Feb. 9, 2016, 9:26 a.m. UTC
Remove spi_xfer from st33zp24_spi_phy structure and declare local spi_xfer
when needed instead.

Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
---
 drivers/char/tpm/st33zp24/spi.c | 50 ++++++++++++++++++++---------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

Comments

Jarkko Sakkinen Feb. 11, 2016, 2:06 p.m. UTC | #1
On Tue, Feb 09, 2016 at 10:26:53AM +0100, Christophe Ricard wrote:
> Remove spi_xfer from st33zp24_spi_phy structure and declare local spi_xfer
> when needed instead.
> 
> Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>

Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>

/Jarkko

> ---
>  drivers/char/tpm/st33zp24/spi.c | 50 ++++++++++++++++++++---------------------
>  1 file changed, 25 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/char/tpm/st33zp24/spi.c b/drivers/char/tpm/st33zp24/spi.c
> index 08ffbfe..41c11c9 100644
> --- a/drivers/char/tpm/st33zp24/spi.c
> +++ b/drivers/char/tpm/st33zp24/spi.c
> @@ -66,7 +66,7 @@
>  
>  struct st33zp24_spi_phy {
>  	struct spi_device *spi_device;
> -	struct spi_transfer spi_xfer;
> +
>  	u8 tx_buf[ST33ZP24_SPI_BUFFER_SIZE];
>  	u8 rx_buf[ST33ZP24_SPI_BUFFER_SIZE];
>  
> @@ -113,28 +113,30 @@ static int st33zp24_spi_send(void *phy_id, u8 tpm_register, u8 *tpm_data,
>  	int total_length = 0, ret = 0;
>  	struct st33zp24_spi_phy *phy = phy_id;
>  	struct spi_device *dev = phy->spi_device;
> -	u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf;
> -	u8 *rx_buf = phy->spi_xfer.rx_buf;
> +	struct spi_transfer spi_xfer = {
> +		.tx_buf = phy->tx_buf,
> +		.rx_buf = phy->rx_buf,
> +	};
>  
>  	/* Pre-Header */
> -	tx_buf[total_length++] = TPM_WRITE_DIRECTION | LOCALITY0;
> -	tx_buf[total_length++] = tpm_register;
> +	phy->tx_buf[total_length++] = TPM_WRITE_DIRECTION | LOCALITY0;
> +	phy->tx_buf[total_length++] = tpm_register;
>  
>  	if (tpm_size > 0 && tpm_register == TPM_DATA_FIFO) {
> -		tx_buf[total_length++] = tpm_size >> 8;
> -		tx_buf[total_length++] = tpm_size;
> +		phy->tx_buf[total_length++] = tpm_size >> 8;
> +		phy->tx_buf[total_length++] = tpm_size;
>  	}
>  
> -	memcpy(&tx_buf[total_length], tpm_data, tpm_size);
> +	memcpy(&phy->tx_buf[total_length], tpm_data, tpm_size);
>  	total_length += tpm_size;
>  
> -	memset(&tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency);
> +	memset(&phy->tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency);
>  
> -	phy->spi_xfer.len = total_length + phy->latency;
> +	spi_xfer.len = total_length + phy->latency;
>  
> -	ret = spi_sync_transfer(dev, &phy->spi_xfer, 1);
> +	ret = spi_sync_transfer(dev, &spi_xfer, 1);
>  	if (ret == 0)
> -		ret = rx_buf[total_length + phy->latency - 1];
> +		ret = phy->rx_buf[total_length + phy->latency - 1];
>  
>  	return st33zp24_status_to_errno(ret);
>  } /* st33zp24_spi_send() */
> @@ -154,24 +156,25 @@ static int st33zp24_spi_read8_reg(void *phy_id, u8 tpm_register, u8 *tpm_data,
>  	int total_length = 0, ret;
>  	struct st33zp24_spi_phy *phy = phy_id;
>  	struct spi_device *dev = phy->spi_device;
> -	u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf;
> -	u8 *rx_buf = phy->spi_xfer.rx_buf;
> +	struct spi_transfer spi_xfer = {
> +		.tx_buf = phy->tx_buf,
> +		.rx_buf = phy->rx_buf,
> +	};
>  
>  	/* Pre-Header */
> -	tx_buf[total_length++] = LOCALITY0;
> -	tx_buf[total_length++] = tpm_register;
> +	phy->tx_buf[total_length++] = LOCALITY0;
> +	phy->tx_buf[total_length++] = tpm_register;
>  
> -	memset(&tx_buf[total_length], TPM_DUMMY_BYTE,
> -	       phy->latency + tpm_size);
> +	memset(&phy->tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency + tpm_size);
>  
> -	phy->spi_xfer.len = total_length + phy->latency + tpm_size;
> +	spi_xfer.len = total_length + phy->latency + tpm_size;
>  
>  	/* header + status byte + size of the data + status byte */
> -	ret = spi_sync_transfer(dev, &phy->spi_xfer, 1);
> +	ret = spi_sync_transfer(dev, &spi_xfer, 1);
>  	if (tpm_size > 0 && ret == 0) {
> -		ret = rx_buf[total_length + phy->latency - 1];
> +		ret = phy->rx_buf[total_length + phy->latency - 1];
>  
> -		memcpy(tpm_data, rx_buf + total_length + phy->latency,
> +		memcpy(tpm_data, phy->rx_buf + total_length + phy->latency,
>  		       tpm_size);
>  	}
>  
> @@ -328,9 +331,6 @@ static int st33zp24_spi_probe(struct spi_device *dev)
>  			return ret;
>  	}
>  
> -	phy->spi_xfer.tx_buf = phy->tx_buf;
> -	phy->spi_xfer.rx_buf = phy->rx_buf;
> -
>  	phy->latency = st33zp24_spi_evaluate_latency(phy);
>  	if (phy->latency <= 0)
>  		return -ENODEV;
> -- 
> 2.5.0
> 

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
diff mbox

Patch

diff --git a/drivers/char/tpm/st33zp24/spi.c b/drivers/char/tpm/st33zp24/spi.c
index 08ffbfe..41c11c9 100644
--- a/drivers/char/tpm/st33zp24/spi.c
+++ b/drivers/char/tpm/st33zp24/spi.c
@@ -66,7 +66,7 @@ 
 
 struct st33zp24_spi_phy {
 	struct spi_device *spi_device;
-	struct spi_transfer spi_xfer;
+
 	u8 tx_buf[ST33ZP24_SPI_BUFFER_SIZE];
 	u8 rx_buf[ST33ZP24_SPI_BUFFER_SIZE];
 
@@ -113,28 +113,30 @@  static int st33zp24_spi_send(void *phy_id, u8 tpm_register, u8 *tpm_data,
 	int total_length = 0, ret = 0;
 	struct st33zp24_spi_phy *phy = phy_id;
 	struct spi_device *dev = phy->spi_device;
-	u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf;
-	u8 *rx_buf = phy->spi_xfer.rx_buf;
+	struct spi_transfer spi_xfer = {
+		.tx_buf = phy->tx_buf,
+		.rx_buf = phy->rx_buf,
+	};
 
 	/* Pre-Header */
-	tx_buf[total_length++] = TPM_WRITE_DIRECTION | LOCALITY0;
-	tx_buf[total_length++] = tpm_register;
+	phy->tx_buf[total_length++] = TPM_WRITE_DIRECTION | LOCALITY0;
+	phy->tx_buf[total_length++] = tpm_register;
 
 	if (tpm_size > 0 && tpm_register == TPM_DATA_FIFO) {
-		tx_buf[total_length++] = tpm_size >> 8;
-		tx_buf[total_length++] = tpm_size;
+		phy->tx_buf[total_length++] = tpm_size >> 8;
+		phy->tx_buf[total_length++] = tpm_size;
 	}
 
-	memcpy(&tx_buf[total_length], tpm_data, tpm_size);
+	memcpy(&phy->tx_buf[total_length], tpm_data, tpm_size);
 	total_length += tpm_size;
 
-	memset(&tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency);
+	memset(&phy->tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency);
 
-	phy->spi_xfer.len = total_length + phy->latency;
+	spi_xfer.len = total_length + phy->latency;
 
-	ret = spi_sync_transfer(dev, &phy->spi_xfer, 1);
+	ret = spi_sync_transfer(dev, &spi_xfer, 1);
 	if (ret == 0)
-		ret = rx_buf[total_length + phy->latency - 1];
+		ret = phy->rx_buf[total_length + phy->latency - 1];
 
 	return st33zp24_status_to_errno(ret);
 } /* st33zp24_spi_send() */
@@ -154,24 +156,25 @@  static int st33zp24_spi_read8_reg(void *phy_id, u8 tpm_register, u8 *tpm_data,
 	int total_length = 0, ret;
 	struct st33zp24_spi_phy *phy = phy_id;
 	struct spi_device *dev = phy->spi_device;
-	u8 *tx_buf = (u8 *)phy->spi_xfer.tx_buf;
-	u8 *rx_buf = phy->spi_xfer.rx_buf;
+	struct spi_transfer spi_xfer = {
+		.tx_buf = phy->tx_buf,
+		.rx_buf = phy->rx_buf,
+	};
 
 	/* Pre-Header */
-	tx_buf[total_length++] = LOCALITY0;
-	tx_buf[total_length++] = tpm_register;
+	phy->tx_buf[total_length++] = LOCALITY0;
+	phy->tx_buf[total_length++] = tpm_register;
 
-	memset(&tx_buf[total_length], TPM_DUMMY_BYTE,
-	       phy->latency + tpm_size);
+	memset(&phy->tx_buf[total_length], TPM_DUMMY_BYTE, phy->latency + tpm_size);
 
-	phy->spi_xfer.len = total_length + phy->latency + tpm_size;
+	spi_xfer.len = total_length + phy->latency + tpm_size;
 
 	/* header + status byte + size of the data + status byte */
-	ret = spi_sync_transfer(dev, &phy->spi_xfer, 1);
+	ret = spi_sync_transfer(dev, &spi_xfer, 1);
 	if (tpm_size > 0 && ret == 0) {
-		ret = rx_buf[total_length + phy->latency - 1];
+		ret = phy->rx_buf[total_length + phy->latency - 1];
 
-		memcpy(tpm_data, rx_buf + total_length + phy->latency,
+		memcpy(tpm_data, phy->rx_buf + total_length + phy->latency,
 		       tpm_size);
 	}
 
@@ -328,9 +331,6 @@  static int st33zp24_spi_probe(struct spi_device *dev)
 			return ret;
 	}
 
-	phy->spi_xfer.tx_buf = phy->tx_buf;
-	phy->spi_xfer.rx_buf = phy->rx_buf;
-
 	phy->latency = st33zp24_spi_evaluate_latency(phy);
 	if (phy->latency <= 0)
 		return -ENODEV;