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