enami
4977f2fb2d
Advertize pause capability (802.3x flow control) to peer.
2001-08-06 09:51:40 +00:00
bouyer
10a5470050
Ops, forgot to commit this one:
...
- kill carrier detection code, it's not that usefull and give false indications
on loaded ethernet segments
2001-08-04 02:21:24 +00:00
thorpej
7459c35d44
Clean up 1000BASE-SX autonegotiation, and add a way to advertise
...
PAUSE capability.
2001-07-27 22:44:59 +00:00
thorpej
4333749c7a
Use the bit-swapped OUI for the 5221. (Have I mentioned that I really
...
don't like how the current MII_OUI() works?)
2001-07-27 17:58:20 +00:00
thorpej
773c261d65
Add a 3Com 3c905B internal PHY.
2001-07-27 17:55:34 +00:00
thorpej
3d3c5fa78c
Regen; added a 3Com 3c905B internal PHY made by Broadcom.
2001-07-27 17:55:07 +00:00
thorpej
4063cb411b
Fixup some Broadcom entries, add an entry for Broadcom PHY that
...
is built-in to some 3Com 3c905B cards.
2001-07-27 17:54:40 +00:00
thorpej
4a416b823f
Fix 1000BASE-X duplex negotiation. That'll teach me to read the
...
manual more carefully next time.
2001-07-25 22:00:43 +00:00
thorpej
bb93036fa9
Regen.
2001-07-20 07:07:28 +00:00
thorpej
959f6ee3f3
Adjust for the corrected Marvell entry.
2001-07-20 07:07:05 +00:00
thorpej
38f94a6fbe
Bleh, I don't like the way our miidevs works now. Repair the
...
Marvell Semiconductor entry.
2001-07-20 07:06:42 +00:00
thorpej
41a68e94a9
Driver for the Level One LXT-1000 10/100/1000 PHY.
2001-07-12 21:54:40 +00:00
thorpej
be71426b74
Regen; Add LXT-1000, clean up.
2001-07-12 21:25:31 +00:00
thorpej
6e65eb3c21
Add LevelOne LXT-1000 10/100/1000 PHY, clean up some Gig-E
...
PHY names.
2001-07-12 21:25:07 +00:00
thorpej
aef9e7bea3
Code to handle generic ten-bit interfaces (1000BASE-{LX,SX} fiber
...
interfaces).
2001-07-12 18:49:38 +00:00
thorpej
0e863b15a6
Driver for the Marvell 88E1000 ``Alaska'' 10/100/1000 PHY.
2001-07-12 17:30:45 +00:00
thorpej
39928114d6
Regen; corrected Marvell entries.
2001-07-12 17:29:49 +00:00
thorpej
511aa23898
Correct Marvell OUI, and 88E1000 model number.
2001-07-12 17:29:18 +00:00
bjh21
8d829065a6
IFM_1000_TX -> IFM_1000_T, as (breifly) discussed on tech-net.
2001-06-30 17:53:58 +00:00
thorpej
0b0010a7c3
When probing for a PHY, look at the EXTSTAT bit in the BMSR, as well,
...
not just the media mask. This prevents PHYs/TBIs that only support
Gigabit media from slipping through the cracks.
2001-06-20 01:42:41 +00:00
thorpej
7914a89b02
Add support for the Seeq 80225 10/100 Ethernet PHY. This is just
...
a stripped-down version of the 80220/80223.
2001-06-19 20:10:54 +00:00
thorpej
93169d8a94
Regen; added Seeq 80225 10/100 PHY.
2001-06-19 19:51:27 +00:00
thorpej
5d3c31d576
Add Seeq 80225 10/100 PHY.
2001-06-19 19:51:04 +00:00
enami
578730c551
Initialize sc->sc_anegticks to 5 on attach to prevent panic due to
...
assertion failure.
2001-06-08 07:09:40 +00:00
thorpej
9987ee5249
Driver for the Broadcom BCM5201/BCM5202 "Mini-Theta" Ethernet
...
PHYs. This is also the same PHY core as in the 3Com 3c905C.
The PHY is documented in the 3c905C manual.
2001-06-02 21:42:10 +00:00
thorpej
424f7a1e65
Make PHY matching all table-driven.
2001-06-02 21:39:38 +00:00
thorpej
33a6994da1
Driver for Broadcom BCM5400-family Gig-E PHYs. Programming
...
information gleaned from FreeBSD.
2001-06-01 16:49:59 +00:00
thorpej
996df042df
Add support for the DP83815 MacPHYTER internal PHY to the DP83843 PHYTER
...
driver, since for our purposes, they are compatible.
2001-05-31 20:30:21 +00:00
thorpej
1042f830e5
Regen; added several more PHYs.
2001-05-31 19:41:07 +00:00
thorpej
0c94166e28
Add several additional PHYs.
2001-05-31 19:40:33 +00:00
thorpej
f752c7d328
On the Gig PHYTER, For whatever reason, the 10baseT-related bits of the
...
BMSR are wired to 0, yet the PHY supports 10baseT. So, to get around
this, we test the ANAR 10baseT bits after a PHY reset. These bits are
set according to input pin 180. If we see the 10baseT ANAR bits set,
we fake them in the BMSR so that we can actually autonegotiate 10baseT.
2001-05-31 18:47:22 +00:00
thorpej
2128d9199a
Enable frobbing the 1000baseT control register on Gig-E PHYs,
...
used for hard-wiring master mode, and for advertising the 1000baseT
media options during autonegotiation.
2001-05-31 18:44:48 +00:00
thorpej
628a67ab31
Add a driver for the NatSemi DP83891 and DP83861 Gig PHYTER
...
10/100/1000 PHYs.
2001-05-31 16:06:58 +00:00
thorpej
ea1aed7db2
Make the number of ticks between auto-negotiation tries PHY-specific,
...
and default every PHY to 5 seconds (what we used before). If we find
Gig-E media on a PHY, bump it to 10 seconds, since it can take 5
seconds just to negotiate a Gig-E link.
2001-05-31 16:02:29 +00:00
thorpej
ad090e7062
Regen; added NatSemi DP83891.
2001-05-31 03:32:38 +00:00
thorpej
3ae72855b1
Add product ID for the NatSemi DP83891 1000baseTX PHY.
2001-05-31 03:32:20 +00:00
thorpej
9f63d3cd86
Typo in last.
2001-05-31 03:07:14 +00:00
thorpej
f07f44812d
The 1000baseT CR and SR are overlapped with the 100base-T2 CR and SR.
...
Note this in a comment. Add the 1000baseT CR and SR bits.
2001-05-31 03:06:46 +00:00
soren
79859fb138
Regen.
2001-05-22 16:07:56 +00:00
soren
b16ba1d8cd
Add i82562ET id.
2001-05-22 16:04:27 +00:00
drochner
199e9f8164
regen
2001-05-17 17:39:30 +00:00
drochner
10aff2d3f0
argh - the OUI of PMC-Sierra is 00-e0-04, according to IEEE.
...
They managed to mess it up in a new way.
2001-05-17 17:39:00 +00:00
drochner
1ea0cb1ea4
support the fiber output of the PHY device, enabled if the MIIF_HAVEFIBER
...
flag is passed in from the board driver
2001-05-17 17:29:54 +00:00
drochner
002851041c
re-enable mii_flags in attach args - I've found a use for it: tell the
...
PHY which support it that a fiber interface is present
2001-05-17 17:28:21 +00:00
matt
91d9961f24
Regen
2001-05-15 23:18:16 +00:00
matt
75d77bf185
Add OUI for PMC-Sierra. Add BCM5221 Phy. Add PM8351 Phy.
2001-05-15 23:17:48 +00:00
matt
f5d9baae2f
Note that extended status is in register 15
2001-05-15 23:16:40 +00:00
thorpej
c2ffdccb2b
Regen; Add National Semiconductor DP83861 1000baseTX PHY.
2001-05-15 21:37:33 +00:00
thorpej
8fd542b023
Add National Semiconductor DP83861 1000baseTX PHY.
2001-05-15 21:37:04 +00:00
thorpej
d3a64bd0d8
Add code to recognize and set media on GMII (Gigabit MII) PHYs.
...
802.3 doens't specify ANAR or ANLPAR bits for GMII. Need to
use PHY-specific registers for this, for now, which means we
need specific drivers for the Gigabit-capable PHYs (I think the
most common is the BCM5400).
2001-04-30 19:49:08 +00:00
thorpej
63604adafa
Add a bunch of Gig-E definitions.
2001-04-30 19:21:03 +00:00
lukem
d2ac513298
remove some lint
2001-04-30 01:19:40 +00:00
thorpej
bf2dcec4f5
Remove the use of splimp() from the NetBSD kernel. splnet()
...
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
augustss
b728f196e9
Comment out some flag stuff that isn't used. Someone should take a look
...
at this. There is something fishy with the mii code, the last argument to
mii_attach() is not being used in any meaningful way.
2001-04-13 11:14:55 +00:00
augustss
205b10ed17
Add a flag to mii_flags which will cause autonegotiation to use tsleep()
...
instead of callout. This way adapters which need a process context for
PHY register access (e.g. USB adapters) have a chance.
2001-04-13 11:12:36 +00:00
jdolecek
372e5956ef
Only install headers which are actually used by our userland. This
...
saves about 2.2MB under /usr/include/dev/. Discussed on tech-kern@
recently.
I HOPE to get the list right. The headers I left in are ones
used for MI tools and those whose usage I discovered by grep over tree sources.
Feel free to put needed includes back in if you encounter anything which
should not be removed from lists.
2001-04-11 07:42:31 +00:00
drochner
a6ae0975d5
regen
2001-04-09 09:39:57 +00:00
drochner
552d4c8236
add media options for the Intel UCH2 internal ethernet controller
2001-04-09 09:39:24 +00:00
drochner
adf9edcd41
update for miidevs changes
2001-03-28 14:16:49 +00:00
drochner
3752421a75
regen
2001-03-28 14:15:23 +00:00
drochner
bf6a2bf86c
adapt to corrected OUI calculation
2001-03-28 14:14:57 +00:00
drochner
9e8def737f
Reading the IEEE specs shows that the bits have to be reversed when
...
mapping an OUI to the MII id registers.
Doing this in the MII_OUI() macro would be too complex, so put it into
a helper function and move the MII id register interpretation stuff
into miivar.h.
2001-03-28 14:13:06 +00:00
thorpej
a9d20501af
Remove a comment; this module has not been compatible w/ BSD/OS's
...
for quite a long time.
2001-03-24 20:44:26 +00:00
lukem
3aeb5f2f29
whitespace police
2001-02-24 01:59:46 +00:00
augustss
6861904096
Regen.
2001-01-07 15:01:06 +00:00
augustss
55c57a573f
Add an Altima PHY.
2001-01-07 15:00:46 +00:00
soren
232e2c5ef9
Regen.
2000-11-07 13:53:59 +00:00
soren
0dc9fd53b9
Just print 'Intel' for their other OUI.
2000-11-07 13:53:42 +00:00
augustss
5a356af882
Regen.
2000-11-06 22:32:49 +00:00
augustss
75367f830a
Add some OUIs and models. From OpenBSD.
2000-11-06 22:32:26 +00:00
sommerfeld
2383226766
Silence format warning.
2000-10-11 22:03:33 +00:00
martin
10debdeb9c
Fix to autonegotiation problem with some fxp cards. Fix found and reported
...
by Erich T. Enke et al. on current-users. This fixes PR 10550.
2000-07-27 22:14:48 +00:00
thorpej
49014bf59f
Restructure the PHY entry points to use a structure of entry points
...
instead of discrete function pointers, and extend this to include
a "reset" entry point. Make sure any PHY-specific reset routine is
always used, and provide one for the LXT-970 which disables MII
interrupts (as is done for a few other PHYs we have drivers for).
2000-07-04 03:28:59 +00:00
sommerfeld
ea313649ff
defopt MIIVERBOSE
2000-06-11 02:13:34 +00:00
augustss
e169e0018c
Regen.
2000-05-08 13:26:05 +00:00
augustss
43c5780ae1
Allow a verbose description to be printed with the option MIIVERBOSE.
2000-05-08 13:25:34 +00:00
augustss
56aa5c16d1
Add another AMD chip.
2000-05-08 13:23:21 +00:00
tsutsui
fa07b81e43
Make to match also MII_OUI_DAVICOM.
...
(This seems to work, but any GENERIC does not have dmphy...)
2000-04-02 03:06:19 +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
411a31adb2
- Go to splimp() when sending the rtsock message regarding link status.
...
- Would like to notify protocols if a link goes up or down, to e.g.
restart Duplicate Address Detection, etc. Add a comment to this
effect.
2000-03-15 20:34:43 +00:00
thorpej
ad61d101be
Factor out the tick handling code into a common function, and send
...
rt_ifmsg's when the link speed or link status changes.
2000-03-06 20:56:56 +00:00
thorpej
a084fd2f81
Some PHYs go off into left field for a few seconds if you attempt to kick
...
autonegotiation while it's already enabled.
2000-02-03 06:11:13 +00:00
thorpej
9ff57fe506
Oops, missing return;
2000-02-03 05:38:57 +00:00
thorpej
22fe15d7b4
Let mii_phy_setmedia() handle the IFM_AUTO case, too.
2000-02-02 23:34:56 +00:00
thorpej
8923ca0b00
Make PHY drivers provide a pointer to their status routine, and add
...
a generic mii_phy_status() that calls back into the PHY. It doesn't
do anything interesting yet, but it will soon.
2000-02-02 17:50:43 +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
thorpej
0738a5d4ac
Driver for the Davicom DM9101 10/100 Ethernet PHY. This PHY is found
...
on several inexpensive 10/100 Ethernet boards (e.g. D-Link DFE-530TX,
Winbond 10/100 boards), and is also the built-in PHY on the DM9102
10/100 Ethernet chip.
2000-02-02 04:29:49 +00:00
thorpej
c74e0a8db2
Add detachment support to the MII layer.
2000-01-27 16:44:30 +00:00
augustss
380035a59d
Regen.
2000-01-13 20:16:49 +00:00
augustss
81ae0fb432
Add a Broadcom PHy used in the D-Link USB100 adapter.
...
There's no special driver for this PHY (yet).
2000-01-13 20:16:08 +00:00
pk
03c8221ad0
Use BMSR to test for `negotiation complete'; the alternative bit in the
...
LXT vendor register 20 is latching high and resets to low on read causing
subsequent status request to return `IFM_NONE'.
1999-12-21 10:47:00 +00:00
thorpej
b67d4809ed
Add a driver for the National Semiconductor DP83843 `PHYTER' 10/100
...
Ethernet PHY.
1999-12-07 19:36:37 +00:00
thorpej
f1ba0d46a3
Regen.
1999-11-19 18:26:22 +00:00
thorpej
55495ae2e9
Add OUI for Enable Semiconductor.
1999-11-19 18:26:09 +00:00
thorpej
6c50cb64e1
Common module for bit-bang'ing the MII.
1999-11-17 17:47:59 +00:00
thorpej
bca88a28c8
Add mii_down(), which is used by MAC drivers to inform PHYs that the
...
interface is now down. PHYs use this to cancel pending asynchronous
operations.
1999-11-12 18:12:59 +00:00
thorpej
bedeeb9896
Allow mii_phy_probe() to be called multiple times, and allow the caller
...
to specify either the PHY number or the PHY `offset' (1st, 2nd, 3rd, etc.)
to configure.
1999-11-04 00:22:07 +00:00
thorpej
bc82bff1dc
Don't add any loopback versions of media, for now.
1999-11-03 22:32:45 +00:00
thorpej
8fc600c3b1
Clean up the code that adds media a little, and make media selection
...
table-driven in preparation for some other changes to be made.
1999-11-03 22:30:32 +00:00