summaryrefslogtreecommitdiffstats
path: root/src/arch/i386/interface/syslinux
diff options
context:
space:
mode:
authorMichael Brown2009-06-23 22:54:50 +0200
committerMichael Brown2009-06-23 22:54:50 +0200
commit4f881ae35262d4e788507a9e4712a5eae4f26310 (patch)
tree01dcfce8c0234db112d8e67e8cc6fa80b9b3dde1 /src/arch/i386/interface/syslinux
parent[rtl8139] Split debug messages into DBGLVL_LOG and DBGLVL_EXTRA (diff)
downloadipxe-4f881ae35262d4e788507a9e4712a5eae4f26310.tar.gz
ipxe-4f881ae35262d4e788507a9e4712a5eae4f26310.tar.xz
ipxe-4f881ae35262d4e788507a9e4712a5eae4f26310.zip
[pxe] Fix interoperability with the 3Com DOS UNDI driver
The 3Com DOS UNDI driver fails when run on top of gPXE for two reasons: firstly because PXENV_UNDI_SET_PACKET_FILTER is unsupported, and secondly because gPXE enters the NBP without enabling interrupts on the NIC, and the 3Com driver never calls PXENV_UNDI_OPEN. Fix by always returning success from PXENV_UNDI_SET_PACKET_FILTER (which is no worse than the current situation, since we already ignore the receive packet filter in PXENV_UNDI_OPEN), and by forcibly enabling interrupts on the NIC within PXENV_UNDI_TRANSMIT. The latter is something of a hack, but avoids the need to implement a complete base-code ISR that we would otherwise need if we were to enter the NBP with interrupts enabled.
Diffstat (limited to 'src/arch/i386/interface/syslinux')
0 files changed, 0 insertions, 0 deletions