christos
5e16b7787c
- don't hardcode 5, 10 define and use MII_ANEGTICKS{,_GIGE}
...
- instead of != limit, use <= limit (conservative)
2006-11-16 21:24:06 +00:00
christos
168cd830d2
__unused removal on arguments; approved by core.
2006-11-16 01:32:37 +00:00
christos
4d595fd7b1
- sprinkle __unused on function decls.
...
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
thorpej
838ee1e0d9
Use device_private().
2006-03-29 06:51:47 +00:00
thorpej
3ddf26777f
Use device_is_active() rather than testing dv_flags for DVF_ACTIVE
...
directly.
2006-02-20 16:50:36 +00:00
christos
95e1ffb156
merge ktrace-lwp.
2005-12-11 12:16:03 +00:00
perry
f31bd063e9
nuke trailing whitespace
2005-02-27 00:26:58 +00:00
thorpej
1efb3da0fb
Make use of static.
2004-08-23 06:16:06 +00:00
thorpej
c31f87a5cb
Use aprint*().
2003-04-29 01:49:33 +00:00
thorpej
c9b3657ce9
Add trailing ; to CFATTACH_DECL.
2002-10-02 16:33:28 +00:00
thorpej
71adb76f75
Use CFATTACH_DECL().
2002-09-30 21:57:46 +00:00
thorpej
0720e04052
Remove a debugging printf.
2002-09-28 19:07:43 +00:00
scw
cbc5db835b
Try a little harder to work around the "Isolated After Reset" lossage.
2002-09-28 10:27:21 +00:00
thorpej
f818766afe
Declare all cfattach structures const.
2002-09-27 20:31:45 +00:00
scw
ce2ec9e63e
Add support for the SMsC LAN83C183 PHY, which actually probes as a
...
Seeq 84220.
Also add an 84220-specific work-around for some braindamage (at least
in the PHY I'm working with) where the PHY always comes out of reset
isolated, regardless of the previous state of the BMCR_ISO bit. This
happens even if the PHY has address zero, which is contrary to the
part's datasheet...
The work-around is only applied if we notice BMCR_ISO is set when it
should be clear following reset. The fix is to wait 30mS and clear
it manually. (The change doesn't stick if it's cleared sooner than this)
2002-08-26 11:13:13 +00:00
simonb
c19a094675
Don't include <malloc.h> - no memory management style functions are use
...
in any of the MII drivers.
2002-07-03 06:25:49 +00:00
thorpej
b017898534
Get flags passed down to PHY drivers correctly. This was done on
...
an adhoc basis in a couple of PHY drivers, this fixes it more generally.
Per a discussion w/ Cliff Neighbors <cliff@allegronetworks.com>.
2002-03-25 20:51:24 +00:00
lukem
8b7bb91219
add RCSID
2001-11-13 07:38:28 +00:00
thorpej
89893e42b7
ANSI'ify.
2001-08-25 18:04:01 +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
424f7a1e65
Make PHY matching all table-driven.
2001-06-02 21:39:38 +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
drochner
adf9edcd41
update for miidevs changes
2001-03-28 14:16:49 +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
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
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
c74e0a8db2
Add detachment support to the MII layer.
2000-01-27 16:44:30 +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
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
drochner
23ddff5688
use the new "xx" prefixed OUIs because the mapping to the ID register
...
bits differs from the MII_OUI() way
1999-05-14 11:40:28 +00:00
thorpej
83f9ab3c87
Implement asynchronous autonegotiation when driven by the MII tick
...
(one-second clock). Prevents .5s delays every 5 seconds when the interface
is up but there is no link. Fixes PR 7361.
1999-04-23 04:24:32 +00:00
thorpej
2b695df1dc
Common code for media-from-bmcr.
1998-11-05 04:08:01 +00:00
thorpej
aabf2a0809
In the status routine, always use the media selected in the BMCR if
...
autonegotiation is not enabled. This is more reliable on many PHYs,
and requires fewer register reads.
1998-11-05 04:01:32 +00:00
thorpej
2a17544c19
Place the essentially common "ticks" and "active" members into the
...
mii_softc (generic phy goo), and just switch all of the PHY drivers
(except tlphy, which really does have special stuff) to use an mii_softc
instead of a private one.
1998-11-05 00:19:32 +00:00
thorpej
ad8b66c7c8
Return a higher-priority match than 1. These are specific drivers. This
...
allows for a "generic unknown PHY" driver to be implemented.
1998-11-04 23:44:09 +00:00
thorpej
51da8fc39f
Factor out the common reset code. Use the NOISOLATE flags as appropriate
...
to prevent a PHY from being isolated in the event the MAC can't deal with
this. (3Com 3c905B-TX, and Intel i82557).
1998-11-04 23:28:15 +00:00
thorpej
b097394468
Factor out some common code from all the PHY drivers (autonegotiation, for
...
now.)
1998-11-04 23:07:15 +00:00
thorpej
844622de9c
Define and use generic PHY read/write reg macros.
1998-11-04 22:15:40 +00:00
thorpej
b5ebc7dd87
Driver for Seeq 80220/80221/80223 10/100 Ethernet PHYs.
1998-11-03 23:51:29 +00:00