Commit Graph

55 Commits

Author SHA1 Message Date
thorpej 387fc6dc87 Use CFATTACH_DECL(). 2002-09-30 20:37:04 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos 0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
wiz 2228f81f19 Fix two typos in comments. kern/16386 by Sean Davis. 2002-04-17 09:16:27 +00:00
christos 833f408cd1 stupid void pointers... tl_init() needs struct ifnet *... 2002-03-07 21:42:20 +00:00
itojun ac36f7cb2c bring in latest ALTQ from kjc. ALTQify some of the drivers. 2002-03-05 04:12:57 +00:00
christos d487168d5f PR/15754: Sean Davis: Initialize if_softc before calling the mii init
routines to avoid NULL pointer de-referencing in the callbacks.
2002-02-28 00:52:21 +00:00
tsutsui b87a051ec8 Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:17:05 +00:00
lukem 9048aaae21 add RCSID 2001-11-13 07:48:40 +00:00
bouyer dfa5bf68d9 - Allocate control structures at attach time rather than at init time.
Avoids using bus_dmamem_alloc/bus_dmamem_map at interrupt time.
  Should fix PRs kern/13924 and kern/13979 from dive@endersgame.net
- while I'm there convert to use ether_ioctl.
2001-09-20 10:04:10 +00:00
bouyer efdadcb7dc Properly set/clear IFF_OACTIVE. 2001-08-07 16:53:06 +00:00
bouyer 5243b06e38 Improvement: allocate one page of dmamem for Rx, Tx and nullbuff instead of
3 different ones.
Also pass the rigth seg/nseg to bus_dmamem_free().
Correct types in debug printf's
2001-08-06 19:20:26 +00:00
bouyer 7c292e3d22 - kill the carrier detect code. It's not usefull any more and can give
false informations on a loaded ethernet segement.
- convert to bus_dma(9) (better late than never :)
- add proper le32toh/htole32 so that it works on big-endian system (tested
  on macppc).
Close PR kern/10327.
2001-08-03 16:53:08 +00:00
thorpej 51e70f6731 bzero -> memset 2001-07-07 16:46:34 +00:00
thorpej 80f54c0005 bcopy -> memcpy, strcpy 2001-07-07 16:40:23 +00:00
bouyer 8a46c28bc6 Proper media support for Compaq Deskpro 4000. PR kern/13244 from
Andrew Gillham.
2001-06-21 16:33:33 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
thorpej 1646284c95 ALTQ'ify. 2000-12-14 06:42:57 +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
thorpej 3cf4e948c1 Cast arg to vtophys() to vaddr_t. 2000-09-05 22:37:33 +00:00
mrg 7c15053eed remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 16:08:42 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej a6f861574a No longer necessary to futz with ifp->if_baudrate here. 2000-03-06 21:02:00 +00:00
thorpej eed75dbc26 Don't dry to diving MIIF_NOISOLATE in the PHY drivers. Instead, pass
flags down from the parent to child vi mii_attach().
2000-02-02 17:09:38 +00:00
thorpej 84dc99fdea Bring some order to the chaos which was the MII code function naming
"conventions".
2000-02-02 08:05:26 +00:00
tron 821c7a01f8 As suggested by Jason Thorpe back out revision 1.27 because it broke
PHY probing for the ThunderLan driver.
1999-12-12 17:55:21 +00:00
thorpej 7479d29f00 Make the ThunderLAN and VIA Rhine drivers use the common MII bit-bang module. 1999-11-19 18:27:18 +00:00
thorpej 4bdf6bd731 Call mii_down() as appropriate. 1999-11-12 18:14:17 +00:00
thorpej ca9b9a3b2e Adapt to mii_phy_probe() change. 1999-11-04 00:24:00 +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
bouyer d907e1f61e First pass at support of Compaq NetFlex 3/P PCI: this one has
IO and Mem base address register inverted.
Still need some MII hack to get it fully fonctionnal.
1999-03-25 16:15:00 +00:00
tron edd69ba694 Because memory mapped access doesn't fail only with the docking station
for the TI TravelMate 5000 but also with at least one Compaq NIC we
prefer I/O mapped access again. Fixes PR kern/6690.
1999-01-11 22:45:41 +00:00
thorpej de14bf4f80 Manuel confirms that defaulting to AUTO is ok, to Do It. 1998-10-30 23:30:16 +00:00
thorpej 082116a927 vm_offset_t -> vaddr_t 1998-08-18 08:00:17 +00:00
thorpej 7ce9726a7d Oops, don't forget to tick the MII once a second. 1998-08-15 17:04:52 +00:00
bouyer 1bbc572701 Fix typos in last commit. 1998-08-15 16:58:53 +00:00
bouyer 53d231dae3 correct indent. 1998-08-15 16:49:33 +00:00
eeh a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
thorpej b1fb3ecb0f Adapt to the new MII code. This required splitting some structures into
if_tlvar.h, since the ThunderLAN PHY driver needs to know some things
about it's parent (and since it can only attach to a ThunderLAN chip,
this is the easiest way).
1998-08-11 00:09:26 +00:00
mycroft e2686d0a1b Use splnet, not splimp. 1998-08-08 23:51:39 +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 ea3a1d9c44 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-08 06:55:54 +00:00
thorpej 4626eef504 Slighly less brutal hack to deal with broken memory-mapped access of
the ThunderLAN on the TI TravelMate 5000 docking station: single it out,
and allow memory-mapped access on the Compaq products.
1998-05-05 07:17:12 +00:00
bouyer 0435e7ea98 Correct a bogosity in the adapter->mii attach code pointed out by cgd:
in pci/if_tl.c, call config_found() with a print function, instead of
printing ourself a message in if_tl.c if no miibus was found. The print
function is in mii/mii.c (mii_adapter_print()) so that it can be used by any
adapter (idea from the scsi system).
1998-02-11 19:02:11 +00:00
thorpej 06ce220790 Update for config changes. 1998-01-12 09:39:57 +00:00
drochner c7e3c24d53 make it compile without "__BROKEN_INDIRECT_CONFIG" 1997-11-30 15:18:58 +00:00
bouyer e0746c57db Fix for systems with multiple tl interfaces:
nullbuf (used to pad packets < ETHER_MIN_SIZE) is used for all tl
interfaces. Allocates only once, and never deallocate it (as we can't say
if another instance of the driver is interface is using it).
1997-11-18 12:26:09 +00:00