Michael Brown
adf192f566
Shrink cpu.c and render it useful for our purposes.
17 years ago
Michael Brown
25fd42ca87
Reduced etherboot.h dependencies to avoid unnecessary rebuilds.
etherboot.h is only now used by drivers that have not been updated to
the new API.
17 years ago
Michael Brown
e330db3c74
Dead code removal.
Kill off use of etherboot.h outside drivers/net.
17 years ago
Michael Brown
95c07736cb
Be more aggressive in attempts to enable A20, now that we have the
optimisation of only trying to do so when necessary.
17 years ago
Michael Brown
8624fdc445
Kill off the enforced RX quota; it only seems to hurt on real hardware.
17 years ago
Michael Brown
57b5e227ff
Use fast in-situ test for gate A20 being set, to cut down on the
number of (potentially very slow) gateA20_set operations.
Die with a fatal error if we are unable to set gate A20; if this fails
then we are bound to experience memory corruption at a later stage,
and I'd prefer to pick it up early.
17 years ago
Michael Brown
096fa94f0c
Add support for TCP timestamps
17 years ago
Michael Brown
eb530845d4
Adjust received length to take into account any already-received data
in tcp_rx_data().
Clarify comments on discarding duplicate or out-of-order data.
17 years ago
Michael Brown
d5735c631c
Avoid reusing auto-allocated ports after connection close.
17 years ago
Michael Brown
2ac7694c3e
Improve error reporting for strange length combinations reported by
the UNDI stack.
Ignore obviously invalid length combinations (as returned by
e.g. VMWare's PXE stack).
Limit to one packet per poll to avoid memory exhaustion.
17 years ago
Michael Brown
efd322091d
Set up %ds *before* testing a value in our data segment (d'oh!).
Always send EOI; do not chain to BIOS's default interrupt handler.
They are just too unpredictable; at least VMware's seems to kill the
machine if you go anywhere near it.
Disable interrupts after return from PXENV_UNDI_ISR, just in case some
dumb PXE stack enables them.
17 years ago
Michael Brown
f6f9a3098d
Report RX errors via netdev_rx_err()
17 years ago
Michael Brown
fb16f90699
Dump first 64 bytes of chained ISR when debugging is enabled.
17 years ago
Michael Brown
b3e44a24b1
May be required in some disconnect scenarios
17 years ago
Michael Brown
4075f7596b
Unplug before sending close() message, to avoid screwing up interfaces
which respond to close with a reopen() (e.g. iSCSI).
17 years ago
Michael Brown
d3ad76bc74
Add debug messages to process.c
17 years ago
Michael Brown
edc4648c39
Protect ISR against failure to unhook.
17 years ago
Michael Brown
4e14b020a5
Master IRQ should be EOIed first, I think.
17 years ago
Michael Brown
19871cbb96
We probably ought not to call INT13 with interrupts disabled.
17 years ago
Michael Brown
027fed72c1
Working code to call the PXE stack from within the ISR.
17 years ago
Michael Brown
976a8514cb
Hopefully solve the problem requiring the occasional "rm -rf bin/deps".
17 years ago
Michael Brown
cd7e296cbe
Always increase number of BIOS drives when registering
17 years ago
Michael Brown
b90d321dfb
Change %dl fixup rules for INT13:
INT 13,08 : read number of drives from 40:75
INT 13,15 : do nothing
all others : restore original value of %dl
17 years ago
Michael Brown
c7d9fdb5b9
Proof of concept; works, but has several hard-coded hacks.
17 years ago
Michael Brown
8bce52d348
Set CF by default, clear on success (rather than clearing and setting
on failure).
17 years ago
Michael Brown
f0c44f2f71
Remove xfer_ready() (it has been replaced by xfer_window())
17 years ago
Michael Brown
55d03ccbe3
Added missing "static"
17 years ago
Michael Brown
9dc6a1e678
Remove some obsolete stream-API files
17 years ago
Holger Lubitz
4ff85d9f15
Add -mpreferred-stack-boundary=2 to i386 CFLAGS as it's almost always a win.
17 years ago
Holger Lubitz
bfc4737751
Update Makefile for compilation on ARCH=x86_64
17 years ago
Michael Brown
487dc5be56
Fix up iscsiboot missing prototype warnings
17 years ago
Michael Brown
fd4fcb57db
Add missing static
17 years ago
Michael Brown
fabd0f5fec
Fix TX state machine and miscellaneous other bits.
17 years ago
Michael Brown
ef9fd938d0
Fix root-path parsing.
17 years ago
Michael Brown
cc80750694
Merge branch 'master' into iscsi-update
17 years ago
Michael Brown
7137c20ed1
Add strcspn() and strndup()
17 years ago
Michael Brown
ed20fee0cf
Make ref_get() return the reference, for cleaner code.
17 years ago
Michael Brown
b94420a52b
Ready to start testing
17 years ago
Michael Brown
edd1b173a7
Code in place to use a hypothetical SCSI interface.
17 years ago
Michael Brown
f2fa390ae6
Everything except the SCSI interface should now be present
17 years ago
Michael Brown
9b28b25332
iSCSI updated to use data-xfer interface on the socket side (TCP).
SCSI interface not yet implemented.
17 years ago
Michael Brown
edded7546e
Limit xmit window to one MTU. (Path MTU discovery not yet
implemented; should be done at some point.)
17 years ago
Michael Brown
3e1dd0772a
Fix typo that was preventing any DHCP option applicators from being
applied.
17 years ago
Michael Brown
237e23c1c9
Add debug message when nameserver setting is applied/changed via DHCP.
17 years ago
Michael Brown
35afb379af
TCP limits advertised TCP window to size of application window
obtained via xfer_window().
17 years ago
Michael Brown
b34d4d0449
Separate the "is data ready" function of xfer_seek() into an
xfer_window() function, which can return a scalar rather than a
boolean.
17 years ago
Michael Brown
ca4c6f9eee
Kill off unused request() method in data-xfer interface.
17 years ago
Michael Brown
e5d8ede978
Re-added symtab to CLEANUP list
17 years ago
Michael Brown
e505ceb942
Revert "Cope with builds with differing debug options within a second of each"
This reverts commit fc5f6c9de2 .
Reverted commit breaks the much more common case of changing the debug
options in subsequent builds without any code changes.
17 years ago
Michael Brown
4c418d2100
Use net_device_operations structure and netdev_nullify() to allow for
safe dropping of the netdev ref by the driver while other refs still
exist.
Add netdev_irq() method. Net device open()/close() methods should no
longer enable or disable IRQs.
Remove rx_quota; it wasn't used anywhere and added too much complexity
to implementing correct interrupt-masking behaviour in pxe_undi.c.
17 years ago