From: Thomas Miletich Date: Mon, 19 Aug 2013 11:36:27 +0000 (+0200) Subject: [3c90x] Fix High-MTU packet reception X-Git-Tag: v1.20.1~1427 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6d72b498c2b20b8e833bfce99c30d70d6950d335;p=thirdparty%2Fipxe.git [3c90x] Fix High-MTU packet reception Prevent the card from flagging packets of 1518 bytes length as overlength. This fixes the High-MTU loopback test. Signed-off-by: Thomas Miletich Signed-off-by: Michael Brown --- diff --git a/src/drivers/net/3c90x.c b/src/drivers/net/3c90x.c index 364492bbc..853de2b52 100644 --- a/src/drivers/net/3c90x.c +++ b/src/drivers/net/3c90x.c @@ -822,6 +822,10 @@ static int a3c90x_open(struct net_device *netdev) a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdStallCtl, upUnStall); + /* set maximum allowed receive packet length */ + a3c90x_internal_SetWindow(inf_3c90x, winTxRxOptions3); + outl(RX_BUF_SIZE, inf_3c90x->IOAddr + regMaxPktSize_3_w); + /* enable packet transmission and reception */ a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdTxEnable, 0); a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdRxEnable, 0);