david/ipxe
david
/
ipxe
Archived
1
0
Fork 0
Commit Graph

451 Commits

Author SHA1 Message Date
Michael Brown 63482e4fe9 Made parse_url do more of the processing, to avoid duplicating parts of
nic.c in http.c
2005-05-01 19:10:04 +00:00
Michael Brown 17bb10479d Protocol names are x-slam and x-tftm 2005-05-01 15:50:08 +00:00
Michael Brown 6afffc0771 Updated to protocol API 2005-05-01 15:36:39 +00:00
Michael Brown 5c2e5557f0 Updated to protocol API 2005-05-01 15:26:44 +00:00
Michael Brown 1fdbbaa237 Removed obsolete prototypes. 2005-05-01 15:14:22 +00:00
Michael Brown 3af0af65a0 Updated to new protocol API, made to compile. 2005-05-01 15:08:39 +00:00
Michael Brown 2227a711fd umountall() handled by nfs.c's reset function 2005-05-01 15:08:19 +00:00
Michael Brown d727e144c1 nfs prototypes no longer required. 2005-05-01 15:07:55 +00:00
Michael Brown 52b3c8babe Add INIT_RPC 2005-05-01 15:07:35 +00:00
Michael Brown 85d9eae44e Moved protocols to proto/ 2005-05-01 14:04:11 +00:00
Michael Brown 0cfcd91558 Abort immediately if no nameserver is present. 2005-05-01 13:59:34 +00:00
Michael Brown bcedad4708 Add debugging for CNAME records.
Allow routines to be called by nmb.c
2005-05-01 11:30:26 +00:00
Michael Brown 3ae7a3d1f0 NMB packets are so similar to DNS packets; we may as well add NMB as a
name resolution method.
2005-05-01 11:10:17 +00:00
Michael Brown e1d6f3a8ac Add NMB_RESOLVER 2005-05-01 10:58:49 +00:00
Michael Brown 89f4fe4a8a Do not include etherboot.h 2005-05-01 10:40:12 +00:00
Michael Brown 552f33c663 Always request DNS server. DHCP handling will be generalised in future. 2005-04-30 19:39:50 +00:00
Michael Brown 138c987738 Straightforward A record resolution now known working. 2005-04-30 19:38:51 +00:00
Michael Brown 3b59bf559c ttl is a uint32_t 2005-04-30 19:38:31 +00:00
Michael Brown 78cdb1da8b DNS resolver rewritten, moved to proto/dns.c 2005-04-30 14:50:33 +00:00
Michael Brown d817e60d21 "dns_resolver" changed to "dns" 2005-04-30 14:49:41 +00:00
Michael Brown 167c26c92b tftp functions moved to proto/tftp.c 2005-04-30 14:46:49 +00:00
Michael Brown 5f45f14b5f tftp moved to separate file. 2005-04-30 14:46:18 +00:00
Michael Brown 06634dc386 Protocols get passed a pointer to the filename portion as well as just the
URL.
2005-04-30 14:45:51 +00:00
Michael Brown 5bec933c66 tftp prototypes moved to tftp.h 2005-04-30 14:45:33 +00:00
Michael Brown 95946c6f56 Added "proto" directory 2005-04-30 14:45:09 +00:00
Michael Brown 1644238813 Added debugging. 2005-04-30 14:41:37 +00:00
Michael Brown 6cd0fa5807 Added DNS resolver configuration option. 2005-04-30 14:39:21 +00:00
Michael Brown 0780ecf1b6 TFTP API changed. 2005-04-30 14:27:17 +00:00
Michael Brown 56825df041 loadkernel renamed to download_url, substantially restructured, and moved
to nic.c
2005-04-30 13:52:27 +00:00
Michael Brown e68378fd62 loadkernel renamed to download_url and moved to nic.c 2005-04-30 13:51:49 +00:00
Michael Brown 332b40b986 loadkernel no longer exists; it is now download_url and lives in nic.c. 2005-04-30 13:51:18 +00:00
Michael Brown 903ddd9878 inet_aton doesn't overwrite the IP address unless it is valid. 2005-04-30 13:50:34 +00:00
Michael Brown 55ae308821 Protocols also take a pointer to a sockaddr_in. 2005-04-30 13:50:01 +00:00
Michael Brown 00b78f73a4 Use struct in_addr rather than just "in_addr".
Add struct sockaddr_in.
2005-04-30 13:49:28 +00:00
Michael Brown 70567c51a2 Moved strtoul prototype into stdlib.h for consistency 2005-04-30 13:48:48 +00:00
Michael Brown 044b20385b parse_url() is void. 2005-04-30 13:24:26 +00:00
Michael Brown 65dc273d78 First version 2005-04-29 13:26:31 +00:00
Michael Brown e4131ebb84 First version 2005-04-29 13:17:25 +00:00
Michael Brown 754cef922d First version 2005-04-28 13:47:36 +00:00
Michael Brown c1253d2219 Much, much smaller. :) 2005-04-28 13:20:02 +00:00
Michael Brown 6791aeb024 First version: far too large (408 bytes!!!) 2005-04-28 12:12:11 +00:00
Michael Brown 282b6f1a1a isa.c uses the new table infrastructure. 2005-04-27 12:24:38 +00:00
Michael Brown f37e0a06d7 dev.c uses the new tables infrastructure. 2005-04-27 12:20:54 +00:00
Michael Brown c08671e5fc Missing include 2005-04-27 12:17:09 +00:00
Michael Brown b9e72856b6 Post-relocation functions use the generic table mechanism. 2005-04-27 12:10:24 +00:00
Michael Brown d2d4978f4f Use PREFIX_OBJECT to give the init_fn table variables meaningful names. 2005-04-27 12:08:52 +00:00
Michael Brown c8fc121890 Special handling for symbols of the form "xxx_end", to make table end
markers appear before the symbols that immediately follow the table.
2005-04-27 12:08:13 +00:00
Michael Brown 1ddcdb0524 Added PREFIX_OBJECT() function to be able to easily prepend any string
to the object name in order to generate e.g. per-file variables.
2005-04-27 11:59:37 +00:00
Michael Brown 3e5bf5fb06 console.c uses the generic table mechanism 2005-04-27 11:38:43 +00:00
Michael Brown 69f09ebdd8 Linker no longer provides start and end symbols for each table; these
markers are now static labels within the objects that refer to them.
2005-04-27 11:27:38 +00:00
Michael Brown 241f426a85 Use new generic tables infrastructure 2005-04-27 11:25:21 +00:00
Michael Brown b9c9cee8a3 Added a generalised table infrastructure, so that we don't have to
keep adding new tables to each architecture's linker scripts.
2005-04-27 11:22:46 +00:00
Michael Brown 81e4755106 Produce a sorted list of all local symbols in the map file. 2005-04-27 10:55:12 +00:00
Michael Brown d6930e6e40 Use symbol size as a third index, mainly so that zero-length symbols
(e.g. section start indicators) show up before the symbols they're
indicating the start of.
2005-04-27 10:54:33 +00:00
Michael Brown ac01cf4997 First version 2005-04-27 10:40:59 +00:00
Michael Brown fda36a0c1a Added back in the actual call to load(). 2005-04-26 17:12:07 +00:00
Michael Brown e301acc0d4 Add isapnp_max_csn to reduce scan time. 2005-04-26 14:07:30 +00:00
Michael Brown 3dbdeb588f ISA bus driver updated to report devices as present only if a driver
thinks they are.
Other bus drivers modified for consistency.
2005-04-26 12:30:14 +00:00
Michael Brown 3a7967a38a PCI_DRIVER changed 2005-04-26 12:20:05 +00:00
Michael Brown 7e534b585f Automatically updated with
perl -pi -0777 -e 's/^static struct \w+_driver (\w+) =\s*(\w+_DRIVER \()/${2} ${1},/msg' *.c
2005-04-26 12:19:39 +00:00
Michael Brown fcee25024f BIOS floppy handling code moved to where it will really live. 2005-04-25 19:29:55 +00:00
Michael Brown 10b7b1a61f Added arch/i386/drivers/disk 2005-04-25 19:29:02 +00:00
Michael Brown f5dde85e16 Improved debug messages 2005-04-25 19:28:49 +00:00
Michael Brown 8cd0693396 s/{name,describe}/{name,describe}_device/ 2005-04-25 19:27:53 +00:00
Michael Brown 3b14360f5c Renamed describe to describe_device for consistency 2005-04-25 19:27:25 +00:00
Michael Brown 99b857559b Added "name" field to struct bus_driver 2005-04-25 19:26:33 +00:00
Michael Brown d281996ef8 Added DBG2 2005-04-25 19:25:45 +00:00
Michael Brown 5bace628ae Added "name" field to bus structure. 2005-04-25 18:54:15 +00:00
Michael Brown f972f256e6 Allow for multiple debug levels 2005-04-25 16:28:07 +00:00
Michael Brown 698f86f25a Prevent hundreds of errors from "make symcheck". The prefix exit path
mechanism has changed anyway, and so must be rewritten, but at least doing
this makes the output of "make symcheck" more legible.
2005-04-23 14:57:53 +00:00
Michael Brown d94cb57143 Fixed to properly catch multiply defined symbols. 2005-04-23 14:54:30 +00:00
Michael Brown 9dc7ebc152 Symbol errors caught by symcheck.pl 2005-04-23 14:45:37 +00:00
Michael Brown 2da3b7a38f Added "make symcheck" 2005-04-23 14:41:38 +00:00
Michael Brown 4e5f10790b First working version 2005-04-23 14:41:15 +00:00
Michael Brown e59607bcb1 Should be an <= comparison, not a < comparison.
(Detected using "make symcheck" :)
2005-04-23 14:34:00 +00:00
Michael Brown dbea213c27 Coerced into compiling. 2005-04-22 16:40:10 +00:00
Michael Brown db0e056abd Make it easier to comment out individual SRC directories when things
are broken...  :)
2005-04-22 16:36:44 +00:00
Michael Brown e8f364551a Typo 2005-04-22 16:32:29 +00:00
Michael Brown 08ff0c1d30 Ensured that all drivers call xxx_fill_nic(). 2005-04-22 16:31:52 +00:00
Michael Brown e7c177cc33 Coerced into compiling 2005-04-22 16:27:56 +00:00
Michael Brown 628444af86 Updated to new device probing API 2005-04-22 16:24:21 +00:00
Michael Brown 49fe02e501 Coerced into compiling 2005-04-22 16:09:54 +00:00
Michael Brown ee88aacdb6 Coerced into compiling. 2005-04-22 16:07:48 +00:00
Michael Brown fba7f011d2 Coerced into actually compiling. 2005-04-22 16:06:46 +00:00
Michael Brown 67c9385577 Fields in struct pci_device slightly changed. 2005-04-22 16:05:05 +00:00
Michael Brown 84f43ea9cf isapnp_read_port can be set directly, rather than via a function call. 2005-04-22 16:03:25 +00:00
Michael Brown b18e419a81 Updated debug messages 2005-04-22 16:02:12 +00:00
Michael Brown 7bd88df08d Documented where to get hold of the datasheet. 2005-04-22 16:01:51 +00:00
Michael Brown 091a579be1 Updated to new API. 2005-04-22 16:00:51 +00:00
Michael Brown db3a44b66d Debug message fixes. 2005-04-22 15:56:57 +00:00
Michael Brown 139d0fe481 Updated to new bus API, and improved using the 3c5x9 reference manual. 2005-04-22 15:55:13 +00:00
Michael Brown 441ee4f8f3 Need to leave structure zeroed 2005-04-22 15:33:35 +00:00
Michael Brown 8af80c6b10 disable() is a void 2005-04-22 12:07:22 +00:00
Michael Brown feb652709d Must not go beyond end of driver's probe list. 2005-04-22 12:02:34 +00:00
Michael Brown e596c42ade Updated to current API. 2005-04-22 11:57:35 +00:00
Michael Brown 329ccfdc21 Updated to new API. 2005-04-22 11:56:49 +00:00
Michael Brown 1e156f537b Consistency 2005-04-22 11:56:27 +00:00
Michael Brown 0e2dc7aa8e Updated to new device API. 2005-04-22 11:29:40 +00:00
Michael Brown 3e8c2aa78b Fix up fill_mca_nic. 2005-04-22 02:47:39 +00:00
Michael Brown 97346a75f7 Added friendly enable/disable functions 2005-04-22 02:43:24 +00:00
Michael Brown 924143661a Updated all common buses to new API. 2005-04-22 02:28:16 +00:00
Michael Brown 4e3ebba8e6 Revert debug message prefix back to none, since we sometimes want to use
DBG() several times to build up a line.
2005-04-22 02:27:59 +00:00
Michael Brown 614c39a8a4 Automatically updated with the program
#!/usr/bin/perl -w -pi -0777

use strict;

( my $type ) = /find_(\w+?)_boot_device/ or die "Could not find type\n";

( my $disable ) = /\.disable\s*=\s*(\w+)/ or die "Could not locate disable\n";

s/(${disable}\s*\(\s*struct\s+nic\s+\*nic)(\s*\)\s*\{)(\s*)/${1}, struct ${type}_device \*${type} __unused${2}${3}nic_disable ( nic );${3}/s;

s/(${disable}\s*\(\s*struct\s+nic\s+\*nic)(\s*\)\s*;)/${1}, struct ${type}_device \*${type}${2}/g;

s/^\s*.disable\s*=\s*${disable}\s*,\s*?$//m;

s/(_probe\s*\(\s*)struct\s+dev\s+\*dev/${1}struct nic \*nic/g;

s/^\s*struct\s+nic\s+\*nic\s*=\s*nic_device\s*\(\s*dev\s*\)\s*;\s*?$//m;

s/^(\s*)(nic->(ioaddr|irqno)\s*=\s*${type})/${1}${type}_fill_nic ( nic, ${type} );\n${1}${2}/m;
2005-04-21 19:20:39 +00:00
Michael Brown cfe3a663af Tweaked API to minimise changes to existing drivers even further. 2005-04-21 19:04:53 +00:00
Michael Brown a713813596 Updated to current API 2005-04-21 18:31:31 +00:00
Michael Brown 8153a0fa7e Made macros more like the previous driver API, to minimise required
changes.
2005-04-21 18:30:12 +00:00
Michael Brown 98ff29345e Created a bus/device API that allows for the ROM prefix to specify an
initial device, and will also allow for e.g. a device menu to be presented
to the user.
2005-04-21 18:18:29 +00:00
Michael Brown 905ca1f21d Force a standard format upon debug messages. 2005-04-21 18:16:54 +00:00
Michael Brown c0239ebb03 Typo 2005-04-21 18:15:31 +00:00
Michael Brown 928c388c6f bswap_16() exists; no need to use __bswap_16() 2005-04-21 16:38:28 +00:00
Michael Brown a95b458660 Trying to create a bus API. 2005-04-20 00:29:12 +00:00
Michael Brown e74bbaeca0 First versions 2005-04-19 14:17:42 +00:00
Michael Brown 2c7d72e11e Moved floppy.c to i386 arch, since it's i386-specific. 2005-04-18 18:56:18 +00:00
Michael Brown e3bb65c17f Added remaining bus functions. 2005-04-18 18:54:27 +00:00
Michael Brown 7af89ccf33 Code fixed to operate correctly. 2005-04-18 15:48:20 +00:00
Michael Brown 400fd74897 Extracted from firmware/pcbios/bios.c 2005-04-18 15:39:02 +00:00
Michael Brown d3ce66a301 Added arch/i386/drivers/bus 2005-04-18 15:37:17 +00:00
Michael Brown c245ab75ad Moved disk functions to drivers/bus/bios_disks.c 2005-04-18 15:35:39 +00:00
Michael Brown 641596e6ba blib definition moved to Makefile.housekeeping. 2005-04-18 14:40:57 +00:00
Michael Brown e02c699a05 Fix endianness of dhcp device id structure. 2005-04-18 14:38:51 +00:00
Michael Brown 5abc43a320 "make bin/xxx DEBUG=yyy,zzz" now works seemingly perfectly. :) 2005-04-18 14:16:13 +00:00
Michael Brown 1cdb68d116 "make xxx DEBUG=yyy,zzz" now working, but the "up to date" message is
getting suppressed.  :(
2005-04-18 13:55:57 +00:00
Michael Brown a245c93417 Be nice to emacs 2005-04-18 12:59:50 +00:00
Michael Brown 9f5aca032c Ignore buildserial-related files. 2005-04-18 12:55:45 +00:00
Michael Brown 435fa2003b Note to self: save files before checking in. 2005-04-18 12:54:27 +00:00
Michael Brown 451ea7ffc5 Added warning about not using Config for single-object options. 2005-04-18 12:53:39 +00:00
Michael Brown ffe77e0683 This is, of course, the neater and much more obvious way to do it. 2005-04-18 12:45:31 +00:00
Michael Brown cf79681b80 Fix BUILD_SERIAL.
Change from using #if to #ifdef, since #if can't cope with string
constants.
2005-04-18 12:43:18 +00:00
Michael Brown 85b00c4b72 Move RELOCATE into config.h
Move ISA probe address logic from config.c into isa.c, create header file
config/isa.h.
2005-04-18 11:00:42 +00:00
Michael Brown 3c55caf24c Moved console options to config.h
Removed CONFIG_{PCI,ISA,PCMCIA}, since buses are now always compiled and
linked in only if required by the individual driver objects.
2005-04-18 10:19:36 +00:00
Michael Brown a0c5430749 CONFIG_PCI and CONFIG_ISA no longer exist 2005-04-18 10:18:38 +00:00
Michael Brown 2c36f5e6c7 Save a few bytes by using naturally-sized ints. 2005-04-18 09:17:27 +00:00
Michael Brown bd2c3b0f27 Split out EISA driver into a separate file, since 3c509s can only take 16K
ROMs (AFAIK).
2005-04-17 17:52:33 +00:00
Michael Brown 6e4888400c Avoid deleting .cvsignore 2005-04-17 16:24:36 +00:00
Michael Brown 1acea7d21f Serial port configuration moved to config.h 2005-04-17 16:18:20 +00:00
Michael Brown de965fde64 Whoops 2005-04-17 16:16:02 +00:00
Michael Brown 64e1df4af6 Allow serial port options to be specified in a relatively friendly format. 2005-04-17 16:15:46 +00:00
Michael Brown 6ca5e85a3b Working format. 2005-04-17 16:01:13 +00:00
Michael Brown b5ee3763c6 Add MKCONFIG utility, and add "-I ." to CFLAGS so that we can work
with generated headers.
2005-04-17 15:58:39 +00:00
Michael Brown b79895c9d6 Use mkconfig.pl to generate fragments from config.h
Don't use -MP to generate phony rules for included files, otherwise
make won't use the pattern rule for config/%.h.  :(
2005-04-17 15:57:34 +00:00
Michael Brown a107996c9a If we end up with fragments that are older than config.h, set the
timestamp on config.h to match the oldest fragment, to prevent make
from always attempting to rebuild the fragments.
2005-04-17 15:56:32 +00:00
Michael Brown 31fdf3da82 All .h files in this directory are generated from the top-level config.h 2005-04-17 15:36:15 +00:00
Michael Brown 04a0de1c92 Generate phony targets, so that we don't get screwed by missing config
header files.
2005-04-17 15:31:06 +00:00
Michael Brown 7b2a0cded1 First version 2005-04-17 15:25:09 +00:00
Michael Brown 8e4c991c24 Experiment; let's see if we can get individual config header files working. 2005-04-17 14:08:40 +00:00
Michael Brown 658fecf7e5 Found a home for MAKEROM_FLAGS_3c503. 2005-04-17 13:25:43 +00:00
Michael Brown 5ee79cf207 3c509/3c529 no longer use legacy INCLUDE_xxx mechanism. 2005-04-17 13:16:13 +00:00
Michael Brown 63e0c8f947 xstart16() fixed up to use new REAL_EXEC mechanism. 2005-04-17 12:36:45 +00:00
Michael Brown 1a6ca649a2 Made copy_{to,from}_real volatile, so that they don't get optimised away.
Added REAL_FRAGMENT(), because it could conceivably be useful.
2005-04-17 12:17:06 +00:00
Michael Brown 8e27e50316 We don't refer to _bss and _ebss any more. 2005-04-17 11:47:18 +00:00