Ver código fonte

[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 12 anos atrás
pai
commit
6d72b498c2
1 arquivos alterados com 4 adições e 0 exclusões
  1. 4
    0
      src/drivers/net/3c90x.c

+ 4
- 0
src/drivers/net/3c90x.c Ver arquivo

822
 
822
 
823
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdStallCtl, upUnStall);
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
 	/* enable packet transmission and reception */
829
 	/* enable packet transmission and reception */
826
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdTxEnable, 0);
830
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdTxEnable, 0);
827
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdRxEnable, 0);
831
 	a3c90x_internal_IssueCommand(inf_3c90x->IOAddr, cmdRxEnable, 0);

Carregando…
Cancelar
Salvar