Michael Brown
66f7bcc785
Tidied up debug messages
2007-01-08 03:34:06 +00:00
Michael Brown
79c5f0ba04
Added PCI_BASE_CLASS() macro
2007-01-08 03:32:41 +00:00
Michael Brown
5af4918356
Added support for wildcard device/vendor ID matches
2007-01-08 03:23:38 +00:00
Michael Brown
20c9fc407e
Remove types and prototypes now provided in the undi*.h headers.
2007-01-08 03:05:34 +00:00
Michael Brown
a6ba48e51e
Added debugging statements
2007-01-08 03:04:54 +00:00
Michael Brown
239965ff3b
Added missing includes
2007-01-08 03:03:42 +00:00
Michael Brown
6115356859
Added missing declarations
2007-01-08 02:51:27 +00:00
Michael Brown
aff96c13d2
Added missing include
2007-01-08 02:51:04 +00:00
Michael Brown
afc01a1a7f
Split UNDI load/unload out into undiload.c.
2007-01-08 02:48:17 +00:00
Michael Brown
359c888aec
Remove obsolete includes
2007-01-08 02:39:56 +00:00
Michael Brown
6fc75f659b
Separated out UNDI ROM location code into undirom.c, and use struct
...
undi_rom rather than struct pxe_driver. (This is part of the naming
consistency fixes).
2007-01-08 02:38:10 +00:00
Michael Brown
675fe200e5
Use "struct undi_device" instead of "struct pxe_device", and use the
...
function prefix "undinet_" and the variable name "undinic" in undinet.c,
so that we can reserve the variable name "undi" for a struct undi_device.
The idea is that we preserve the Etherboot 5.4 convention that the "UNDI"
code refers to our using an underlying UNDI stack, while the "PXE" code
refers to our providing a PXE API.
2007-01-08 02:24:53 +00:00
Michael Brown
36c1e1aa57
Renamed undi.c to undinet.c. (undi.c will become the UNDI PCI driver)
2007-01-08 02:02:07 +00:00
Michael Brown
234d81728a
Obsolete
2007-01-08 02:00:55 +00:00
Michael Brown
7b9617f5df
Add device to hierarchy before calling the driver's probe() function; this
...
way everything remains consistent if the probe() ends up creating child
devices.
2007-01-08 01:29:51 +00:00
Michael Brown
d3558fdd3a
Remove accidentally checked-in code
2007-01-07 19:05:28 +00:00
Michael Brown
85a41b25fe
Move START_UNDI, UNDI_STARTUP, UNDI_INITIALIZE and
...
UNDI_GET_INFORMATION calls into drivers/net/undi.c. undi_probe() now
gets given a pxe_device representing a PXE stack that has been loaded
into memory but not initialised in any way.
2007-01-07 19:02:17 +00:00
Michael Brown
23cb837951
Remember to enable/disable the interrupt at the PIC.
...
Handle failures in undi_open() properly.
2007-01-07 13:31:39 +00:00
Michael Brown
9ab5c0dde7
Remove redundant debug message
2007-01-05 16:15:50 +00:00
Michael Brown
fa9055197d
UNDI loader routine now works
2007-01-05 16:11:05 +00:00
Michael Brown
477a70697a
Added PnP BIOS scanning code, separated out from the UNDI driver
2007-01-05 16:10:03 +00:00
Marty Connor
7dee2556f4
Fixed typo
2007-01-05 16:09:47 +00:00
Michael Brown
d0a3cc3417
Avoid creating implicit memcpy()s
2007-01-05 14:48:20 +00:00
Michael Brown
9780fef360
Partial implementation of UNDI loader caller.
2007-01-05 03:24:39 +00:00
Michael Brown
0638945c7e
Add PXE driver-scanning code, capable of locating all PXE ROMs in a system
...
and matching them up to (e.g. PCI) devices.
2007-01-05 01:52:06 +00:00
Michael Brown
ef50ea0b2b
Renamed undi_net.c to undi.c.
2007-01-04 19:43:35 +00:00
Michael Brown
6cf488dcf7
Obsolete; net driver functionality is now in undi_net.c and bus driver
...
functionality is now in pxebus.c. (Not all bus functionality is ported
across yet.)
2007-01-04 19:42:05 +00:00
Michael Brown
7e07dfb2f4
Added PXE bus driver (with support only for using PXE structures found
...
lying about in memory, not for loading from ROM), and UNDI net driver.
2007-01-04 19:38:34 +00:00
Michael Brown
e28db95de6
Obsolete
2007-01-04 19:37:31 +00:00
Michael Brown
3b2f6e4585
Currently unusable; do not attempt to compile
2007-01-04 19:37:21 +00:00
Michael Brown
70acce06e4
This file is no longer used
2007-01-04 19:36:31 +00:00
Michael Brown
b12cd68726
Ripped out everything except the ability to send EOI to the PIC.
2007-01-04 19:36:18 +00:00
Michael Brown
de2fc50f4c
Add as a separate file so that we can do "make bin/xxxx.kpxe" rather than
...
having to edit PXELOADER_KEEP_ALL as a config option.
2007-01-04 19:35:10 +00:00
Michael Brown
350603cb86
Don't include __FUNCTION__ in assert() messages; it was causing the
...
function name to appear within the objects even in non-asserting
builds. (This could be considered a gcc bug.)
Removing __FUNCTION__ from assert() reduces the size of bin/blib.a by
around 2.5%!
2007-01-04 13:48:13 +00:00
Michael Brown
20681d6168
Allow empty checksums on received packets
2007-01-04 05:17:28 +00:00
Michael Brown
290c5ee779
Don't automatically call gateA20_set() when returning from a real-mode
...
call.
2007-01-04 04:32:18 +00:00
Michael Brown
0c03bb5a9a
Make open() and close() an official part of the netdevice API.
...
Call netdevice's poll() and transmit() methods only when device is open.
2007-01-04 04:20:08 +00:00
Michael Brown
d4894f0127
We *should* use the persistent reference API for our netdev reference,
...
but there's so much else missing that it's not worth doing right now.
2007-01-04 03:44:36 +00:00
Michael Brown
7fafa89258
A DHCP session holds a persistent reference to a network device
2007-01-04 03:42:28 +00:00
Michael Brown
ac53da1790
Added missing #include
2007-01-04 03:40:07 +00:00
Michael Brown
b29861a5aa
IPv6 minirouting table entries hold persistent references to net devices.
2007-01-04 03:28:30 +00:00
Michael Brown
b22d4405c0
An AoE session holds a persistent reference to a net device.
2007-01-04 03:21:45 +00:00
Michael Brown
35b5e5d3f5
Minirouting table entries hold a persistent reference to a net_device.
2007-01-04 03:10:21 +00:00
Michael Brown
bdf79ec8dc
Use hotplug support to notify persistent reference holders when a
...
net_device is unregistered.
2007-01-04 03:09:28 +00:00
Michael Brown
0063725d28
Minimal hotplug support: provide a facility for notifying persistent
...
reference holders that their reference is about to become invalid.
2007-01-04 03:08:16 +00:00
Michael Brown
b0daa99dce
Send RST packets when we get a non-matching connection, or receive an
...
out-of-range ACK.
2007-01-03 22:21:59 +00:00
Michael Brown
eea1167a85
Accept RST on received packets
2007-01-03 21:51:36 +00:00
Michael Brown
94fc68895d
Improve consistency between TCP and UDP RX datapaths
2007-01-03 21:13:11 +00:00
Michael Brown
a0525a4ed3
Verify checksums on the RX datapath.
...
Simplify checksum generation on the TX datapath.
2007-01-03 20:48:52 +00:00
Michael Brown
285beeff7c
Tidy up debug messages
...
Move routing into a separate function
2007-01-03 16:39:11 +00:00