Commit Graph

29 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
00ba1a42eb Fix a braino in some currently-disabled code. 1999-10-27 19:05:44 +00:00
thorpej
45a337e088 Add a PHY `offset' (e.g. "first PHY on bus, second PHY on bus, ...") to
the PHY's softc.
1999-09-25 00:10:13 +00:00
drochner
f04cb4036f move common support functions for phy drivers from mii.c to mii_physubr.c,
so that they are not includes if no PHY is configured
(avoids code bloat if an interface driver has the "mii" attribute but
mii is not used by the particular version)
1999-08-03 19:41:49 +00:00
thorpej
f9467ddb8e Some PHYs are really braindead, and report incorrect IDs. Simplify the
test for this, and probe for PHYs based on media in the BMSR.
1999-02-05 02:46:34 +00:00
pk
f9e92fac23 Fix bit test 1999-01-29 07:35:05 +00:00
thorpej
2b695df1dc Common code for media-from-bmcr. 1998-11-05 04:08:01 +00:00
thorpej
7d76571fd1 Tidy up the message from mii_print() somewhat. 1998-11-05 00:30:44 +00:00
thorpej
9b46e98b21 Adapt to attribute name change. Also, deal with 3Com PHYs that report
0/0 as their oui/model IDs.
1998-08-11 00:41:44 +00:00
thorpej
3f8be46d4d Near complete rewrite of the MII layer to present an interface compatible
with BSDI's MII layer to device drivers.
1998-08-10 23:55:16 +00:00
thorpej
5bc2217a49 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:24:55 +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
095c4c092d Adjust for config changes. 1998-01-12 09:23:08 +00:00
thorpej
5bf3550518 KNF. 1997-11-17 08:52:38 +00:00
bouyer
10fcf021a5 Generic functions for the MII layer. mii attaches to mii-capable network
adapters, and provide media-selections and status to the parent.
This includes drivers for the Thunderland integrated PHY, and
National Semiconductor's DP83840A.
Note: The interface betweeen network controller and mii is not complete yet,
and will need some minors tweaks to support media auto-selection.
1997-10-17 17:33:45 +00:00