chs
9846849435
in the TULIP_ROM_MB_21142_MII case of tlp_2114x_isv_tmsw_init(),
...
use "cp" instead of "ncp" as a temporary pointer into the SROM.
we still need the value of ncp here, it points to the next media block.
(update the copy of this code in tlp_21142_reset() just 'cause.)
this makes the BNC port on the Adaptec ANA-6911A work.
2002-03-16 17:38:35 +00:00
chs
1ba402084f
assume that 21143 SROM info blocks are in extended format (as the spec
...
requires), even if the bit to indicate this is not set.
this makes Phobos P430 4-port cards work.
2002-03-14 04:44:34 +00:00
tsutsui
84926576f1
Call malloc(9) with M_ZERO flag instead of memset() after malloc().
2002-01-12 16:03:11 +00:00
yamt
5bf4d5554b
use little-endian crc on multicast hash for admtek chips.
2001-11-22 05:03:04 +00:00
lukem
a4bae8b066
add/cleanup RCSID
2001-11-13 13:14:31 +00:00
perry
7a702dcf66
trivially rename some macro parameters to avoid lint warnings.
2001-11-10 22:48:09 +00:00
wiz
456dff6cb8
Spell 'occurred' with two 'r's.
2001-09-16 16:34:23 +00:00
wiz
f33f8d5e61
Succeed has two 'c's.
2001-08-20 11:57:34 +00:00
mrg
4f3eac8332
mtod() with uintptr_t, not bus_addr_t.
2001-08-14 11:57:26 +00:00
thorpej
13dab3bfa7
Make sure to initialize the all Rx descriptors properly in *_init()
...
even if mbufs for them are already allocated.
2001-07-23 17:20:03 +00:00
thorpej
623f83a793
Use BUS_DMA_READ and BUS_DMA_WRITE in some obvious places.
2001-07-19 16:25:23 +00:00
thorpej
c2c26e1362
bcmp -> memcmp
2001-07-07 05:35:39 +00:00
thorpej
9988acd41e
Don't need INET or NS includes here.
2001-06-12 22:28:15 +00:00
wiz
0a600be867
receive, not recieve
2001-06-12 15:17:10 +00:00
cgd
023e9f0649
C requires that labels be followed by statements.
2001-02-24 00:01:22 +00:00
jdolecek
522f569810
make some more constant arrays 'const'
2001-02-21 21:39:52 +00:00
thorpej
3d0bbf9152
Filter "receive process failed to idle" on noisy chips (like the
...
ADMtek AN985).
2001-01-17 19:37:09 +00:00
thorpej
2663816278
Fix register offset botch when setting the multicast filter on
...
the ADMtek AN985.
2001-01-16 17:33:24 +00:00
thorpej
7bebf9a408
On ADMtek chips, don't just idle the chip when programming the
...
multicast filter. These chips don't like to go into "idle" state
very much, so we have to use the big hammer and reset the chip,
instead.
2001-01-08 22:12:57 +00:00
thorpej
e9bb880aaf
The ADMtek AN985 "ghosts" the single built-in PHY at every MII address.
...
Work around this by having a custom media init routine that limits the
search to MII address 1.
2001-01-08 21:40:29 +00:00
thorpej
b79ddef845
Also ignore receiver errors if VLAN_MTU is enabled; the 21040 appears
...
to require this.
2001-01-07 23:29:12 +00:00
thorpej
ba4b6847df
Fix a problem with the ALTQ changes that can cause bogus memory
...
refernces. Problem reported by Luke Mewburn.
2000-12-19 00:06:01 +00:00
thorpej
6b16911a43
ALTQ'ify.
2000-12-14 06:27:23 +00:00
takemura
3c9d9276dc
Add new powerhook argument values, PWR_SOFTSUSPEND, PWR_SOFTSTANDBY and
...
PWR_SOFTRESUME. Apm calls powerhook with the values in normal interrupt
priority level while others are protected with splhigh().
2000-11-26 11:08:57 +00:00
thorpej
b84f740be0
Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach().
2000-11-15 01:02:11 +00:00
thorpej
4318834442
Don't trim off the FCS, pass it up.
2000-10-15 19:56:31 +00:00
thorpej
2198741306
Use ether_ioctl().
2000-10-11 16:57:45 +00:00
onoe
fcde56c9ba
Add flags to indicate that tlp_init() should set some more BUSMODE bits.
...
TULIPF_BLE /* data is big endian */
TULIPF_DBO /* descriptor is big endian */
These setting is required for Big-endian bus front-end (such as APbus for
newsmips) to work with tulip. Also,
sc_maxburst
member is added to the tulip_softc to limit the maximum burst length.
This member defaults to zero which means no restriction for burst length.
2000-10-11 14:59:52 +00:00
enami
db6fba6bdf
Move inclusion of rnd.h and sys/rnd.h from tulip.c to tulipvar.h.
2000-10-09 14:31:01 +00:00
enami
ca88e2b6bd
Make tulip a random source.
2000-10-09 12:54:28 +00:00
bouyer
2e6cb6a878
When 802.1Q MTU, we have to ignore the Frame Too Long errors, and there's no
...
need to disable RWT and JAB.
2000-10-05 07:22:43 +00:00
thorpej
5fcde4924f
Support ETHERCAP_VLAN_MTU by igorning Receive Watchdog and Transmit Jabber
...
errors if VLANs are configured on the interface.
2000-10-03 23:35:55 +00:00
thorpej
7edd5d54bc
Add support for the ADMtek AN983 and AN985.
2000-10-03 04:32:00 +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
castor
b6dd28b4ce
Support some differences in the Macronix 98715AEC-C and E chips from the other
...
98715* series.
The MX98715AEC-[C,E] use a different location in the serial eerom for
LED control, and programming it with the original location's values
caused unpredictable behavior.
Also, start integrating fixes where media changes on an adapter
under load may fail. There's more work to be done here, but I need
to sort out our internal changes a little more carefully.
2000-08-03 03:07:30 +00:00
thorpej
a02e08bf4f
Remove work-around for Lite-On PNIC in tlp_filter_setup() that is
...
apparently no longer necessary (probably due to other fixes that
have happened in the filter setup path) and is in fact harmful.
Based on a patch from Krister Walfridsson, who claims this makes
his newer NetGear FA-310TX work (although, my older NetGear FA-310TX
still does not, but fails in an entirely different way).
2000-07-04 04:18:17 +00:00
mrg
314f1e97c5
remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h>
2000-06-28 17:12:48 +00:00
thorpej
8a3725612d
Add support for the Davicom DM9102 and DM9102A 10/100 Ethernet chips.
...
Partially based on diffs submitted by Matthew Orgass <darkstar@pgh.net>
and IWAMOTO Toshihiro <iwamoto@sat.t.u-tokyo.ac.jp>.
2000-05-26 16:38:13 +00:00
thorpej
f4a3f5ea48
So, while the DEC chips and other clones want no FS|LS in the
...
setup descriptor, apparently the Xircom X3201-3 requires it.
2000-05-25 18:46:07 +00:00
thorpej
2f08658512
Fix a couple of typos in debugging messages. From IWAMOTO Toshihiro,
...
kern/10194.
2000-05-25 16:37:33 +00:00
thorpej
05a766d42e
Don't set FS and LS in the setup packet descriptor. From
...
IWAMOTO Toshihiro <iwamoto@sat.t.u-tokyo.ac.jp>, kern/10194,
and confirmed with the 21040 manual.
2000-05-25 16:36:03 +00:00
thorpej
b5cf4e96cf
Use big-endian CRC on ADMtek multicast hash.
2000-05-18 03:02:45 +00:00
thorpej
d6c07323b2
If using ring-mode, don't update the receive descriptor list base address
...
when a receive overrun occurs. From Castor Fu <castor@geocast.com>.
2000-05-12 17:09:27 +00:00
thorpej
6e4b4f6954
Use ether_crc32_le().
2000-05-12 16:45:42 +00:00
thorpej
0ed7436590
Add a patchable variable `tlp_srom_debug' that enables dumping of
...
SROM output, etc.
2000-04-07 18:58:15 +00:00
thorpej
5a41b5bf56
- if_tlp_cardbus.c: Use the `pmreg' pointer passed by by
...
cardbus_get_capability() [mirror change already made to if_tlp_pci.c]
- if_tlp_cardbus.c: If we don't find an ISV SROM, try to grab the
Ethernet address from the CIS.
- if_tlp_cardbus.c: set CardBus cards to store-and-forward mode from
the get-go.
- Put the TxThresh tables in tulipvar.h, and use them in the CardBus
and PCI front-ends to go to store-and-forward mode.
- Document the Xircom X3201-3 clone a little more.
2000-04-04 19:22:50 +00:00
mycroft
b1c28384dc
If the SROM size is to far out of range, issue a diagnostic and set the size
...
to 1Kb. Some boards (e.g. my SMC9332) have a broken MicroWire interface.
2000-04-02 23:38:05 +00:00
thorpej
dc680eb373
Slight correction to last: really only do it if it's a 21142 or 21143.
2000-04-02 19:02:34 +00:00
mycroft
229fcf5bbe
When using MII on 2114[23] chips, zero the SIA TXRX register to disable the
...
internal Nway engine. This fixed a major performance problem.
Thanks to Matt Thomas for pointing this out.
2000-04-02 17:23:33 +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