diff --git a/bochs/patches/patch.ne2k-start-bit b/bochs/patches/patch.ne2k-start-bit new file mode 100644 index 000000000..ded183f58 --- /dev/null +++ b/bochs/patches/patch.ne2k-start-bit @@ -0,0 +1,46 @@ +---------------------------------------------------------------------- +Patch name: patch.ne2k-start-bit +Author: ece lca +Date: Wed, 8 Aug 2001 17:53:06 -0700 (PDT) +RCS Id: $Id: patch.ne2k-start-bit,v 1.1 2001-08-10 17:19:18 bdenney Exp $ + +Detailed description: +I compiled Bochs on Linux and installed a linux +in it, but when I ping a machine on my LAN, I get +packet loss. Sometimes as much as 70% is lost. +So I read ne2k.cc, Linux 8390 driver and 8390 chip +specification. I find that 8390 command register START +bit is misused in ne2k.cc. According to the chip +specification, even if START=0, the chip does not stop +working. + +Patch was created with: + cvs diff -c +Apply patch to what version: + CVS +Instructions: + To patch, go to main bochs directory. + Type "patch -p0 < THIS_PATCH_FILE". +---------------------------------------------------------------------- +RCS file: /cvsroot/bochs/bochs/iodev/ne2k.cc,v +retrieving revision 1.18 +diff -c -r1.18 ne2k.cc +*** iodev/ne2k.cc 2001/06/27 20:27:49 1.18 +--- iodev/ne2k.cc 2001/08/10 17:15:45 +*************** +*** 1063,1069 **** + + BX_DEBUG(("rx_frame with length %d", io_len)); + +! if ((BX_NE2K_THIS s.CR.start == 0) || + (BX_NE2K_THIS s.page_start == 0) || + (BX_NE2K_THIS s.TCR.loop_cntl != 0)) { + return; +--- 1063,1069 ---- + + BX_DEBUG(("rx_frame with length %d", io_len)); + +! if ((BX_NE2K_THIS s.CR.stop == 0) || + (BX_NE2K_THIS s.page_start == 0) || + (BX_NE2K_THIS s.TCR.loop_cntl != 0)) { + return;