david/ipxe
Archived
1
0
Commit Graph

189 Commits

Author SHA1 Message Date
Michael Brown
e14c739d2d Imported from Etherboot 5.4 tree 2005-05-19 16:51:32 +00:00
Michael Brown
4e87543c74 Synced across updates from Etherboot 5.4 tree 2005-05-19 16:47:19 +00:00
Michael Brown
f88c0d42d5 Doxygenation 2005-05-19 15:35:47 +00:00
Michael Brown
e91c65bea1 Make PCI ID tables const so as not to trigger a warning about a large
symbol.
2005-05-03 12:36:06 +00:00
Michael Brown
24c0498cbc Move tulip_private structure into shared data. 2005-05-03 12:29:32 +00:00
Michael Brown
42eb786ced D'oh 2005-05-03 12:18:31 +00:00
Michael Brown
4bcd42699b Use __shared 2005-05-03 12:16:49 +00:00
Michael Brown
303ff86c75 Added example of how to use __shared.
Moved transmit before poll, since typically transmit will be implemented first.
2005-05-03 12:14:29 +00:00
Michael Brown
c112f12c5b Symbol fixups 2005-05-03 11:29:33 +00:00
Michael Brown
3c2851e563 Arbitrary alignment is now available.
Use shared symbols.
Correct other symbol violations.
2005-05-03 09:56:57 +00:00
Michael Brown
ee15c47cb5 Use shared symbols 2005-05-02 17:45:24 +00:00
Michael Brown
3267ca5568 Use shared symbols to save space 2005-05-02 16:35:44 +00:00
Michael Brown
60b82eb5cd Moved definition of __shared into compiler.h 2005-05-02 16:21:52 +00:00
Michael Brown
a1f50f27b0 Correct symbol violations reported by "make symcheck" 2005-05-02 15:22:32 +00:00
Michael Brown
282b6f1a1a isa.c uses the new table infrastructure. 2005-04-27 12:24:38 +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
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
99b857559b Added "name" field to struct bus_driver 2005-04-25 19:26:33 +00:00
Michael Brown
5bace628ae Added "name" field to bus structure. 2005-04-25 18:54:15 +00:00
Michael Brown
9dc7ebc152 Symbol errors caught by symcheck.pl 2005-04-23 14:45:37 +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
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
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
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
928c388c6f bswap_16() exists; no need to use __bswap_16() 2005-04-21 16:38:28 +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
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
a0c5430749 CONFIG_PCI and CONFIG_ISA no longer exist 2005-04-18 10:18:38 +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
03346742c0 Use only the header files that we need 2005-04-17 10:51:05 +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
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
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
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
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
39cb4d8dbb Fix debug message 2005-04-15 16:56:18 +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
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
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