Commit Graph

57 Commits

Author SHA1 Message Date
thorpej 3835413bc1 Overhaul of the ISA autoconfiguration code to support direct
configuration of devices logically attached to the ISA bus:

* Change the isa_attach_args to have arrays of io, mem, irq, drq
  resources.
* Add a "pnpnames" and a linked list of "pnpcompatnames" to the
  isa_attach_args.  If either of these members are non-NULL,
  direct configuration of the bus is being performed.  Add an
  ISA_DIRECT_CONFIG() macro to test for this.
* Drivers are not allowed to modify the isa_attach_args unless
  direct configuration is not being performed and the probe fucntion
  is returning success.
* Adapt device drivers -- currently, all driver probe routines return
  "no match" if ISA_DIRECT_CONFIG() evaluates to true.
2002-01-07 21:46:56 +00:00
lukem 3f7d8d47b6 add RCSID 2001-11-13 08:01:09 +00:00
thorpej 600cfcb30a bcopy -> memcpy 2001-07-18 20:52:47 +00:00
thorpej 42a4d5b520 bcmp -> memcmp 2001-07-18 20:42:54 +00:00
lukem 9bef152bd7 delint: need ; between case label and } 2001-05-15 14:57:49 +00:00
is b1e3063f0b Move tx chain result handling into iystart(). This way, ww normally only
need an interupt when the hardware hits tx chain end. We switch on one
int per packet sent when we fill up and go into OACTIVE mode.
Measured total interupt savings on large NFS writes: 20%.
2001-03-23 13:15:27 +00:00
is fe9376e508 Oops. We _do_ need to receive broadcasts. At least as long as we want ARP. 2001-03-22 14:30:47 +00:00
is a4dce1a3f4 Don't need to use the hash filter for a single individual address; make
sure concurrent receive processing is disabled.
2001-03-16 13:43:31 +00:00
is 929c6ab654 Don't abort chain processing on error. 2001-03-16 13:02:51 +00:00
is 89adf47818 Full documentation helps. Among other bugs, remove off-by-one-error when
initializing tx upper limit register.
2001-03-16 12:01:30 +00:00
is 4925cee33b It's one more if the max. coll. bit is set. 2001-03-15 13:27:31 +00:00
is 56ae0825ba Thats collisions, not errors! 2001-03-15 13:23:23 +00:00
thorpej 08afcfb9bd ALTQ'ify. 2000-12-14 06:59:01 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
tv 389bf995b5 %b -> bitmask_snprintf() 2000-08-09 01:56:33 +00:00
is 8be010f00d - Big endianness cleanup:
a) use stream methods when transferring data via the MEMPORT into/out of
the chips buffer memory
b) use htole16/le16toh when interpreting 16bit values in the chips memory

Both where NOPs on i386 machines, which is why this worked before on the
test machine(s), but would break when on a big-endian machine.
2000-07-21 13:54:38 +00:00
is d8205b6db1 Do a dummy read after writing through the memory access pipeline, to flush
it, before starting the command to install the multicast list.
(We did it right for writing data packets, but failed here.)
Without this, the last multicast address installed won't be made active.
2000-07-14 10:50:50 +00:00
mrg 7e81221f5a remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 16:27:51 +00:00
is a4c83bd5bf s/sc->sc_ethercom.ec_if./ifp->/ where appropriate and formerly forgotten,
for better readability.
2000-06-23 14:07:03 +00:00
is 139e08bead Only "complain" about successful multicast setup if IFF_DEBUG was set. 2000-06-23 13:54:50 +00:00
augustss 169ac5b3c1 Remove register declarations. 2000-03-30 12:41:09 +00:00
thorpej 90b9deda72 When padding short packets on transmit, don't include the CRC length
in the computation.  kern/8194.
1999-08-25 22:41:42 +00:00
thorpej f98d358a1f Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
directly, call the function pointer (*if_input)(ifp, m).  The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary.  Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
thorpej 34f3cd7ce9 Use ETHER_*_LEN constants from <net/if_ether.h> instead of defining them
ourselves.
1999-03-25 23:20:22 +00:00
explorer 3ebb419571 Update to slightly altered rnd_attach_source() api 1999-02-28 17:08:05 +00:00
is 2c7fa23c38 Fix Copyright dates 1999-02-16 23:34:10 +00:00
is dc068e0d1f Assign my files to The NetBSD Foundation, Inc. 1999-02-16 22:46:55 +00:00
mycroft e2686d0a1b Use splnet, not splimp. 1998-08-08 23:51:39 +00:00
rvb 11c3d96b49 Flush spurious #endif after ADDMULTI 1998-07-31 01:10:13 +00:00
is ae2fb64e3a Document supported boards near the top of the driver source code. 1998-07-30 21:28:15 +00:00
is 8bd9c69e11 Multicast support. 1998-07-30 16:40:19 +00:00
is a374ab61d8 ic/i82595reg.h 1998-07-28 16:02:34 +00:00
is 4fb93c48ec Remove dead code. 1998-07-28 14:44:46 +00:00
jonathan 011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
thorpej 5bc2217a49 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:24:55 +00:00
is 77b3a5be15 Put a debugging printf inside #ifdef IYDEBUG ... #endif. 1998-02-03 16:22:01 +00:00
thorpej 06ce220790 Update for config changes. 1998-01-12 09:39:57 +00:00
bouyer 2f8f801256 The iy driver now uses if_media (it was the last one, at last for i386, to use
the historical link? flags for media select)
XXX No pullup request for this. But if sysinst supports explicit media
XXX selection in 1.3, this should be in 1.3 as well.
1997-12-02 09:34:03 +00:00
drochner 805c7b6bc0 make it compile without "__BROKEN_INDIRECT_CONFIG" 1997-11-30 15:31:23 +00:00
thorpej 5c6445bc0d Don't panic if we fail to remap i/o or mem space in the attach function.
Instead, print a diagnostic and return.  (Some drivers do this already.)

Also, normalize the diagnostic message, and fix some places where the
printfs were getting ugly.
1997-10-20 18:43:03 +00:00
drochner 83d255de83 This driver can't handle wildcarded iobase.
(This is really a config file error.)
1997-10-18 14:09:52 +00:00
explorer f9370ddc7a Add and/or update rnd_*() hooks 1997-10-15 05:55:13 +00:00
mycroft bc66bb3e6e Oops; forgot to GC the last mbuf allocated when out of clusters.
Also, remove the internal mbuf queue, which is not needed by this driver.
1997-04-28 18:30:20 +00:00
mycroft 91a808523c Fix typo in previous. 1997-04-24 08:05:13 +00:00
mycroft 030c7010ee If we fail to allocate a cluster to hold a large packet, simply
drop it rather than using a chain of tiny mbufs.
1997-04-24 02:04:33 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
thorpej 769a499800 New bus.h implementation/interface:
- No more distinction between i/o-mapped and memory-mapped
	  devices.  It's all "bus space" now, and space tags
	  differentiate the space with finer grain than the
	  bus chipset tag.
	- Add memory barrier methods.
	- Implement space alloc/free methods.
	- Implement region read/write methods (like memcpy to/from
	  bus space).
This interface provides a better abstraction for dealing with
machine-independent chipset drivers.
1996-10-21 22:34:38 +00:00
christos 86373f8cf9 backout kprintf changes 1996-10-13 01:37:04 +00:00