aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/calxeda
diff options
context:
space:
mode:
authorRob Herring <rob.herring@calxeda.com>2012-07-09 10:16:10 -0400
committerDavid S. Miller <davem@davemloft.net>2012-07-11 02:25:47 -0400
commitf62a23a7cb601fb30c4a8b8a5ba1c6bb7f5148b3 (patch)
tree97a29b2e30920f2ad3b3948a7af4e633de160195 /drivers/net/ethernet/calxeda
parente36ce6eb2ba35b0b7335aef12731a96af9531055 (diff)
net: calxedaxgmac: enable rx cut-thru mode
Enabling RX cut-thru mode yields better performance as received frames start getting written to memory before a whole frame is received. Signed-off-by: Rob Herring <rob.herring@calxeda.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/calxeda')
-rw-r--r--drivers/net/ethernet/calxeda/xgmac.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/calxeda/xgmac.c b/drivers/net/ethernet/calxeda/xgmac.c
index abb8f40ec221..2b4b4f529ab4 100644
--- a/drivers/net/ethernet/calxeda/xgmac.c
+++ b/drivers/net/ethernet/calxeda/xgmac.c
@@ -264,7 +264,7 @@
264#define XGMAC_OMR_FEF 0x00000080 /* Forward Error Frames */ 264#define XGMAC_OMR_FEF 0x00000080 /* Forward Error Frames */
265#define XGMAC_OMR_DT 0x00000040 /* Drop TCP/IP csum Errors */ 265#define XGMAC_OMR_DT 0x00000040 /* Drop TCP/IP csum Errors */
266#define XGMAC_OMR_RSF 0x00000020 /* RX FIFO Store and Forward */ 266#define XGMAC_OMR_RSF 0x00000020 /* RX FIFO Store and Forward */
267#define XGMAC_OMR_RTC 0x00000010 /* RX Threshhold Ctrl */ 267#define XGMAC_OMR_RTC_256 0x00000018 /* RX Threshhold Ctrl */
268#define XGMAC_OMR_RTC_MASK 0x00000018 /* RX Threshhold Ctrl MASK */ 268#define XGMAC_OMR_RTC_MASK 0x00000018 /* RX Threshhold Ctrl MASK */
269 269
270/* XGMAC HW Features Register */ 270/* XGMAC HW Features Register */
@@ -982,7 +982,8 @@ static int xgmac_hw_init(struct net_device *dev)
982 writel(value, ioaddr + XGMAC_DMA_CONTROL); 982 writel(value, ioaddr + XGMAC_DMA_CONTROL);
983 983
984 /* Set the HW DMA mode and the COE */ 984 /* Set the HW DMA mode and the COE */
985 writel(XGMAC_OMR_TSF | XGMAC_OMR_RSF | XGMAC_OMR_RFD | XGMAC_OMR_RFA, 985 writel(XGMAC_OMR_TSF | XGMAC_OMR_RFD | XGMAC_OMR_RFA |
986 XGMAC_OMR_RTC_256,
986 ioaddr + XGMAC_OMR); 987 ioaddr + XGMAC_OMR);
987 988
988 /* Reset the MMC counters */ 989 /* Reset the MMC counters */