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
drochner
ba0f309a91
Before checking the (Intel specific) SCR_T4 register, make
...
sure the chip implements 100T4 (in BMSR).
The 82562 (which doesn't implement 100T4) has the SCR_T4 bit
(always?) set, which led to wrong media status reports.
approved by thorpej
2003-03-27 19:36:49 +00:00
matt
52f7db1beb
Fix C&P tpyo.
2003-03-07 00:14:38 +00:00
matt
c4d8a6226e
Make the intel phy match the i82562 phys.
2003-03-06 22:38:09 +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
f818766afe
Declare all cfattach structures const.
2002-09-27 20:31:45 +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
enami
4977f2fb2d
Advertize pause capability (802.3x flow control) to peer.
2001-08-06 09:51:40 +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
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
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
1f074c785d
When doing a media change service request, use the media word from the
...
current ifmedia_entry, not from the user-supplied media word. The
user supplied media word may not necessarily match e.g. instance (if
the parent MAC driver is intentionally ignoring instance if its expecting
multiple PHYs with non-overlapping media, e.g. TI ThunderLAN) the media
word we are actually switching to.
Since PHY drivers use `instance' to determine if they should isolate
themselves, the ThunderLAN PHY was sometimes being incorrectly isolated
when in fact the user attempted to select that PHY (for e.g. BNC operation).
1998-11-02 22:31:36 +00:00
thorpej
981f0cd0d0
If autonegotiation is enabled in the BMSR, and the BMCR doens't claim
...
that it has completed, report "none" as the active media type.
1998-08-12 20:56:34 +00:00
thorpej
a24f6f77bf
Ugh, don't print out "autonegotiation failed to complete" if it did.
...
We get these once a second if we're in auto mode, the interface is up,
and there's no carrier.
1998-08-12 20:46:47 +00:00
thorpej
6bae1a0bea
Device driver for the Intel i82555 PHY.
1998-08-11 00:00:28 +00:00