From: Rob Herring <rob.herring@calxeda.com>
Date: Fri, 30 Aug 2013 21:49:20 +0000 (-0500)
Subject: net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=ef07387faf33a95e011993200902d490b605407d;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git

net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len

xgmac_desc_get_buf_len appears to have a copy/paste error. flags is the
wrong field to read. We should be reading buf_size field. cpu_to_le32
should also be le32_to_cpu. This never really mattered as this function
is only used for DMA mapping calls which happen to be nops with coherent
DMA.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---

diff --git a/drivers/net/ethernet/calxeda/xgmac.c b/drivers/net/ethernet/calxeda/xgmac.c
index 71f67206ba3a..d41af68ccb63 100644
--- a/drivers/net/ethernet/calxeda/xgmac.c
+++ b/drivers/net/ethernet/calxeda/xgmac.c
@@ -421,7 +421,7 @@ static inline void desc_set_buf_len(struct xgmac_dma_desc *p, u32 buf_sz)
 
 static inline int desc_get_buf_len(struct xgmac_dma_desc *p)
 {
-	u32 len = cpu_to_le32(p->flags);
+	u32 len = le32_to_cpu(p->buf_size);
 	return (len & DESC_BUFFER1_SZ_MASK) +
 		((len & DESC_BUFFER2_SZ_MASK) >> DESC_BUFFER2_SZ_OFFSET);
 }