Browse Source

[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 <thomas.miletich@gmail.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Thomas Miletich 10 years ago
parent
commit
6d72b498c2
1 changed files with 4 additions and 0 deletions
  1. 4
    0
      src/drivers/net/3c90x.c

+ 4
- 0
src/drivers/net/3c90x.c View File

@@ -822,6 +822,10 @@ static int a3c90x_open(struct net_device *netdev)
822 822
 
823 823
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdStallCtl, upUnStall);
824 824
 
825
+	/* set maximum allowed receive packet length */
826
+	a3c90x_internal_SetWindow(inf_3c90x, winTxRxOptions3);
827
+	outl(RX_BUF_SIZE, inf_3c90x->IOAddr + regMaxPktSize_3_w);
828
+
825 829
 	/* enable packet transmission and reception */
826 830
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdTxEnable, 0);
827 831
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdRxEnable, 0);

Loading…
Cancel
Save