Michael Brown [Wed, 4 Jul 2007 01:25:07 +0000 (02:25 +0100)]
Fix typo
Michael Brown [Wed, 4 Jul 2007 01:24:24 +0000 (02:24 +0100)]
Cope with builds with differing debug options within a second of each
other.
Michael Brown [Tue, 3 Jul 2007 22:41:35 +0000 (23:41 +0100)]
Add (untested) UNDI loader C-level implementation.
Michael Brown [Tue, 3 Jul 2007 22:10:16 +0000 (23:10 +0100)]
Merge branch 'master' of rom.etherboot.org:/gpxe
Michael Brown [Tue, 3 Jul 2007 22:09:56 +0000 (23:09 +0100)]
Separated out initialisation functions from startup/shutdown functions.
Marty Connor [Tue, 3 Jul 2007 20:24:06 +0000 (16:24 -0400)]
remove obsolete file: src/arch/i386/prefix/int19exit.c
Michael Brown [Tue, 3 Jul 2007 20:22:12 +0000 (21:22 +0100)]
Added missing line to set return status code.
Michael Brown [Tue, 3 Jul 2007 20:21:50 +0000 (21:21 +0100)]
Line buffer API changed a while ago
Marty Connor [Tue, 3 Jul 2007 20:20:54 +0000 (16:20 -0400)]
Warnings purge iscsiboot.c
Michael Brown [Tue, 3 Jul 2007 20:12:54 +0000 (21:12 +0100)]
Added missing "extern"
Michael Brown [Tue, 3 Jul 2007 20:09:26 +0000 (21:09 +0100)]
Merge branch 'master' of rom.etherboot.org:/gpxe
Marty Connor [Tue, 3 Jul 2007 20:02:26 +0000 (16:02 -0400)]
Merge branch 'master' of /pub/scm/gpxe
Marty Connor [Tue, 3 Jul 2007 20:02:15 +0000 (16:02 -0400)]
Warnings purge: src/arch/i386, src/core/disk.c, ramdisk, autoboot
Michael Brown [Tue, 3 Jul 2007 19:39:47 +0000 (20:39 +0100)]
This comment is no longer relevant.
Michael Brown [Tue, 3 Jul 2007 19:39:30 +0000 (20:39 +0100)]
Should be using the generic device probe mechanism, when (if) they
eventually get updated.
Michael Brown [Tue, 3 Jul 2007 19:34:51 +0000 (20:34 +0100)]
We don't actually use the reset functions anywhere, and nothing really
provides them.
Michael Brown [Tue, 3 Jul 2007 19:21:16 +0000 (20:21 +0100)]
Move pxe_netdev and set_pxe_netdev to pxe_undi.c and remove
now-obsolete pxe.c.
Michael Brown [Tue, 3 Jul 2007 19:09:14 +0000 (20:09 +0100)]
Use a linker-table based system to automatically mark and start up
permanent processes, rather than requiring each one to have its own
initialisation function.
Marty Connor [Tue, 3 Jul 2007 17:20:54 +0000 (13:20 -0400)]
Merge branch 'master' of /pub/scm/gpxe
Marty Connor [Tue, 3 Jul 2007 17:20:22 +0000 (13:20 -0400)]
Warnings purge: src/{crypto,hci,net}
Michael Brown [Tue, 3 Jul 2007 17:17:14 +0000 (18:17 +0100)]
Implemented (untested) PXENV_START_UNDI.
Michael Brown [Tue, 3 Jul 2007 14:57:32 +0000 (15:57 +0100)]
Report our interface type as "gPXE" to avoid working around Etherboot
5.4 bugs when driving ourselves via UNDI.
Michael Brown [Tue, 3 Jul 2007 14:53:29 +0000 (15:53 +0100)]
Work around Etherboot 5.4 bug when multiple packets are received.
Michael Brown [Tue, 3 Jul 2007 14:37:56 +0000 (15:37 +0100)]
Kill off now-redundant _irq() methods.
Michael Brown [Tue, 3 Jul 2007 14:36:29 +0000 (15:36 +0100)]
Kill off PXENV_UNDI_FORCE_INTERRUPT support; we have no reason to
suspect that we need it, and implementing it would require needlessly
complicating the net device API.
Michael Brown [Tue, 3 Jul 2007 13:44:33 +0000 (14:44 +0100)]
Avoid double free on I/O buffer when rtl_transmit() returns failure.
Convert printf() to DBG(); printf() is not allowed in drivers.
Michael Brown [Tue, 3 Jul 2007 13:43:57 +0000 (14:43 +0100)]
It's not just Etherboot that fails to generate TX completions.
Michael Brown [Tue, 3 Jul 2007 12:55:45 +0000 (13:55 +0100)]
Never attempt to route the broadcast address.
Michael Brown [Tue, 3 Jul 2007 12:17:58 +0000 (13:17 +0100)]
Document TX completion bug.
Michael Brown [Tue, 3 Jul 2007 11:50:58 +0000 (12:50 +0100)]
Enable/disable interrupts in driver open/close.
Michael Brown [Tue, 3 Jul 2007 03:05:30 +0000 (04:05 +0100)]
Reserve space for link-layer header in pxenv_undi_transmit() when not
handed a P_UNKNOWN packet.
Michael Brown [Tue, 3 Jul 2007 02:34:08 +0000 (03:34 +0100)]
Enable/disable interrupts at open/close time.
Michael Brown [Mon, 2 Jul 2007 23:57:53 +0000 (00:57 +0100)]
Add missing call to free_iob() in pxenv_undi_isr().
Correct typo in pxenv_set_station_address().
Michael Brown [Mon, 2 Jul 2007 23:57:04 +0000 (00:57 +0100)]
Enable/disable interrupts on open/close.
Michael Brown [Mon, 2 Jul 2007 23:15:53 +0000 (00:15 +0100)]
Add trivial net device statistics (TX and RX packet count), reported
via UNDI API and also by ifstat command; may be useful for debugging.
Michael Brown [Mon, 2 Jul 2007 23:02:26 +0000 (00:02 +0100)]
Ensure that pxe_netdev is set before starting up PXE NBP.
Michael Brown [Mon, 2 Jul 2007 23:02:06 +0000 (00:02 +0100)]
Place netdev_open()/netdev_close() calls in appropriate places.
Michael Brown [Mon, 2 Jul 2007 22:49:00 +0000 (23:49 +0100)]
Add mechanism for providing TX completion events.
Marty Connor [Mon, 2 Jul 2007 19:36:19 +0000 (15:36 -0400)]
Merge branch 'master' of ssh://rom.etherboot.org/gpxe
Marty Connor [Mon, 2 Jul 2007 19:33:34 +0000 (15:33 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:29:37 +0000 (15:29 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:28:55 +0000 (15:28 -0400)]
Warnings purge
Marty Connor [Mon, 2 Jul 2007 19:26:40 +0000 (15:26 -0400)]
Warnings purge of src/core
Michael Brown [Mon, 2 Jul 2007 19:05:58 +0000 (20:05 +0100)]
Add untested support for UNDI transmit and receive.
Michael Brown [Mon, 2 Jul 2007 17:33:41 +0000 (18:33 +0100)]
Use a common base-memory packet buffer for DHCP construction (as used
by PXE and NBI) and UNDI packets (as used by undinet and UNDI).
Michael Brown [Mon, 2 Jul 2007 16:43:32 +0000 (17:43 +0100)]
pxe_netdev now holds a reference to the network device.
Use generic fields in struct device_description rather than assuming
that the struct device * is contained within a pci_device or
isapnp_device; this assumption is broken when using the undionly
driver.
Add PXENV_UNDI_SET_STATION_ADDRESS.
Michael Brown [Mon, 2 Jul 2007 02:14:27 +0000 (03:14 +0100)]
Build bochs with ne2000 support, and add sample lines in bochsrc.txt
to match.
Michael Brown [Mon, 2 Jul 2007 02:12:35 +0000 (03:12 +0100)]
Call shutdown() from pxenv_undi_shutdown(). Probably not totally
correct, but it's enough to get RIS working.
Michael Brown [Sun, 1 Jul 2007 21:04:19 +0000 (22:04 +0100)]
Improve debugging
Michael Brown [Sun, 1 Jul 2007 14:30:12 +0000 (15:30 +0100)]
Removing obsolete files.
Michael Brown [Sun, 1 Jul 2007 14:22:12 +0000 (15:22 +0100)]
Support cards such as natsemi which treat the data as little-endian
(i.e. LSB transmitted first on the wire), even though SPI commands and
addresses always have to be big-endian.
Michael Brown [Sun, 1 Jul 2007 02:22:28 +0000 (03:22 +0100)]
Can't use strncpy() to copy strings that aren't NUL-terminated to
begin with.
Michael Brown [Sat, 30 Jun 2007 23:37:29 +0000 (00:37 +0100)]
Hack together far enough to support ne2k-pci.
Michael Brown [Sat, 30 Jun 2007 23:36:48 +0000 (00:36 +0100)]
How has the legacy wrapper been working for the past month or so...?
Michael Brown [Sat, 30 Jun 2007 23:05:36 +0000 (00:05 +0100)]
DUMP_GDBSYM should not be enabled by default.
Michael Brown [Sat, 30 Jun 2007 21:59:15 +0000 (22:59 +0100)]
Add ability to resolve relative symbols as well as locate absolute ones.
Michael Brown [Sat, 30 Jun 2007 21:43:31 +0000 (22:43 +0100)]
Add gdbsym.c object to help with running gdb-to-qemu
Michael Brown [Sat, 30 Jun 2007 20:36:54 +0000 (21:36 +0100)]
Place the actual version string in .data16, rather than just the
pointer to it.
Michael Brown [Sat, 30 Jun 2007 14:56:00 +0000 (15:56 +0100)]
Implement the two UNDI API calls used by RIS.
Michael Brown [Sat, 30 Jun 2007 14:13:18 +0000 (15:13 +0100)]
Implement the "overwrite TFTP filename" Microsoft RIS bug workaround.
Michael Brown [Sat, 30 Jun 2007 13:56:35 +0000 (14:56 +0100)]
Separate out pxe_start_nbp() from pxe_image.c into pxe_call.c
Implement PXENV_RESTART_TFTP.
Michael Brown [Sat, 30 Jun 2007 00:32:53 +0000 (01:32 +0100)]
Don't build option-overloaded packets; they just confuse people (ISC
DHCPD and Windows RIS in particular).
Michael Brown [Fri, 29 Jun 2007 19:16:30 +0000 (20:16 +0100)]
I really, really screwed up the semantics of BufferSize and BufferLimit.
Michael Brown [Fri, 29 Jun 2007 00:42:59 +0000 (01:42 +0100)]
Windows RIS now gets as far as downloading NTLDR.
Michael Brown [Thu, 28 Jun 2007 23:15:36 +0000 (00:15 +0100)]
Initial notes on RIS
Michael Brown [Thu, 28 Jun 2007 22:37:49 +0000 (23:37 +0100)]
Fix stack on return from PXE NBP so that we can return properly.
Michael Brown [Thu, 28 Jun 2007 20:56:14 +0000 (21:56 +0100)]
Use internal real-mode stack from non-returnable prefixes
Michael Brown [Thu, 28 Jun 2007 20:50:36 +0000 (21:50 +0100)]
Revert "Move stack to below 0x7c00; leaving it at the default location"
This reverts commit
03ca71c38da9cc6df01ecd9ef16e97a0edb6a4e9.
Michael Brown [Thu, 28 Jun 2007 20:22:25 +0000 (21:22 +0100)]
Set current working URI based on TFTP server specified by DHCP.
Michael Brown [Thu, 28 Jun 2007 20:16:39 +0000 (21:16 +0100)]
Current bochs has a 128kB BIOS, not 64kB
Michael Brown [Thu, 28 Jun 2007 20:15:47 +0000 (21:15 +0100)]
Move stack to below 0x7c00; leaving it at the default location
(0x7ef4) tends to really screw up anything that loads at 0x7c00...
Michael Brown [Thu, 28 Jun 2007 18:28:26 +0000 (19:28 +0100)]
Obsoleted by downloader.c
Michael Brown [Thu, 28 Jun 2007 17:49:57 +0000 (18:49 +0100)]
Added missing config.[ch] lines for FTP protocol
Michael Brown [Thu, 28 Jun 2007 17:38:50 +0000 (18:38 +0100)]
Bugfix: iobuf->data always points to the start of the allocated
portion, not to the bit we want to currently write to...
Michael Brown [Thu, 28 Jun 2007 17:06:25 +0000 (18:06 +0100)]
Mildly ugly hack to force correct linkage.
Michael Brown [Thu, 28 Jun 2007 16:57:10 +0000 (17:57 +0100)]
Removed debugging statements that should not have been checked in.
Michael Brown [Thu, 28 Jun 2007 16:55:29 +0000 (17:55 +0100)]
Quick hack to get image booting working again
Michael Brown [Thu, 28 Jun 2007 14:22:20 +0000 (15:22 +0100)]
Use monojob and dhcp_configure_netdev().
Michael Brown [Thu, 28 Jun 2007 14:18:26 +0000 (15:18 +0100)]
Add dhcp_configure_netdev()
Michael Brown [Thu, 28 Jun 2007 13:53:12 +0000 (14:53 +0100)]
Added monojob controller in lieu of a full working shell.
Michael Brown [Thu, 28 Jun 2007 00:55:01 +0000 (01:55 +0100)]
Forgot to set initial session state. Now works!
Michael Brown [Thu, 28 Jun 2007 00:09:45 +0000 (01:09 +0100)]
Kill off job::start() (it was only ever added as part of an aborted
attempt at triggering TCP-related protocols to start).
Michael Brown [Wed, 27 Jun 2007 22:20:36 +0000 (23:20 +0100)]
Update DHCP to use data-xfer interface (not yet tested).
Michael Brown [Wed, 27 Jun 2007 13:48:31 +0000 (14:48 +0100)]
Kill off hotplug.h and just make net devices normal reference-counted
structures.
DHCP still broken and #if 0'd out.
Michael Brown [Wed, 20 Jun 2007 00:13:35 +0000 (01:13 +0100)]
Partial migration of UDP to data-xfer interface. (Will not link at
present; DHCP is broken).
Michael Brown [Wed, 20 Jun 2007 00:12:21 +0000 (01:12 +0100)]
Add iob_ensure_headroom() placeholder.
Michael Brown [Wed, 13 Jun 2007 15:28:32 +0000 (16:28 +0100)]
Treat URIs opened via xfer_open() and friends as relative to the
current working URI.
Michael Brown [Mon, 11 Jun 2007 22:54:51 +0000 (23:54 +0100)]
Add concept of "current working URI".
Michael Brown [Mon, 11 Jun 2007 22:40:34 +0000 (23:40 +0100)]
Remove unused headers.
Michael Brown [Mon, 11 Jun 2007 22:36:50 +0000 (23:36 +0100)]
DNS code now records a whole struct sockaddr for the name server.
Michael Brown [Mon, 11 Jun 2007 22:30:44 +0000 (23:30 +0100)]
Updated DNS to use not-yet-implemented UDP data-xfer API.
Michael Brown [Mon, 11 Jun 2007 20:36:22 +0000 (21:36 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Mon, 11 Jun 2007 20:36:10 +0000 (21:36 +0100)]
Renamed _calloc() to zalloc(), ready to be used as a standalone function.
Michael Brown [Mon, 11 Jun 2007 17:11:29 +0000 (18:11 +0100)]
Updated TFTP and PXE UDP API code to use not-yet-implemented data-xfer
UDP API.
Michael Brown [Mon, 11 Jun 2007 14:04:39 +0000 (15:04 +0100)]
Add concept of transfer metadata, to be used by UDP in order to
implement sendto()/recvfrom() equivalents.
Michael Brown [Sun, 10 Jun 2007 17:34:10 +0000 (18:34 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Sun, 10 Jun 2007 17:33:42 +0000 (18:33 +0100)]
Add missing call to free_iob().
Michael Brown [Sat, 9 Jun 2007 23:31:31 +0000 (00:31 +0100)]
Merge branch 'master' into mcb-tcp-xfer
Michael Brown [Sat, 9 Jun 2007 17:11:07 +0000 (18:11 +0100)]
Add our own trivial version of stdarg.h. This makes our build
entirely self-hosted (which avoids problems when building the same
tree on multiple systems - e.g. when you have /home NFS-mounted).
Also saves around 50 bytes in total - not sure why.
Michael Brown [Sat, 9 Jun 2007 21:58:27 +0000 (22:58 +0100)]
Merge branch 'master' into mcb-tcp-xfer