History log of /dragonfly/sys/dev/netif/mii_layer/brgphy.c (Results 1 – 25 of 34)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0
# b96cbbb6 20-Mar-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

bnx: Add support for BCM5762 chips

Taken-from: tg3


# d3c9c58e 20-Feb-2013 Sascha Wildner <saw@online.de>

kernel: Use DEVMETHOD_END in the drivers.


Revision tags: v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3
# 1270925f 18-Jul-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

brgphy: Add BCM5718C, BCM54680, BCM54880, BCM54640, BCM54685 and BCM54881


# cb1243d5 07-Jul-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

brgphy: Remove debug prints


# f31c6e4d 07-Jul-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

bge/bce: Use mii private data to pass various flags to brgphy

This unbreaks if_name support on bce(4) and bge(4). And this mechanism
is cleaner and easier to extend than checking if_name and access

bge/bce: Use mii private data to pass various flags to brgphy

This unbreaks if_name support on bce(4) and bge(4). And this mechanism
is cleaner and easier to extend than checking if_name and accessing
NIC drivers' softc.

show more ...


# 1932af46 02-Jul-2012 Sepherosa Ziehau <sephe@dragonflybsd.org>

bge/brgphy: Split PHY flags out of main flags


Revision tags: v3.0.2, v3.0.1, v3.1.0, v3.0.0
# 86d7f5d3 26-Nov-2011 John Marino <draco@marino.st>

Initial import of binutils 2.22 on the new vendor branch

Future versions of binutils will also reside on this branch rather
than continuing to create new binutils branches for each new version.


Revision tags: v2.12.0, v2.13.0
# 0eed2f27 18-Aug-2011 Sepherosa Ziehau <sephe@dragonflybsd.org>

brgphy: Recognize more Broadcom PHYs

Obtained-from: OpenBSD, FreeBSD


# 5a020756 16-Aug-2011 Sepherosa Ziehau <sephe@dragonflybsd.org>

brgphy: Bring in changes from OpenBSD

- Link status is now detected using BMSR
- Extra link status detection based on AUXSTS is used for 5906
- Shuffle 5906 EPHY setting around
- brgphy_loop() is no

brgphy: Bring in changes from OpenBSD

- Link status is now detected using BMSR
- Extra link status detection based on AUXSTS is used for 5906
- Shuffle 5906 EPHY setting around
- brgphy_loop() is not necessary to start auto-negotiation

show more ...


# d0092544 26-Jun-2011 Sepherosa Ziehau <sephe@dragonflybsd.org>

bce(4): Add BCM5709 and BCM5716 support

Thanks David Christensen <davidch@broadcom.com> for sending me a
sample 5709 card for testing.

Obtained-from: FreeBSD 170810, 176850, 179771, 179772, 182293,

bce(4): Add BCM5709 and BCM5716 support

Thanks David Christensen <davidch@broadcom.com> for sending me a
sample 5709 card for testing.

Obtained-from: FreeBSD 170810, 176850, 179771, 179772, 182293, 185593

show more ...


# aa2b9d05 24-Jun-2011 Sascha Wildner <saw@online.de>

kernel: Use NULL for DRIVER_MODULE()'s evh & arg (which are pointers).

This is just cosmetics for easier reading.


Revision tags: v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0
# a1678a34 24-Aug-2009 Sepherosa Ziehau <sephe@dragonflybsd.org>

brgphy: Add support for BCM5722


Revision tags: v2.3.2, v2.3.1, v2.2.1, v2.2.0, v2.3.0, v2.1.1
# 591dfc77 22-Oct-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add 5906/5906M support. Based on my old patch with some additional work from
FreeBSD.

Tested-by: Petr Janda <elekktretterr@exemail.com.au>


Revision tags: v2.0.1
# 12b5e22d 22-Jul-2008 Sepherosa Ziehau <sephe@dragonflybsd.org>

- Remove the callout and related bits in mii_layer; all of the ethernet
device drivers actually do mii_tick() in their own callout and
mii_softc.mii_ticks serves the us quit well. This makes all

- Remove the callout and related bits in mii_layer; all of the ethernet
device drivers actually do mii_tick() in their own callout and
mii_softc.mii_ticks serves the us quit well. This makes all mii aware
NIC drivers' miibus interface MP safe.
- Clear mii_softc.mii_ticks when change ifmedia.
- Clear mii_softc.mii_ticks if we have link.

show more ...


# 9bbc5585 16-Mar-2008 Hasso Tepper <hasso@dragonflybsd.org>

10Base-TX -> 10Base-T and 1000Base-TX -> 1000Base-T. Although 1000Base-TX
standard itself even exists, there is no commercial products AFAIK.


# 055d06f0 19-Jun-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add sysctl/tunable for TX/RX interrupt coalescing variables. Default
values are obtained from empirical measurement on bcm5751(PCIe).
Inspired-by: Bruce Evans <brde@optusnet.com.au> on freebsd-net m

Add sysctl/tunable for TX/RX interrupt coalescing variables. Default
values are obtained from empirical measurement on bcm5751(PCIe).
Inspired-by: Bruce Evans <brde@optusnet.com.au> on freebsd-net mail list

For a running bge(4), setting these sysctl variables will not take
effect immediately; they are committed to device in the upcoming
interrupt handler.
Adapted-from: NetBSD if_bge.c 1.58 (jonathan@netbsd.org)

# On Altima AC9100 (bcm5701 based), TX/RX interrupt coalescing values
# seem to have no effect at all :(

show more ...


# 43c2aeb0 26-May-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add support for Broadcom NetXtreme II GigE. Jumbo buffer support
is missing currently, which will be added later.

Thank David Christensen <davidch@broadcom.com> for sending us two
sample NICs.
Than

Add support for Broadcom NetXtreme II GigE. Jumbo buffer support
is missing currently, which will be added later.

Thank David Christensen <davidch@broadcom.com> for sending us two
sample NICs.
Thank dillon@ for providing a blazing fast machine and environment
to test the driver.
Also thank Walter <wa1ter@myrealbox.com> very much, who contacted
Broadcom for me :)

Obtained-from: FreeBSD (w/ modification)

show more ...


# 0ecb11d7 07-May-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

Add new devices support for bge(4)
- Recognize more devices, including PCI ids, chip ids and asic ids.
- Use meaningful macros to distinguish chip family and capability, instead of
test against chi

Add new devices support for bge(4)
- Recognize more devices, including PCI ids, chip ids and asic ids.
- Use meaningful macros to distinguish chip family and capability, instead of
test against chip id or asic id directly.
- Pack bool fields of bge_softc into bge_softc.bge_flags,
o bge_softc.bge_extram is gone, which was never adopted.
o Add flags for jumbo frame capability.
o Add flags for various chip families.
o Add flags for the bus types (PCI-e/PCI-X).
o Add flags for various PHY bugs, which will be used by brgphy.
- Fix the detection of the bus type (PCI-e/PCI-X). (*)
- Properly initialize PCI-X bge(4).
- Fix support for certain 575x/578x chips (*):
o Correct bge_{read,write}mem_ind() by clearing BGE_PCI_MEMWIN_BASEADDR
before returning.
o Use the appropriate register writing method when reseting the chip.
o Program the descriptor DMA engine correctly.
o Disable fastboot if the chips support it.
o Add some 'magical' magics on chip resetting path.
Obtained-from: FreeBSD
# (*) are done in if_bge.c rev 1.159 and 1.178 by scottl@freebsd.org and
# jkim@freebsd.org, based on code provided by David Christenson from Broadcom.


Adapt brgphy to work with the changes in bge(4)
- Recognize Broadcom 5755/5787 PHY.
- Add DSP code for various PHY bug workarounds.
- Detect PHY bugs based on the flags passed by bge(4) and load corresponding
workaround DSP code.
Obtained-from: OpenBSD

- Set PHY jumbo frame settings.
Obtained-from: FreeBSD

show more ...


# db861466 02-May-2007 Sepherosa Ziehau <sephe@dragonflybsd.org>

- Merge following link state detection fixes from FreeBSD:
if_bge.c rev 1.{102, 104, 113, 120, 124} (mainly oleg@freebsd.org)
Local modifications:
o Split bge_link_upd() into
bge_bcm5700_

- Merge following link state detection fixes from FreeBSD:
if_bge.c rev 1.{102, 104, 113, 120, 124} (mainly oleg@freebsd.org)
Local modifications:
o Split bge_link_upd() into
bge_bcm5700_link_upd() -- for 5700 chips, except B2
bge_tbi_link_upd() -- for fiber interface
bge_copper_link_upd() -- for the rest for the bge(4) chips
Assign one of them to bge_softc.bge_link_upd based on chip type
in attach routine.
o Add bge_softc.bge_link_chg, which is setup based on chip type in
attach routine. It is used to check against MAC_STS to determine
whether link state is changed or not.
o We always trust that "link state changed" bit in MAC_STS is correct.
o Keep the PCS error checks for fiber interface during link state
changing detection.
- After above change, bge_tick() is used to drive mii_tick(), so cleanup
brgphy_mii_phy_auto().
- In brgphy_status(), use temporary variable to hold BRGPHY_MII_AUXSTS,
so it is not accessed twice.
- For fiber interface, correct media status reporting if link is down.
Obtained-from: OpenBSD (brad@openbsd.org)
- Correct chip id for 5700 B1 and 5700 B2.
- Minor style changes.

show more ...


# e3869ec7 22-Dec-2006 Sascha Wildner <swildner@dragonflybsd.org>

Rename printf -> kprintf in sys/ and add some defines where necessary
(files which are used in userland, too).


# 1f7ab7c9 25-Oct-2006 Matthew Dillon <dillon@dragonflybsd.org>

Do a major clean-up of the BUSDMA architecture. A large number of
essentially machine-independant drivers use the structures and definitions
in machine-dependant directories that are really machine-

Do a major clean-up of the BUSDMA architecture. A large number of
essentially machine-independant drivers use the structures and definitions
in machine-dependant directories that are really machine-independant in
nature.

Split <machine/bus_dma.h> into machine-depdendant and machine-independant parts
and make the primary access run through <sys/bus_dma.h>.

Remove <machine/bus.h>, <machine/bus_memio.h> and <machine/bus_pio.h>. The
optimizations related to bus_memio.h and bus_pio.h made a huge mess,
introduced machine-specific knowledge into essentially machine-independant
drivers, and required specific #include file orderings to do their job.
They may be reintroduced in some other form later on.

Move <machine/resource.h> to <sys/bus_resource.h>. The contents of the file
is machine-independant or can be made a superset across many platforms.

Make <sys/bus.h> include <sys/bus_dma.h> and <sys/bus_resource.h> and
include <sys/bus.h> where necessary. Remove all #include's of
<machine/resource.h> and <machine/bus.h>. That is, make the BUSDMA
infrastructure integral to I/O-mapped and memory-mapped accesses to devices
and remove a large chunk of machine-specific dependancies from drivers.
bus_if.h and device_if.h are now required to be present when using <sys/bus.h>.

show more ...


# 46ad174e 06-Aug-2006 Sepherosa Ziehau <sephe@dragonflybsd.org>

Sync MII support with NetBSD/OpenBSD:
- Standard conforming GMII support:
1) replace mii_media_add() with mii_phy_add_media().
2) ukphy has generic GMII support now, thus retire nvphy.
- Factor c

Sync MII support with NetBSD/OpenBSD:
- Standard conforming GMII support:
1) replace mii_media_add() with mii_phy_add_media().
2) ukphy has generic GMII support now, thus retire nvphy.
- Factor common code of PHY modules out into mii_physubr.c, noticably
mii_phy_{set_media, tick, update}().
In order to support this refactoring:
1) mii_softc.{mii_reset,mii_status} funtion pointers are added, which are
used to reset PHY modules and get PHY modules' status.
2) mii_softc.mii_anegticks is added, which is used by PHY modules to tell
mii_phy_tick(), how often auto-negociation should happen. Two commonly
used values are defined as MII_ANEGTICKS and MII_ANEGTICKS_GIGE.
mii_softc.mii_anegticks is set to MII_ANEGTICKS by default.
- Add mii_softc.mii_media_status and rename mii_softc.mii_active to
mii_softc.mii_media_active. Now changes in either one of them will cause
MIIBUS_STATCHG() being involked.
- For PHY modules that utilize mii_phy_add_media(), ifmedia_entry.ifm_data
no longer stores value of BMCR. It stores an index of mii_media_table[],
which stores BMCR, ANAR and GTCR.
- Replace slightly different PHY modules detach routines with ukphy_detach().
- Use OUI and MODEL id array + mii_phy_match() in PHY modules probe routines,
instead of original large `if, else if' or `switch' code segment.
- Support more OUIs and MODELs in individual PHY module.
- Make the usage of `mii' and `sc' stack variable more consistent. `mii'
refers to miibus softc, while `sc' refers to PHY module softc.
- Nuke no longer used functions' definition and declaration.
- Regen miidevs.h

Following PHY modules were tested:
acphy(dc), brgphy(bge), e1000phy(nv,sk), exphy(xl), inphy(fxp), rgephy(re),
rlphy(rl), ruephy(rue), ukphy(nv,vr,...)

MII generic code is mainly synced with NetBSD.
Individual PHY modules are mainly synced with OpenBSD.

Tested-by: swildner, corecode

show more ...


# c436375a 11-Dec-2005 Sascha Wildner <swildner@dragonflybsd.org>

* Ansify function definitions.

* Minor style cleanup.

Submitted-by: Alexey Slynko <slynko@tronet.ru>


# d59a2b69 31-Oct-2005 Sepherosa Ziehau <sephe@dragonflybsd.org>

- In mii_anar(), turn on ANAR_CSMA at beginning instead of doing this in almost
every switch branch
- Turn on ANAR_CSMA for the return value of mii_bmsr_media_to_anar(). This
makes mii_bmsr_medi

- In mii_anar(), turn on ANAR_CSMA at beginning instead of doing this in almost
every switch branch
- Turn on ANAR_CSMA for the return value of mii_bmsr_media_to_anar(). This
makes mii_bmsr_media_to_anar() consistent with mii_anar() and eliminates code
duplication. Adjust mii_bmsr_media_to_anar() callers accordingly

show more ...


# b9bc8a8c 24-Oct-2005 Matthew Dillon <dillon@dragonflybsd.org>

Pass mii_attach_args to mii_softc_init() rather then initializing the softc's
attach-args-related fields manually in each custom driver. Have
mii_softc_init() automatically merge mii_attach_args->mi

Pass mii_attach_args to mii_softc_init() rather then initializing the softc's
attach-args-related fields manually in each custom driver. Have
mii_softc_init() automatically merge mii_attach_args->mii_flags into
mii_softc->mii_flags.

show more ...


12