[U-Boot] [PATCH] microblaze: ll_temac driver: mask of length for newer h/w versions

John Linn john.linn at xilinx.com
Tue Dec 21 18:05:51 CET 2010


The LL TEMAC h/w changed at some point quite some time ago such that
the length field in the BD is used for other stuff also such that the
length needs to be masked correctly.  This change is backward
compatible with older h/w also.

This change was tested on the 12.2 EDK system on the SP605 board.

Signed-off-by: John Linn <john.linn at xilinx.com>
---
 drivers/net/xilinx_ll_temac.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/xilinx_ll_temac.c b/drivers/net/xilinx_ll_temac.c
index d73e22e..c31b943 100644
--- a/drivers/net/xilinx_ll_temac.c
+++ b/drivers/net/xilinx_ll_temac.c
@@ -344,7 +344,7 @@ static int xps_ll_temac_recv_sdma(struct eth_device *dev)
 		return 0;
 	}
 
-	length = rx_bd.app5;
+	length = rx_bd.app5 & 0x3FFF;
 	flush_cache ((u32)rx_bd.phys_buf_p, length);
 
 	rx_bd.buf_len = ETHER_MTU;
-- 
1.6.2.1



This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.




More information about the U-Boot mailing list