diff mbox

[net,v2] Altera TSE: Fix DMA secriptor length initialization

Message ID 1398720181-19450-1-git-send-email-tklauser@distanz.ch
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Tobias Klauser April 28, 2014, 9:23 p.m. UTC
sgdma_descrip is a function name as well as the name of a struct. In
sgdma_initialize(), we should initialize the descriptor length field
with the actual length of a descriptor not with the size of the
function. In order to prevent such things from happening in the future,
rename the function to sgdma_setup_descrip().

Found by sparse which yields the following warning:

drivers/net/ethernet/altera/altera_sgdma.c:74:30: warning: expression using sizeof on a function

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
---
v2: patchd rebase against current net tree

 drivers/net/ethernet/altera/altera_sgdma.c | 74 +++++++++++++++---------------
 1 file changed, 37 insertions(+), 37 deletions(-)

Comments

Vince Bridgers April 28, 2014, 10:37 p.m. UTC | #1
On Mon, Apr 28, 2014 at 4:23 PM, Tobias Klauser
<tobias.klauser@gmail.com> wrote:
> sgdma_descrip is a function name as well as the name of a struct. In
> sgdma_initialize(), we should initialize the descriptor length field
> with the actual length of a descriptor not with the size of the
> function. In order to prevent such things from happening in the future,
> rename the function to sgdma_setup_descrip().
>
> Found by sparse which yields the following warning:
>
> drivers/net/ethernet/altera/altera_sgdma.c:74:30: warning: expression using sizeof on a function
>
> Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
> ---
> v2: patchd rebase against current net tree
>

Thanks for the patch Tobias. Was the misspelling in the subject line
an oversight (secriptor -> descriptor) ?

All the best,

Vince
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tobias Klauser April 29, 2014, 7:05 a.m. UTC | #2
On 29 April 2014 00:37, Vince Bridgers <vbridgers2013@gmail.com> wrote:
> On Mon, Apr 28, 2014 at 4:23 PM, Tobias Klauser
> <tobias.klauser@gmail.com> wrote:
>> sgdma_descrip is a function name as well as the name of a struct. In
>> sgdma_initialize(), we should initialize the descriptor length field
>> with the actual length of a descriptor not with the size of the
>> function. In order to prevent such things from happening in the future,
>> rename the function to sgdma_setup_descrip().
>>
>> Found by sparse which yields the following warning:
>>
>> drivers/net/ethernet/altera/altera_sgdma.c:74:30: warning: expression using sizeof on a function
>>
>> Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
>> ---
>> v2: patchd rebase against current net tree
>>
>
> Thanks for the patch Tobias. Was the misspelling in the subject line
> an oversight (secriptor -> descriptor) ?

Yes, this was an oversight, sorry. Thanks for pointing out.

Dave, shall I send an updated patch with the correct subject line or can
you fix it up before applying?

Thanks
Tobias
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller April 29, 2014, 5:52 p.m. UTC | #3
From: Tobias Klauser <tobias.klauser@gmail.com>
Date: Tue, 29 Apr 2014 09:05:21 +0200

> Dave, shall I send an updated patch with the correct subject line or can
> you fix it up before applying?

I can take care of it, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller April 30, 2014, 8:14 p.m. UTC | #4
From: Tobias Klauser <tobias.klauser@gmail.com>
Date: Mon, 28 Apr 2014 23:23:01 +0200

> sgdma_descrip is a function name as well as the name of a struct. In
> sgdma_initialize(), we should initialize the descriptor length field
> with the actual length of a descriptor not with the size of the
> function. In order to prevent such things from happening in the future,
> rename the function to sgdma_setup_descrip().
> 
> Found by sparse which yields the following warning:
> 
> drivers/net/ethernet/altera/altera_sgdma.c:74:30: warning: expression using sizeof on a function
> 
> Signed-off-by: Tobias Klauser <tklauser@distanz.ch>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/ethernet/altera/altera_sgdma.c b/drivers/net/ethernet/altera/altera_sgdma.c
index 4bcdd34..9ce8630 100644
--- a/drivers/net/ethernet/altera/altera_sgdma.c
+++ b/drivers/net/ethernet/altera/altera_sgdma.c
@@ -20,15 +20,15 @@ 
 #include "altera_sgdmahw.h"
 #include "altera_sgdma.h"
 
-static void sgdma_descrip(struct sgdma_descrip *desc,
-			  struct sgdma_descrip *ndesc,
-			  dma_addr_t ndesc_phys,
-			  dma_addr_t raddr,
-			  dma_addr_t waddr,
-			  u16 length,
-			  int generate_eop,
-			  int rfixed,
-			  int wfixed);
+static void sgdma_setup_descrip(struct sgdma_descrip *desc,
+				struct sgdma_descrip *ndesc,
+				dma_addr_t ndesc_phys,
+				dma_addr_t raddr,
+				dma_addr_t waddr,
+				u16 length,
+				int generate_eop,
+				int rfixed,
+				int wfixed);
 
 static int sgdma_async_write(struct altera_tse_private *priv,
 			      struct sgdma_descrip *desc);
@@ -71,7 +71,7 @@  int sgdma_initialize(struct altera_tse_private *priv)
 		      SGDMA_CTRLREG_INTEN |
 		      SGDMA_CTRLREG_ILASTD;
 
-	priv->sgdmadesclen = sizeof(sgdma_descrip);
+	priv->sgdmadesclen = sizeof(struct sgdma_descrip);
 
 	INIT_LIST_HEAD(&priv->txlisthd);
 	INIT_LIST_HEAD(&priv->rxlisthd);
@@ -195,15 +195,15 @@  int sgdma_tx_buffer(struct altera_tse_private *priv, struct tse_buffer *buffer)
 	if (sgdma_txbusy(priv))
 		return 0;
 
-	sgdma_descrip(cdesc,			/* current descriptor */
-		      ndesc,			/* next descriptor */
-		      sgdma_txphysaddr(priv, ndesc),
-		      buffer->dma_addr,		/* address of packet to xmit */
-		      0,			/* write addr 0 for tx dma */
-		      buffer->len,		/* length of packet */
-		      SGDMA_CONTROL_EOP,	/* Generate EOP */
-		      0,			/* read fixed */
-		      SGDMA_CONTROL_WR_FIXED);	/* Generate SOP */
+	sgdma_setup_descrip(cdesc,			/* current descriptor */
+			    ndesc,			/* next descriptor */
+			    sgdma_txphysaddr(priv, ndesc),
+			    buffer->dma_addr,		/* address of packet to xmit */
+			    0,				/* write addr 0 for tx dma */
+			    buffer->len,		/* length of packet */
+			    SGDMA_CONTROL_EOP,		/* Generate EOP */
+			    0,				/* read fixed */
+			    SGDMA_CONTROL_WR_FIXED);	/* Generate SOP */
 
 	pktstx = sgdma_async_write(priv, cdesc);
 
@@ -309,15 +309,15 @@  u32 sgdma_rx_status(struct altera_tse_private *priv)
 
 
 /* Private functions */
-static void sgdma_descrip(struct sgdma_descrip *desc,
-			  struct sgdma_descrip *ndesc,
-			  dma_addr_t ndesc_phys,
-			  dma_addr_t raddr,
-			  dma_addr_t waddr,
-			  u16 length,
-			  int generate_eop,
-			  int rfixed,
-			  int wfixed)
+static void sgdma_setup_descrip(struct sgdma_descrip *desc,
+				struct sgdma_descrip *ndesc,
+				dma_addr_t ndesc_phys,
+				dma_addr_t raddr,
+				dma_addr_t waddr,
+				u16 length,
+				int generate_eop,
+				int rfixed,
+				int wfixed)
 {
 	/* Clear the next descriptor as not owned by hardware */
 	u32 ctrl = ndesc->control;
@@ -367,15 +367,15 @@  static int sgdma_async_read(struct altera_tse_private *priv)
 			return 0;
 		}
 
-		sgdma_descrip(cdesc,		/* current descriptor */
-			      ndesc,		/* next descriptor */
-			      sgdma_rxphysaddr(priv, ndesc),
-			      0,		/* read addr 0 for rx dma */
-			      rxbuffer->dma_addr, /* write addr for rx dma */
-			      0,		/* read 'til EOP */
-			      0,		/* EOP: NA for rx dma */
-			      0,		/* read fixed: NA for rx dma */
-			      0);		/* SOP: NA for rx DMA */
+		sgdma_setup_descrip(cdesc,		/* current descriptor */
+				    ndesc,		/* next descriptor */
+				    sgdma_rxphysaddr(priv, ndesc),
+				    0,			/* read addr 0 for rx dma */
+				    rxbuffer->dma_addr, /* write addr for rx dma */
+				    0,			/* read 'til EOP */
+				    0,			/* EOP: NA for rx dma */
+				    0,			/* read fixed: NA for rx dma */
+				    0);			/* SOP: NA for rx DMA */
 
 		dma_sync_single_for_device(priv->device,
 					   priv->rxdescphys,