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 |
Michael Brown
|
c9d35daffe
|
Re-add the "." progress indicator.
|
2005-04-17 11:40:24 +00:00 |
Michael Brown
|
03346742c0
|
Use only the header files that we need
|
2005-04-17 10:51:05 +00:00 |
Michael Brown
|
a6057b4cbc
|
Need stddef.h to get size_t
|
2005-04-17 10:48:56 +00:00 |
Michael Brown
|
f08516791e
|
printf and sprintf now defined in vsprintf.h, drag in console.h to get
putchar() as well.
|
2005-04-17 10:45:13 +00:00 |
Michael Brown
|
664ffea697
|
Gave vsprintf.c its own header file, and made console.h include it.
|
2005-04-17 10:44:26 +00:00 |
Michael Brown
|
063140864e
|
Automatically drag in console.h if DBG() is being defined as printf().
|
2005-04-17 10:25:06 +00:00 |
Michael Brown
|
ae36de3d80
|
Need to prevent intermediate targets from being deleted, otherwise the
trick with "touch -B 2" doesn't work because the file that we're
carefully timestamping just gets deleted anyway.
|
2005-04-16 23:47:47 +00:00 |
Michael Brown
|
9c814cb123
|
Use the correct case for -Ddebug_<object>
|
2005-04-16 23:33:52 +00:00 |
Michael Brown
|
a666eb34b5
|
Improved building of debugging objects. You can now specify a "DEBUG="
list for any build, e.g.
make bin/pnic.dsk DEBUG=pci,pnic
This will drag in debugging-enabled versions of pci.c and pnic.c.
|
2005-04-16 23:28:36 +00:00 |
Michael Brown
|
5ca20abf95
|
Place the call to adjust_pci_device() back in the individual drivers,
since we probably shouldn't be doing this to arbitrary devices during a
PCI bus scan...
|
2005-04-16 17:30:37 +00:00 |
Michael Brown
|
b7c55c3951
|
Avoid signed/unsigned warnings by explicitly making PCI_{BUS,DEV,FUNC}
all return unsigned quantities.
|
2005-04-16 17:09:52 +00:00 |
Michael Brown
|
66e54f1274
|
...this time with the correct syntax. :(
|
2005-04-16 14:54:11 +00:00 |
Michael Brown
|
8c2b42e08e
|
Added activate_isapnp_device() line
|
2005-04-16 14:53:27 +00:00 |
Michael Brown
|
57070797e3
|
Optimise ISAPNP_READ_PORT_STEP
|
2005-04-16 14:50:41 +00:00 |
Michael Brown
|
86d2127204
|
Remove debugging call to getchar()
|
2005-04-16 14:42:48 +00:00 |
Michael Brown
|
c659a54f70
|
Now known to work with an old Adaptec 1505 that I found lying around.
|
2005-04-16 14:41:04 +00:00 |
Michael Brown
|
7bd3e883d7
|
Consistency
|
2005-04-16 11:43:16 +00:00 |
Michael Brown
|
e29be5e342
|
Speed up PCI bus scanning by skipping fns 1-7 if fn 0 is not present.
|
2005-04-16 11:42:56 +00:00 |
Michael Brown
|
6e5a3858bf
|
Read number of PCI buses returned by BIOS so that we can scan more
quickly.
|
2005-04-16 11:16:31 +00:00 |
Michael Brown
|
e1a9798af4
|
Improved debugging output
|
2005-04-16 10:19:13 +00:00 |
Michael Brown
|
ed7b9109be
|
Made debug messages more consistent.
|
2005-04-16 10:04:56 +00:00 |
Michael Brown
|
211a607147
|
Improved debug messages.
Prevented find_pci_device() from being an endless loop.
|
2005-04-16 09:57:19 +00:00 |
Michael Brown
|
25d82dac7a
|
CONFIG_PCI_DIRECT no longer exists
|
2005-04-16 09:35:42 +00:00 |
Michael Brown
|
f25383f4c4
|
Add ISA_PROBE_ADDRS list.
|
2005-04-16 09:35:17 +00:00 |
Michael Brown
|
9f02376409
|
Make isa_probe_addr a simple integer rather than a struct, to facilitate
specification of ISA_PROBE_ADDRS.
|
2005-04-16 09:30:48 +00:00 |
Michael Brown
|
a60aadf9e9
|
Improve debug message legibility.
|
2005-04-15 17:09:47 +00:00 |
Michael Brown
|
f04b9cd3ea
|
Leave some time to see what's going on.
|
2005-04-15 17:06:54 +00:00 |
Michael Brown
|
8aa3b9d972
|
Need to do isolation when find_isapnp_device is first called,
otherwise isapnp_max_csn is zero and we never call fill_isapnp_device.
Fix debug message.
|
2005-04-15 17:03:39 +00:00 |
Michael Brown
|
c41e89af41
|
Fixed debug message
|
2005-04-15 16:58:08 +00:00 |
Michael Brown
|
39cb4d8dbb
|
Fix debug message
|
2005-04-15 16:56:18 +00:00 |
Michael Brown
|
2c2154b169
|
Now compiles.
|
2005-04-15 16:52:28 +00:00 |
Michael Brown
|
d26889cb04
|
Don't even try to compile until the code is tidied up.
|
2005-04-15 16:50:36 +00:00 |
Michael Brown
|
8c082aa468
|
This at least compiles now. Haven't separated out the EMBEDDED code yet.
|
2005-04-15 16:49:46 +00:00 |
Michael Brown
|
1bd7b97e5c
|
Not sure why I made these cosmetic changes, but I appear to have done so.
|
2005-04-15 16:30:35 +00:00 |
Michael Brown
|
f61fa0dc64
|
Added "classical" ISA example.
|
2005-04-15 16:28:14 +00:00 |
Michael Brown
|
897eeee4ee
|
Added EISA, ISAPnP and MCA examples.
|
2005-04-15 16:18:56 +00:00 |
Michael Brown
|
38ea910098
|
Updated to new PCI bus interface.
|
2005-04-15 16:08:10 +00:00 |
Michael Brown
|
a26edc2eec
|
Updated to work with new ISAPnP bus code.
|
2005-04-15 15:50:27 +00:00 |
Michael Brown
|
e6e43a2f2f
|
We now correctly use logical devices.
|
2005-04-15 15:37:39 +00:00 |
Michael Brown
|
8e375c638d
|
Canonicalised tag names
|
2005-04-15 15:20:00 +00:00 |
Michael Brown
|
05986a848f
|
Move the concept of logical devices inside the struct isapnp_device.
|
2005-04-15 15:16:03 +00:00 |
Michael Brown
|
d11ea1e44b
|
Added debugging messages for activation/deactivation of logical devices.
|
2005-04-15 14:31:08 +00:00 |
Michael Brown
|
888277d2d1
|
Read current ioaddr and irqno from PnP registers.
|
2005-04-15 14:27:49 +00:00 |
Michael Brown
|
ab443ba4b0
|
Don't verify checksum except after serial isolation
|
2005-04-15 13:54:44 +00:00 |
Michael Brown
|
120192e8d1
|
Reduce binary size by factoring out common parameterised calls to
udelay().
|
2005-04-15 13:18:54 +00:00 |
Michael Brown
|
85dd4fd8d6
|
Activation code now generalised as well.
|
2005-04-15 13:07:25 +00:00 |
Michael Brown
|
1980018b8b
|
Cleaned up isolation protocol.
|
2005-04-15 12:25:17 +00:00 |
Michael Brown
|
344ea224b4
|
Standardised debug message.
|
2005-04-14 23:43:34 +00:00 |
Michael Brown
|
ed92171527
|
Standardised debug messages to make it easy to get a bus scan printout
(just build debugging versions of the relevant bus objects).
|
2005-04-14 23:32:36 +00:00 |
Michael Brown
|
c7694a5322
|
Cleaner separation of find_t509_device/fill_t509_device.
|
2005-04-14 23:20:56 +00:00 |
Michael Brown
|
f78fd79c16
|
Moved core/isapnp.c to drivers/bus/isapnp.c
|
2005-04-14 22:42:57 +00:00 |
Michael Brown
|
d5e1561fb8
|
Updated to new ISA API, but this driver probably has deeper problems.
|
2005-04-14 21:18:36 +00:00 |
Michael Brown
|
487574fc02
|
This code is unbelievably ugly, has never been fixed up to work with
relocation and (hence) presumably has not been used since Etherboot 5.0.
Say bye-bye!
|
2005-04-14 20:02:10 +00:00 |
Michael Brown
|
8165c14e71
|
Updated to general ISA bus API.
|
2005-04-14 19:25:36 +00:00 |
Michael Brown
|
773d66e6dc
|
Typo
|
2005-04-14 19:10:17 +00:00 |
Michael Brown
|
a80fe976ed
|
Updated to common ISA bus API.
|
2005-04-14 19:07:53 +00:00 |
Michael Brown
|
9eac705dd2
|
Added a generalised ISA device-probing mechanism.
|
2005-04-14 18:46:43 +00:00 |
Michael Brown
|
e5b537fed0
|
name should be const
|
2005-04-14 17:52:27 +00:00 |
Michael Brown
|
cee678de7c
|
Fixed up automatic modifications by hand.
|
2005-04-14 15:09:28 +00:00 |
Michael Brown
|
2c60617836
|
Automatically modified by
perl -pi -0777 -e 's/\s*?if\s*\(\s*!\s*find_pci_device.*?,\s*\&(\w+)\s*\)\s*\)\s*return\s*0;(.*BOOT_DRIVER\s*\(.*?,)(.*?\))/$2 find_pci_boot_device, $1,$3/sm' *.c
|
2005-04-14 15:00:05 +00:00 |
Michael Brown
|
393969a3f8
|
Fix up the automatic modifications.
|
2005-04-14 14:59:04 +00:00 |
Michael Brown
|
476dff5bb7
|
Made amenable to automatic update.
|
2005-04-14 14:49:32 +00:00 |
Michael Brown
|
cbd5d4f849
|
This is the only driver that has a genuine reason to call
find_pci_device() directly.
|
2005-04-14 14:48:07 +00:00 |
Michael Brown
|
963dbefb51
|
Automatically updated using
perl -pi -0777 -e 's/(_probe\s*\(\s*struct\s+dev.*?)(\s*\)\s*{.*?$)\s*struct pci_device.*?=\s*pci_device \( dev \);$/${1}, struct pci_device *pci${2}/ms' *.c
sis900 excluded from update
|
2005-04-14 14:44:33 +00:00 |
Michael Brown
|
72fe23a76e
|
Updated to new device API.
|
2005-04-14 14:31:11 +00:00 |
Michael Brown
|
2e309f9eec
|
Fix BOOT_DRIVER to assign unique and meaningful name to structure.
|
2005-04-14 14:30:03 +00:00 |
Michael Brown
|
9183f2412e
|
bus header files must include dev.h to get struct dev.
|
2005-04-14 14:26:28 +00:00 |
Michael Brown
|
e0a8ee385e
|
Updated to current device API.
|
2005-04-14 13:49:58 +00:00 |
Michael Brown
|
104880ca19
|
Tweak API to allow separation of bus-scanning and device-probing logic.
|
2005-04-14 13:44:07 +00:00 |
Michael Brown
|
ce8dea0dff
|
Separate out bus-scanning and device-probing logic.
|
2005-04-14 13:33:03 +00:00 |
Michael Brown
|
4c0d5a0b71
|
Split 3c509.c into 3c509.9 and 3c529.c, with shared code in 3c5x9.c.
Probe mechanisms now use standard EISA and MCA bus methods, with 3c509.c
defining a custom ISA bus to handle the 3c509 contention resolution logic.
|
2005-04-14 12:23:12 +00:00 |
Michael Brown
|
1f26be34b8
|
Allow for multiple BOOT_DRIVER()s in the same file, provided that they
have different probe functions.
|
2005-04-14 12:02:19 +00:00 |
Michael Brown
|
44c7cc8c12
|
Standardised debug mechanism in place now.
|
2005-04-14 11:55:57 +00:00 |
Michael Brown
|
e44e5c7247
|
compiler.h is now always included on the command line.
|
2005-04-14 11:50:26 +00:00 |
Michael Brown
|
bc85cf756d
|
We need the ISA product ID mask available separately for 3c509.c.
|
2005-04-14 11:47:30 +00:00 |
Michael Brown
|
305daba48a
|
Always include compiler.h.
Add bin/%.rebuild rule to quickly force a rebuild of any file.
Add bin/%.o.dbg rule to build a debugging-enabled version of the object.
|
2005-04-14 11:45:37 +00:00 |
Michael Brown
|
dcd573afcb
|
Automatically create DBG() macro based on debug_<object> macro.
|
2005-04-14 11:35:45 +00:00 |
Michael Brown
|
75d864432c
|
Use the magic of common symbols to allow struct dev to effectively grow at
link time to accommodate whatever bus objects are included.
|
2005-04-14 10:10:54 +00:00 |
Michael Brown
|
0dc98309b2
|
Stripped references to variables in C code.
|
2005-04-13 13:48:26 +00:00 |
Michael Brown
|
e294a1ddce
|
EISA support now provided by eisa.c
MCA support now provided by mca.c
|
2005-04-13 13:06:56 +00:00 |
Michael Brown
|
200b39a645
|
Extraced from 3c509.c
|
2005-04-13 12:45:38 +00:00 |
Michael Brown
|
a4f1a058a4
|
Add EISA as a bus type.
|
2005-04-13 12:20:59 +00:00 |
Michael Brown
|
4ae83f28f2
|
Don't use htons, for compatibility with PCI :(
|
2005-04-13 12:15:14 +00:00 |
Michael Brown
|
4ecbc63296
|
Use __bswap_16, since we're not dealing with quantities to go onto the network.
|
2005-04-13 12:11:21 +00:00 |
Michael Brown
|
5b8e549c83
|
htons was used in ISAPnP code just due to ISAPnP storing bytes in
reverse order.
|
2005-04-13 12:06:33 +00:00 |
Michael Brown
|
9711f50e20
|
Created separate isa_ids.h file and a utility function to print out ISA
IDs in a human-readable format.
|
2005-04-13 12:01:44 +00:00 |
Michael Brown
|
ac1c0a753d
|
Add MCA devices
|
2005-04-13 03:00:50 +00:00 |
Michael Brown
|
677cda3263
|
Minor fixups
|
2005-04-13 03:00:30 +00:00 |
Michael Brown
|
1aee4e8001
|
Extracted from 3c509.c
|
2005-04-13 02:59:13 +00:00 |
Michael Brown
|
e27ebad4b2
|
Whoops
|
2005-04-13 02:05:43 +00:00 |
Michael Brown
|
7cc6366a84
|
Finished by hand
|
2005-04-13 02:02:08 +00:00 |
Michael Brown
|
951e305081
|
Finished by hand
|
2005-04-13 01:45:20 +00:00 |
Michael Brown
|
f39cc6d978
|
Finished by hand
|
2005-04-13 01:31:44 +00:00 |
Michael Brown
|
f16ac2d87e
|
Fix type of dummy_irq()
|
2005-04-13 01:28:43 +00:00 |
Michael Brown
|
9848135950
|
Finished by hand
|
2005-04-13 01:01:33 +00:00 |
Michael Brown
|
3616de915e
|
Hand-finished
|
2005-04-13 00:21:59 +00:00 |
Michael Brown
|
6e8878c1fa
|
Avoid compiler warnings.
|
2005-04-13 00:19:01 +00:00 |
Michael Brown
|
266dae4034
|
Use NIC's connect method.
|
2005-04-13 00:18:35 +00:00 |
Michael Brown
|
17d69d8930
|
Add mbps and duplex to struct nic, since some drivers (e.g. rtl8139)
can fill them in.
|
2005-04-13 00:16:42 +00:00 |
Michael Brown
|
28590d718b
|
Hand-finished
|
2005-04-13 00:15:45 +00:00 |
Michael Brown
|
91e46ed588
|
Automatically updated using
perl -pi -0777 -e 's/^(\s*)dev->disable(\s*)=\s*(\w+)_disable;\s*nic->poll\s*=\s*(\w+);\s*nic->transmit\s*=\s*(\w+);\s*nic->irq\s*=\s*(\w+);/static struct nic_operations ${3}_operations;\nstatic struct nic_operations ${3}_operations = {\n\t.connect\t= dummy_connect,\n\t.poll\t\t= $4,\n\t.transmit\t= $5,\n\t.irq\t\t= $6,\n\t.disable\t= ${3}_disable,\n};${1}nic->nic_op\t= &${3}_operations;/msg' *.c
|
2005-04-13 00:02:40 +00:00 |
Michael Brown
|
d9c64c9422
|
Manual tweaks to get all drivers to follow the "disable, poll, transmit,
irq" pattern.
|
2005-04-12 23:47:52 +00:00 |
Michael Brown
|
881023e9ca
|
Automatically updated using
perl -pi -e 's/(_probe\s*\(\s*struct )dev \*.*?(\s*\);)/${1}dev *dev$2/' *.c
perl -pi -e 's/(_disable\s*\(\s*struct )dev \*.*?(\s*\);)/${1}nic *nic$2/' *.c
|
2005-04-12 23:39:16 +00:00 |
Michael Brown
|
c87ba23399
|
Automatically updated using
perl -pi -0777 -e 's/_disable\s*\(\s*struct dev \*dev\s*\)\s*{\s*struct nic \*nic.*?$/_disable ( struct nic *nic ) {/ms' *.c
perl -pi -0777 -e 's/_disable\s*\(\s*struct dev \*dev(\s*__unused)?\)\s*{/_disable ( struct nic *nic$1 ) {/ms' *.c
|
2005-04-12 23:31:37 +00:00 |
Michael Brown
|
bd9ae7cc70
|
Automatically updated using
perl -pi -0777 -e 's/_probe\s*\(\s*struct dev \*dev,\s*struct pci_device \*(\w+?)\s*\)\s*{(\s*)struct nic \*nic.*?$/_probe ( struct dev *dev ) {\n${2}struct nic *nic = nic_device ( dev );\n${2}struct pci_device *$1 = pci_device ( dev );/ms' *.c
|
2005-04-12 23:24:39 +00:00 |
Michael Brown
|
35e6f3e58a
|
Minor regexp tweaks to catch degenerate cases.
|
2005-04-12 23:13:54 +00:00 |
Michael Brown
|
4e3e389200
|
Auto-updated using
perl -pi -0777 -e 's/static struct pci_driver (\w+) __pci_driver = {.*\.name\s*=\s*(\"\S+\").*\.probe\s*=\s*(\w+).*\.ids\s*=\s*(\w+).*\.class\s*=\s*(\w+).*?};/static struct pci_driver $1 =\n\tPCI_DRIVER ( $2, $4, $5 );\n\nBOOT_DRIVER ( $2, $3 );/ms' *.c
perl -pi -e 's/(PCI_DRIVER \(.*, )0 \);/${1}PCI_NO_CLASS );/' *.c
|
2005-04-12 23:05:00 +00:00 |
Michael Brown
|
241fb0f3cd
|
Use dev's print_info method to print standardised information about
the boot device.
|
2005-04-12 22:44:02 +00:00 |
Michael Brown
|
95da907d5f
|
Add print_info method to dev_operations.
|
2005-04-12 22:43:25 +00:00 |
Michael Brown
|
c2a21744f6
|
We now record a pointer to the struct pci_device, since it's carried
around in struct dev anyway.
|
2005-04-12 22:42:52 +00:00 |
Michael Brown
|
e1d0cebfa8
|
Able to at least compile again now.
|
2005-04-12 19:11:42 +00:00 |
Michael Brown
|
d9f34bfdfc
|
Add dummy_connect and dummy_irq
|
2005-04-12 19:11:13 +00:00 |
Michael Brown
|
81320fae4b
|
Remove debugging by default
|
2005-04-12 18:32:20 +00:00 |
Michael Brown
|
27a55b514c
|
Updated to new device API.
|
2005-04-12 18:23:00 +00:00 |
Michael Brown
|
1218698e01
|
Cope with nic.h being included before (or without) dev.h
|
2005-04-12 18:21:38 +00:00 |
Michael Brown
|
122b025293
|
Include dev.h, since several drivers just include nic.h
|
2005-04-12 18:15:12 +00:00 |
Michael Brown
|
8fa0e38233
|
Fixed up PCI-scanning code to use new PCI interface.
|
2005-04-12 18:13:59 +00:00 |
Michael Brown
|
3293c68488
|
Make adjust_pci_device global, since many drivers call it.
|
2005-04-12 18:10:57 +00:00 |
Michael Brown
|
762fa9a478
|
Fix up find_pci_device so that it can be used for scanning for devices
*other* than the main boot device.
|
2005-04-12 18:04:03 +00:00 |
Michael Brown
|
eb8f730d63
|
Use pci_{vendor,device}_id instead of just pci_{vendor,device}, to avoid
conflict with pci_device function.
|
2005-04-12 17:56:23 +00:00 |
Michael Brown
|
5c31682674
|
Tie into new boot device framework.
|
2005-04-12 16:54:09 +00:00 |
Michael Brown
|
1434e8d68d
|
struct nic is now part of struct dev, rather than the other way around.
Tie into new boot device framework.
|
2005-04-12 16:52:59 +00:00 |
Michael Brown
|
31410b1b5d
|
Needs to be updated to new probe logic.
|
2005-04-12 16:51:26 +00:00 |
Michael Brown
|
236a195257
|
All code related to the device probe logic is ifdeffed 0 out.
|
2005-04-12 16:49:59 +00:00 |
Michael Brown
|
bb293ca5c2
|
Global struct dev is now in main.c
|
2005-04-12 16:49:11 +00:00 |
Michael Brown
|
6f37dc410a
|
print_drivers() is now unified.
|
2005-04-12 16:48:45 +00:00 |
Michael Brown
|
daad093c40
|
Now obsolete. :)
|
2005-04-12 16:46:57 +00:00 |
Michael Brown
|
0effbefe6f
|
All boot device drivers are now lumped together in boot_drivers
|
2005-04-12 16:46:15 +00:00 |
Michael Brown
|
6343381e25
|
Matches new pci.c interface.
|
2005-04-12 16:45:40 +00:00 |
Michael Brown
|
5603c879c4
|
Add INIT_PCIBIOS
|
2005-04-12 16:45:16 +00:00 |
Michael Brown
|
3095881c54
|
For pci_io.c
|
2005-04-12 16:44:50 +00:00 |
Michael Brown
|
3901d197f7
|
Replaced main loop with a trivial implementation so that we can try
out the new probing logic.
|
2005-04-12 16:43:18 +00:00 |
Michael Brown
|
17aad49028
|
16-bit PCI BIOS interface also now known to work.
|
2005-04-12 16:42:14 +00:00 |
Michael Brown
|
45f96a49c7
|
main.c contains the global struct dev.
|
2005-04-12 16:39:03 +00:00 |
Michael Brown
|
5e807dffe6
|
Obsoleted by new device probing mechanism.
|
2005-04-12 16:38:38 +00:00 |
Michael Brown
|
17c1ca90e7
|
New device probing mechanism
|
2005-04-12 16:38:23 +00:00 |
Michael Brown
|
707720c4e5
|
New PCI scan functions now work.
|
2005-04-12 16:36:55 +00:00 |
Michael Brown
|
bbcdf38214
|
Improved debug messages
|
2005-04-12 16:27:27 +00:00 |
Michael Brown
|
ff53205d0d
|
Should work for KEEP_IT_REAL as well now.
|
2005-04-12 13:35:31 +00:00 |
Michael Brown
|
0ccaf5bb83
|
Nearly there...
|
2005-04-12 13:31:36 +00:00 |
Michael Brown
|
67f122c645
|
Removed pci_find_device_x; it was too ugly to live.
|
2005-04-12 12:59:21 +00:00 |
Michael Brown
|
121e7386f6
|
New device probing mechanism written, not tested.
|
2005-04-11 19:19:35 +00:00 |
Michael Brown
|
7172d4abfb
|
Moved functions that we want to keep to drivers/bus/pci.c
|
2005-04-11 13:45:00 +00:00 |
Michael Brown
|
2ebc56f334
|
Moved in functions from old core/pci.c that we want to keep.
|
2005-04-11 13:43:53 +00:00 |
Michael Brown
|
95f755ad7f
|
Renamed pci.c to pci_legacy.c in preparation for new bus managment
infrastructure.
|
2005-04-11 13:25:41 +00:00 |
Michael Brown
|
63a0e0e2df
|
Removed references to no-longer-existent CFLAGS options.
|
2005-04-11 10:17:00 +00:00 |
Michael Brown
|
5d96e5dad9
|
Changed guard name to avoid clash with INCLUDE_xxx namespace used by
drivers.
|
2005-04-11 09:58:31 +00:00 |
Michael Brown
|
378c1b500c
|
Cleaner separation of functionality between post_reloc and
initialise_via_librm.
|
2005-04-11 09:24:10 +00:00 |
Michael Brown
|
b9237160ad
|
Almost all information in this file is now obsolete. Writing a new driver
should, with the new build system, just be a case of writing the .c file
and dropping it in place in drivers/net. :)
|
2005-04-10 23:45:55 +00:00 |
Michael Brown
|
34a0b5f16f
|
initialise() doesn't take regs
|
2005-04-10 18:39:28 +00:00 |
Michael Brown
|
87508aa0b2
|
arch_initialise() is now sufficiently generic that we may as well just
call it initialise() and place it in main.c. :)
|
2005-04-10 18:30:34 +00:00 |
Michael Brown
|
997b51c1e6
|
Use librm_arch_initialise for librm, arch_initialise for others.
|
2005-04-10 18:22:31 +00:00 |
Michael Brown
|
560027899e
|
Heading towards a sane set of control functions
|
2005-04-10 18:21:53 +00:00 |
Michael Brown
|
39cb1b4f9e
|
All the icky stuff is now taken care of by librm_arch_initialise
|
2005-04-10 18:21:27 +00:00 |
Michael Brown
|
d189b84536
|
Fix up init ordering.
Make init function table name fixed; it's a static variable anyway.
|
2005-04-10 18:20:38 +00:00 |
Michael Brown
|
3714946709
|
arch_rm_main no longer exists.
|
2005-04-10 18:19:59 +00:00 |
Michael Brown
|
1937b39079
|
Drag in relocate unless NORELOCATE is defined, since it's now called
only via the initialisation function table.
|
2005-04-10 18:19:05 +00:00 |
Michael Brown
|
f06e8c9707
|
Added post-relocation function table.
|
2005-04-10 18:18:37 +00:00 |
Michael Brown
|
9abceef561
|
Removed obsolete initialisation calls.
|
2005-04-10 18:13:24 +00:00 |
Michael Brown
|
070f6c0b6b
|
Fixed debug messages
|
2005-04-10 16:58:19 +00:00 |
Michael Brown
|
43417e6c1b
|
setup16() now calls initialise(); we don't have to do it.
|
2005-04-10 16:48:04 +00:00 |
Michael Brown
|
04682f9838
|
Setup now calls initialise() directly, rather than expecting the
prefix to do it.
|
2005-04-10 16:46:46 +00:00 |
Michael Brown
|
44e62317be
|
Add librm_base.
|
2005-04-10 16:44:49 +00:00 |
Michael Brown
|
dfb9c44994
|
hooks.o is now a single object, rather than having separate hooks.o and
hooks_rm.o
|
2005-04-10 16:44:29 +00:00 |
Michael Brown
|
04a99841e6
|
Make prot_call() able to transparently return via the newly installed copy
of librm.
|
2005-04-10 15:51:10 +00:00 |
Michael Brown
|
44eee81d11
|
Don't build relocate() under KEEP_IT_REAL
|
2005-04-09 17:05:35 +00:00 |
Michael Brown
|
2fa14f2f1d
|
lgdt needs data32 prefix, otherwise it loads only 24 bits. (sgdt
always saves 32 bits).
|
2005-04-09 16:42:50 +00:00 |
Michael Brown
|
6a4ac358f3
|
Add INIT_FNs to make sure that librm gets reallocated when needed.
|
2005-04-09 16:42:07 +00:00 |
Michael Brown
|
e29e6456b0
|
Don't zero freed base memory; one block will contain librm.
|
2005-04-09 16:14:37 +00:00 |
Michael Brown
|
1f6dfd7047
|
Allow ourselves to be freed by basemem.c without being damaged.
|
2005-04-09 16:14:09 +00:00 |
Michael Brown
|
97ced37c71
|
Need to provide sizeof(struct free_base_memory_header) to assembly code.
|
2005-04-09 16:13:19 +00:00 |
Michael Brown
|
90cf689810
|
Note basemem API change.
|
2005-04-09 15:56:03 +00:00 |
Michael Brown
|
ef05051f23
|
Add INIT_LIBRM before INIT_CONSOLE.
|
2005-04-09 15:26:38 +00:00 |
Michael Brown
|
48feb91a40
|
Rewritten in a much saner way, now that we don't have to worry about
continually reallocating the real-mode stack.
|
2005-04-09 15:01:38 +00:00 |
Michael Brown
|
0574136c6d
|
Split out from etherboot.h
|
2005-04-09 15:01:09 +00:00 |
Michael Brown
|
8570814148
|
Removed basemem.c prototypes
|
2005-04-09 15:00:28 +00:00 |
Michael Brown
|
fd95189c4d
|
basememsize() updates the BIOS FBMS counter at 40:13.
|
2005-04-09 14:16:25 +00:00 |
Michael Brown
|
a800e9657d
|
PM function called by prot_call() should be allowed to modifying
registers returned to RM code.
|
2005-04-09 13:56:33 +00:00 |
Michael Brown
|
29f43896aa
|
Add relocate.h
Note that we can't make real-mode calls immediately after relocate_to().
|
2005-04-09 13:36:55 +00:00 |
Michael Brown
|
9cc90cbb07
|
First version
|
2005-04-09 13:32:26 +00:00 |
Michael Brown
|
c8c7d93757
|
Relocation code is arch-specific.
|
2005-04-09 13:28:59 +00:00 |
Michael Brown
|
64d3886c1d
|
relocate() is called by arch_initialise().
|
2005-04-09 13:23:49 +00:00 |
Michael Brown
|
8039086ec8
|
Added a lot of explanatory comments.
Preserves alignment requested via _max_align parameter to linker.
|
2005-04-09 13:12:22 +00:00 |
Michael Brown
|
19176718be
|
callbacks.h no longer exists
|
2005-04-09 11:19:14 +00:00 |
Michael Brown
|
792f34d228
|
#ifdef 0 out the UNDI loader routine, since it refers to the obsolete
callback mechanism.
|
2005-04-09 11:17:29 +00:00 |
Michael Brown
|
73dbe41007
|
Old callbacks mechanism is obsolete.
|
2005-04-09 11:16:17 +00:00 |
Michael Brown
|
fedd00dd46
|
Removed references to old callback mechanism
|
2005-04-09 11:15:14 +00:00 |
Michael Brown
|
9c32083d56
|
callbacks.h no longer exists.
|
2005-04-09 11:12:29 +00:00 |
Michael Brown
|
a3faaf405a
|
Callback mechanism now obsolete
|
2005-04-09 11:11:34 +00:00 |
Michael Brown
|
a4920c16bd
|
Moved relocate.c to arch-specific dir, since it involves arch-specific
logic (e.g. avoiding memory regions with A20=0).
|
2005-04-09 10:49:26 +00:00 |
Michael Brown
|
0ff80b477d
|
Merged mcb30-realmode-redesign back to HEAD
|
2005-04-08 15:01:17 +00:00 |
Michael Brown
|
de5d935135
|
Merged this file into HEAD
|
2005-03-24 13:54:46 +00:00 |
Michael Brown
|
afff2b50f1
|
Obsolete; not referenced by anything.
|
2005-03-09 14:16:01 +00:00 |
Michael Brown
|
8bb1866f24
|
lzhuf is obsolete and no longer used
|
2005-03-09 14:14:01 +00:00 |
Michael Brown
|
168973a5d7
|
Obsolete; not reference by anything.
|
2005-03-09 14:11:45 +00:00 |
Michael Brown
|
6d4d056202
|
Obsolete; not referenced by anything.
|
2005-03-09 14:09:29 +00:00 |
Michael Brown
|
0ff846a503
|
unhuf.S is obsolete and no longer used
|
2005-03-09 14:07:23 +00:00 |
Michael Brown
|
10d9f9cec8
|
Obsolete and no longer used
|
2005-03-09 14:05:32 +00:00 |
Michael Brown
|
8bd447ad1b
|
Add rule to generate 16-bit version of decompressor
|
2005-03-09 14:04:04 +00:00 |
Michael Brown
|
7700b8059c
|
Remove CODE16 as a global define; most files define it themselves
anyway, and I want to be able to use it as a compile-time option for
the i386 decompressor.
|
2005-03-09 14:02:20 +00:00 |
Michael Brown
|
3d6123e69a
|
Initial revision
|
2005-03-08 18:53:11 +00:00 |