Virgin import of Xircom PCCARD driver v1.16.
v1.16 (1999/03/08) fixed BPF input hang and infinite loop on CE2 short-packet output. Developed by: Scott Mitchell <scott@uk.freebsd.org> Obtained from: http://www.freebsd-uk.eu.org/~scott/xe_drv/
This commit is contained in:
parent
f69b347623
commit
bd49f2f01b
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/vendor-sys/xe/dist/; revision=47142 svn path=/vendor-sys/xe/1.16/; revision=47144; tag=vendor/xe/1.16
@ -23,7 +23,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: if_xe.c,v 1.15 1999/03/05 12:11:40 root Exp $
|
||||
* $Id: if_xe.c,v 1.16 1999/03/08 16:28:50 root Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -1112,8 +1112,8 @@ xe_card_intr(struct pccard_devinfo *devi) {
|
||||
mbp->m_data += ETHER_HDR_LEN; /* Strip off Ethernet header */
|
||||
ether_input(ifp, ehp, mbp); /* Send the packet on its way */
|
||||
ifp->if_ipackets++; /* Success! */
|
||||
XE_OUTW(XE_DOR, 0x8000); /* skip_rx_packet command */
|
||||
}
|
||||
XE_OUTW(XE_DOR, 0x8000); /* skip_rx_packet command */
|
||||
}
|
||||
}
|
||||
else if (rsr & XE_RSR_LONG_PKT) { /* Packet length >1518 bytes */
|
||||
@ -1829,8 +1829,10 @@ xe_pio_write_packet(struct xe_softc *scp, struct mbuf *mbp) {
|
||||
if (scp->ce3)
|
||||
XE_OUTB(XE_CR, XE_CR_TX_PACKET|XE_CR_ENABLE_INTR);
|
||||
else
|
||||
while (pad > 0)
|
||||
XE_OUTW(XE_EDP, 0xfeed);
|
||||
while (pad > 0) {
|
||||
XE_OUTW(XE_EDP, 0xdead);
|
||||
pad--;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user