summaryrefslogtreecommitdiffstats
path: root/sys/modules/mii
Commit message (Collapse)AuthorAgeFilesLines
* Add a PHY driver to support the built-in gigE PHY in the 8169S/8110Swpaul2003-09-111-1/+1
| | | | | | | | | | | | | | | | | | ethernet chips. This driver is pretty simple, however it contains special DSP initialization code which is needed in order to get the chip to negotiate a gigE link. (This special initialization may not be needed in subsequent chip revs.) Also: - Fix typo in if_rlreg.h (RL_GMEDIASTAT_1000MPS -> RL_GMEDIASTAT_1000MBPS) - Deal with shared interrupts in re_intr(): if interface isn't up, return. - Fix another bug in re_gmii_writereg() (properly apply data field mask) - Allow PHY driver to read the RL_GMEDIASTAT register via the re_gmii_readreg() register (this is register needed to determine real time link/media status).
* tdkphy.c is missing from this module's Makefile. Add it.wpaul2003-07-101-1/+1
|
* Add RealTek RTL8150 USB to fast Ethernet controller driver.akiyama2003-05-031-0/+1
| | | | | | | | This driver now supports the Melco LUA-KTX and the GREEN HOUSE GH-USB100B. Reviewed by: imp MFC after: 2 weeks
* Remove miidevs.h and generate it from miidevs at compile time.obrien2003-01-191-1/+1
| | | | The devlist2h.awk tool to do this has been repocopied to sys/tools/.
* Connect bmtphy to the mii module build.benno2002-08-061-1/+1
| | | | Forgotten a long time ago by: benno
* Export symbols that constitute APIs defined by thesemsmith2002-01-111-0/+6
| | | | | | | | modules. Note that in the case of 'mii' the API is not clearly defined, and the symbols exported represent a subset defined by current usage.
* Add support for gigabit ethernet cards based on the NatSemi DP83820wpaul2001-05-111-1/+1
| | | | | | | | | | | | | | | | | | | and DP83821 gigabit ethernet MAC chips and the NatSemi DP83861 10/100/1000 copper PHY. There are a whole bunch of very low cost cards available with this chipset selling for $150USD or less. This includes the SMC9462TX, D-Link DGE-500T, Asante GigaNIX 1000TA and 1000TPC, and a couple cards from Addtron. This chip supports TCP/IP checksum offload, VLAN tagging/insertion. 2048-bit multicast filter, jumbograms and has 8K TX and 32K RX FIFOs. I have not done serious performance testing with this driver. I know it works, and I want it under CVS control so I can keep tabs on it. Note that there's no serious mutex stuff in here yet either: I need to talk more with jhb to figure out the right way to do this. That said, I don't think there will be any problems. This driver should also work on the alpha. It's not turned on in GENERIC.
* add MARVELL to the list of phys to go into miibusmjacob2001-04-211-1/+1
|
* Add Intel 82553, 82555 PHY driver.jlemon2001-03-121-1/+1
|
* Add QS6612, AC101 and LXT970 personal drivers and register definitions.semenu2001-02-071-1/+1
| | | | Obtained from: NetBSD/OpenBSD
* Use a consistent style and one much closer to the rest of /usr/srcobrien2001-01-061-6/+7
|
* Add a homePNA PHY driver. This is really only a stub: MII-based homePNAwpaul2000-09-201-1/+1
| | | | | PHYs tend to look like 10mbps PHYs with no autonegotiation. This allows us to display the proper media type and link status however.
* Use .include <bsd.kmod.mk> to get to ../../*/conf/kmod.mk instead ofpeter2000-05-271-1/+1
| | | | encoding the relative path.
* Pull in sys/conf/kmod.mk, rather than /usr/share/mk/bsd.kmod.mk.peter2000-05-041-1/+1
| | | | | | | This means that the kernel can be totally self contained now and is not dependent on the last buildworld to update /usr/share/mk. This might also make it easier to build 5.x kernels on 4.0 boxes etc, assuming gensetdefs and config(8) are updated.
* Reoganize/update the SysKonnect driver:wpaul2000-04-221-0/+1
| | | | | | | | | | | | | | | | | | - Break out the support for the XMAC II's PHY into an miibus driver. - Reorganize the probe/attach stuff using newbus. Each XMAC is now attached to the parent GEnesis controller using newbus. This is necessary since each XMAC must also have an attached miibus, and the miibus read/write register routines need to be able to get at the softc struct for each XMAC, not the one for the parent controller. This allows me to get rid of the grotty code I added for selecting the unit numbers for the ifnet interfaces: the unit numbers are now derived from the newbus-assigned unit numbers, which should track with the ifnet interface numbers. I think. At the very least, there should never be any collisions. - Add support for the SK-9821 and SK-9822 1000baseTX adapters. Special thanks to SysKonnect for loaning me two adapters for testing.
* Add ${DEBUG_FLAGS} to CFLAGS in bsd.kmod.mk, not in scattered modulebde2000-01-281-1/+0
| | | | | makefiles. Bad examples in fxp/Makefile keep getting copied to new makefiles.
* Add pci_if.h to SRCS so that dcphy will build.wpaul1999-12-051-1/+1
|
* Add the if_dc driver and remove all of the al, ax, dm, pn and mx driverswpaul1999-12-041-1/+1
| | | | | | | | which it replaces. The new driver supports all of the chips supported by the ones it replaces, as well as many DEC/Intel 21143 10/100 cards. This also completes my quest to convert things to miibus and add Alpha support.
* Removed special rules for building and cleaning device interface filesbde1999-11-281-15/+1
| | | | | and empty options files. The rules are now generated automatically in bsd.kmod.mk. Cleaned up related things ($S and ${CLEANFILES}).
* Convert the mx driver to miibus.wpaul1999-10-161-1/+1
| | | | | | | | | | | | | | In order to make this work, I created a pseudo-PHY driver to deal with Macronix chips that use the built-in NWAY support and symbol mode port. This is actually all of them, with the exception of the original MX98713 which presents its NWAY support via the MII serial interface. The mxphy driver actually manipulates the controller registers directly rather than using the miibus_readreg()/miibus_writereg() bus interface since there are no MII registers to read. The mx driver itself pretends that the NWAY interface is a PHY locayed at MII address 31 for the sole purpose of allowing the mxphy_probe() routine to know when it needs to attach to a host controller.
* Change the name of the installed KLM to contain a leading "if_".obrien1999-09-201-1/+1
| | | | | | Except for miibus which is now installed as miibus.ko. Discussed by: msmith, peter, and wpaul
* Add a driver for the AMD AM79c873 10/100 PHY. By some strange coincidence,wpaul1999-09-061-1/+1
| | | | | | | | this PHY and the Davicom DM9101 have exactly the same register definitions. One of them is probably a clone of the other. I'm not sure which. This is needed for the Davicom DM9102 10/100 PCI ethernet driver which will be committed shortly.
* Add a driver for the internal PHY in the RealTek 8139.wpaul1999-08-311-1/+1
|
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Update these Makefiles; add mlphy and tlphy to the mii module, addwpaul1999-08-271-1/+2
| | | | miibus_if.h to tl module's dependencies.
* This commit adds support for the NetBSD MII abstraction layer andwpaul1999-08-211-0/+23
MII-compliant PHY drivers. Many 10/100 ethernet NICs available today either use an MII transceiver or have built-in transceivers that can be programmed using an MII interface. It makes sense then to separate this support out into common code instead of duplicating it in all of the NIC drivers. The mii code also handles all of the media detection, selection and reporting via the ifmedia interface. This is basically the same code from NetBSD's /sys/dev/mii, except it's been adapted to FreeBSD's bus architecture. The advantage to this is that it automatically allows everything to be turned into a loadable module. There are some common functions for use in drivers once an miibus has been attached (mii_mediachg(), mii_pollstat(), mii_tick()) as well as individual PHY drivers. There is also a generic driver for all PHYs that aren't handled by a specific driver. It's possible to do this because all 10/100 PHYs implement the same general register set in addition to their vendor-specific register sets, so for the most part you can use one driver for pretty much any PHY. There are a couple of oddball exceptions though, hence the need to have specific drivers. There are two layers: the generic "miibus" layer and the PHY driver layer. The drivers are child devices of "miibus" and the "miibus" is a child of a given NIC driver. The "miibus" code and the PHY drivers can actually be compiled and kldoaded as completely separate modules or compiled together into one module. For the moment I'm using the latter approach since the code is relatively small. Currently there are only three PHY drivers here: the generic driver, the built-in 3Com XL driver and the NS DP83840 driver. I'll be adding others later as I convert various NIC drivers to use this code. I realize that I'm cvs adding this stuff instead of importing it onto a separate vendor branch, but in my opinion the import approach doesn't really offer any significant advantage: I'm going to be maintaining this stuff and writing my own PHY drivers one way or the other.
OpenPOWER on IntegriCloud