Commit Graph

2039 Commits (4ce8d61a5cb8a0e3f68bff8400ba2b8246c9a58f)

Author SHA1 Message Date
Marty Connor 4e177aee17 Change #warning to FIXME for depca
This ancient ISA driver should probably be removed.
It is hard to get a card to test it with, and there
are comments to the effect that it cannot work with
relocation.  I would be quite interested to get a
bug report by someone who actually has this card.
2007-07-22 20:56:26 -04:00
Marty Connor 767a3cef77 Changed #warning to FIXME for nvo hack warning. 2007-07-22 20:52:32 -04:00
Marty Connor 63c9131eeb Add NIC to targets that are always made.
Even though it is only currently used for rom-o-matic.net code,
it is good to make sure it gets built, and that the parsing code
is working.
2007-07-22 20:41:53 -04:00
Michael Brown 07e11f8af9 Minor debug improvement 2007-07-19 17:01:21 +01:00
Michael Brown 2cfe0dee1f Don't trash the %ecx value returned by relocate(). This was causing
us to round down the size for the relocation copy to the nearest 64kB
(+0x10 bytes); this just happened to work on most machines because the
last 64kB of the image is all-zeroes anyway (it's the .bss).
2007-07-19 16:07:31 +01:00
Michael Brown a8111e8ab7 Remove INT 13,4b handler; it represents an incomplete feature (CD-ROM
emulation support) for an unknown purpose, and breaks grub.
2007-07-19 11:16:05 +01:00
Michael Brown 0d9d2ccbae Completed definition of struct int13_cdrom_specification, and moved to
int13.h.
2007-07-19 11:15:01 +01:00
Michael Brown 013d381e3c Real-mode code might set the direction flag, which would cause carnage. 2007-07-17 13:46:37 +01:00
Michael Brown c94cdf2b7d Move .zinfo to libprefix.S; it doesn't belong with the decompression code. 2007-07-17 12:52:54 +01:00
Michael Brown cb237819ca Produce no output unless -v is specified or an error occurs. 2007-07-17 01:59:48 +01:00
Michael Brown dc52db4920 Removed dead code identified by symcheck 2007-07-17 01:43:19 +01:00
Michael Brown 94415b7669 Added missing "static" declarations 2007-07-17 01:42:10 +01:00
Michael Brown 19904804da Restore the "shared symbol found only in a single object should be
treated as being provided by that object" code.
2007-07-17 01:39:06 +01:00
Michael Brown 62d92348fe Added symbols that the DBG() macros will use. 2007-07-17 01:24:04 +01:00
Michael Brown f44969f7df nameserver should be static 2007-07-17 01:21:20 +01:00
Michael Brown 7df3d4a177 Obsolete code removal 2007-07-17 01:19:35 +01:00
Michael Brown 60ce8e884d Added missing extern 2007-07-17 01:16:24 +01:00
Michael Brown c3290aae54 Use objdump -t for symcheck; it allows us to take the symbol section
into account (and so remove the false positives due to .tbl.* symbols).
2007-07-17 01:15:39 +01:00
Michael Brown 38dbe14bbe Kill off redundant references to the .zprefixes. 2007-07-16 17:26:07 +01:00
Michael Brown 84551d485e Update all prefixes currently referring to _load_size to include a
compressor fixup section.
2007-07-16 17:17:26 +01:00
Michael Brown 0929142a15 Rename _rom_size to _load_size_sect, since hdprefix.S also uses it. 2007-07-16 17:03:19 +01:00
Michael Brown 048bbeeebc Compressed ROM images now work. 2007-07-16 16:58:38 +01:00
Michael Brown 37fa9a8706 Split the objcopy stage out of final image preparation to a separate
bin/%.bin target.
2007-07-16 13:41:27 +01:00
Michael Brown 6d2e4e719c Move uninitialised .data16 variables to .bss16; saves around 2000
bytes of useless zeroes in the final image.
2007-07-16 13:22:12 +01:00
Michael Brown 389204713f Kill off some long-redundant CFLAGS 2007-07-16 13:15:12 +01:00
Michael Brown 833d6cc8ec Add __bss16() macro, and allow use of .bss16 section by removing
link-time check for section overlaps.  (In order to avoid wasting
space in the executable image, .bss16 will overlap with the following
section, which is .text).
2007-07-16 13:10:49 +01:00
Michael Brown c482fc90fb Revert "no need for depending on build library ("blib")"
This reverts commit 9dc2515d7e.

I want "make" to actually build something.
2007-07-16 13:06:58 +01:00
Michael Brown a8780a4fe4 Added nrv2b binary to ignore list 2007-07-15 13:31:31 +01:00
Michael Brown ab859a5355 Use a single _payload_offset linker-defined variable to locate the
start of the non-prefix blocks in the loaded image, and rely on the
image ordering.  This should make introducing compression much easier.
2007-07-15 02:52:02 +01:00
Michael Brown aa729d2d10 Reverting unintended change caused by merge of indolent/natsemi branch. 2007-07-15 02:22:49 +01:00
Michael Brown c27b06fc4d Merge commit 'indolent/natsemi' 2007-07-15 02:21:55 +01:00
Udayan Kumar 37517f7752 removed type casting from DBG statements. 2007-07-14 21:08:07 -04:00
Udayan Kumar fc47f2a4ce replaces printf with dbg 2007-07-14 21:08:07 -04:00
Udayan Kumar 04962a0b31 added natsemi.h 2007-07-14 21:08:06 -04:00
Udayan Kumar ecfa8f41e8 mdc's+nvs 2007-07-14 21:08:06 -04:00
Udayan Kumar 008bfb6e85 more debugging 2007-07-14 21:08:06 -04:00
Udayan Kumar f58c8511a0 more debugging 2007-07-14 21:08:06 -04:00
Udayan Kumar d6ceb8bbd7 added silicon revision number 2007-07-14 21:08:06 -04:00
Udayan Kumar 334abbde83 init_fix_up 2007-07-14 21:08:06 -04:00
Udayan Kumar 751cb2e450 added cable magic for 100Mps in natsemi 2007-07-14 21:08:06 -04:00
Udayan Kumar 11d246f3b5 duplex setting added to natsemi.c 2007-07-14 21:08:06 -04:00
Udayan Kumar 621f6fb503 more indentation and styling done 2007-07-14 21:08:06 -04:00
Udayan Kumar bfa322bb19 :x 2007-07-14 21:08:06 -04:00
Udayan Kumar f213f6a1a3 no changes 2007-07-14 21:08:06 -04:00
Udayan Kumar a8c2a4fa11 added nat_irq to natsemi.c 2007-07-14 21:08:06 -04:00
Udayan Kumar 132d0fb70c stopped memory leak in natsemi::nat_open() 2007-07-14 21:08:06 -04:00
Udayan Kumar 83dd194330 Natsemi commented and almost done 2007-07-14 21:08:05 -04:00
Udayan Kumar 4f2fab2e14 natsemi.c is workin 2007-07-14 21:08:05 -04:00
Udayan Kumar a86b12728a irq still not working will have to remove it 2007-07-14 21:08:05 -04:00
Udayan Kumar 2383a070d8 natsemi 2007-07-14 21:08:05 -04:00
Udayan Kumar 5e91a38269 interrupt in natsemi 2007-07-14 21:08:05 -04:00
Udayan Kumar 0d4ecfa63c enabled interrupt in natsemi.c 2007-07-14 21:08:05 -04:00
Udayan Kumar 9ad59b60c5 added change log to natsemi.c 2007-07-14 21:08:05 -04:00
Udayan Kumar 6d4dafdc6e added netdev_tx_complete to natsemi.c 2007-07-14 21:08:05 -04:00
Udayan Kumar c6d0ef3478 added endianness to natsemi. 2007-07-14 21:08:05 -04:00
Udayan Kumar 0c324caecf free_netdev -> netdev_put 2007-07-14 21:08:05 -04:00
Udayan Kumar 623d10c66f debugging natsemi.c 2007-07-14 21:08:05 -04:00
Udayan Kumar 4a73631106 added eeprom from rtl8139 but not working 2007-07-14 21:08:05 -04:00
Udayan Kumar 9e962c3a01 natsemi now needs eeprom access 2007-07-14 21:08:05 -04:00
Udayan Kumar 99c680f743 same as before, but now compiling natsemi 2007-07-14 21:08:05 -04:00
Udayan Kumar c8f6207e7e added polling and transmit. eeprom access still remaining 2007-07-14 21:08:05 -04:00
Udayan Kumar 97efdbe9d7 skel of new natsemi driver (still in developments) 2007-07-14 21:08:05 -04:00
Udayan Kumar 4cea792470 testing if it works 2007-07-14 21:08:05 -04:00
Michael Brown 208ff0d42e Revert mdc's warnings purge on natsemi.c, to allow for a clean rebase. 2007-07-14 21:08:05 -04:00
Michael Brown 0b5059c40b Skip the length field prepended by util/nrv2b.c 2007-07-15 02:01:17 +01:00
Michael Brown b37e267d1b Modified calling convention: we now update %esi and %edi just like a
"rep movsb".
2007-07-15 01:51:32 +01:00
Michael Brown 3feac9465e "not" doesn't affect flags, "xor $-1" does. 2007-07-15 01:25:13 +01:00
Michael Brown 7e3a8f5e10 Remove more obsolete files 2007-07-14 23:16:01 +01:00
Michael Brown 26473105cd On advice of hpa: be more patient with the KBC and SCPA methods; retry
in a long loop before giving up on them.  Record method which worked
and default to that method on next attempt.
2007-07-14 20:56:12 +01:00
Michael Brown adf192f566 Shrink cpu.c and render it useful for our purposes. 2007-07-14 19:12:13 +01:00
Michael Brown 25fd42ca87 Reduced etherboot.h dependencies to avoid unnecessary rebuilds.
etherboot.h is only now used by drivers that have not been updated to
the new API.
2007-07-14 15:52:23 +01:00
Michael Brown e330db3c74 Dead code removal.
Kill off use of etherboot.h outside drivers/net.
2007-07-14 15:42:26 +01:00
Michael Brown 95c07736cb Be more aggressive in attempts to enable A20, now that we have the
optimisation of only trying to do so when necessary.
2007-07-14 14:21:18 +01:00
Michael Brown 8624fdc445 Kill off the enforced RX quota; it only seems to hurt on real hardware. 2007-07-14 00:30:11 +01:00
Michael Brown 57b5e227ff Use fast in-situ test for gate A20 being set, to cut down on the
number of (potentially very slow) gateA20_set operations.

Die with a fatal error if we are unable to set gate A20; if this fails
then we are bound to experience memory corruption at a later stage,
and I'd prefer to pick it up early.
2007-07-13 13:32:49 +01:00
Michael Brown 096fa94f0c Add support for TCP timestamps 2007-07-13 11:32:53 +01:00
Michael Brown eb530845d4 Adjust received length to take into account any already-received data
in tcp_rx_data().

Clarify comments on discarding duplicate or out-of-order data.
2007-07-13 11:31:58 +01:00
Michael Brown d5735c631c Avoid reusing auto-allocated ports after connection close. 2007-07-13 11:25:00 +01:00
Michael Brown 2ac7694c3e Improve error reporting for strange length combinations reported by
the UNDI stack.

Ignore obviously invalid length combinations (as returned by
e.g. VMWare's PXE stack).

Limit to one packet per poll to avoid memory exhaustion.
2007-07-10 20:59:21 +01:00
Michael Brown efd322091d Set up %ds *before* testing a value in our data segment (d'oh!).
Always send EOI; do not chain to BIOS's default interrupt handler.
They are just too unpredictable; at least VMware's seems to kill the
machine if you go anywhere near it.

Disable interrupts after return from PXENV_UNDI_ISR, just in case some
dumb PXE stack enables them.
2007-07-10 17:08:32 +01:00
Michael Brown f6f9a3098d Report RX errors via netdev_rx_err() 2007-07-10 17:01:18 +01:00
Michael Brown fb16f90699 Dump first 64 bytes of chained ISR when debugging is enabled. 2007-07-10 16:57:55 +01:00
Michael Brown b3e44a24b1 May be required in some disconnect scenarios 2007-07-10 06:31:11 +01:00
Michael Brown 4075f7596b Unplug before sending close() message, to avoid screwing up interfaces
which respond to close with a reopen() (e.g. iSCSI).
2007-07-10 06:25:30 +01:00
Michael Brown d3ad76bc74 Add debug messages to process.c 2007-07-10 06:24:30 +01:00
Michael Brown edc4648c39 Protect ISR against failure to unhook. 2007-07-10 04:34:53 +01:00
Michael Brown 4e14b020a5 Master IRQ should be EOIed first, I think. 2007-07-10 04:33:59 +01:00
Michael Brown 19871cbb96 We probably ought not to call INT13 with interrupts disabled. 2007-07-10 04:32:30 +01:00
Michael Brown 027fed72c1 Working code to call the PXE stack from within the ISR. 2007-07-10 04:21:24 +01:00
Michael Brown 976a8514cb Hopefully solve the problem requiring the occasional "rm -rf bin/deps". 2007-07-09 23:10:55 +01:00
Michael Brown cd7e296cbe Always increase number of BIOS drives when registering 2007-07-09 20:42:04 +01:00
Michael Brown b90d321dfb Change %dl fixup rules for INT13:
INT 13,08 : read number of drives from 40:75
INT 13,15 : do nothing
all others : restore original value of %dl
2007-07-09 20:37:39 +01:00
Michael Brown c7d9fdb5b9 Proof of concept; works, but has several hard-coded hacks. 2007-07-09 20:28:40 +01:00
Michael Brown 8bce52d348 Set CF by default, clear on success (rather than clearing and setting
on failure).
2007-07-09 19:02:41 +01:00
Michael Brown f0c44f2f71 Remove xfer_ready() (it has been replaced by xfer_window()) 2007-07-09 03:58:46 +01:00
Michael Brown 55d03ccbe3 Added missing "static" 2007-07-09 03:54:29 +01:00
Michael Brown 9dc6a1e678 Remove some obsolete stream-API files 2007-07-09 03:53:06 +01:00
Holger Lubitz 4ff85d9f15 Add -mpreferred-stack-boundary=2 to i386 CFLAGS as it's almost always a win. 2007-07-09 03:32:54 +01:00
Holger Lubitz bfc4737751 Update Makefile for compilation on ARCH=x86_64 2007-07-09 03:31:14 +01:00
Michael Brown 487dc5be56 Fix up iscsiboot missing prototype warnings 2007-07-09 01:10:32 +01:00