freebsd-skq/sys/dev/mii
yongari 1f49e276c3 Disable EEE(Energy Efficient Ethernet) for RTL8211F PHY.
It seems the EEE made RX MAC enter LPI(Low Power Idle) mode such
that dwc(4) was not able to receive packets.  Ideally dwc(4) should
be able to use EEE to save power during periods of low link
utilization(i.e. gating off clock).  Due to lack of dwc(4)
datasheet it's not easy to take required steps for EEE on LPI
enter/exit events.  Disabling EEE in PHY seems to be easy
workaround until dwc(4) supports EEE.

Updating EEE advertisement register on RTL8211F seems to have no
effect until reprogramming MII_ANAR, MII_100T2CR and MII_BMCR
with auto-negotiation. It's not clear whether it's related with
mii_phy_reset()'s BMCR_ISO handling for RTL8211F though.
It seems rgephy_reset() needs careful investigation for newer
RealTek PHYs.

Ganbold submitted working version based on NetBSD change and
tested lots of changes I made. Thanks a lot!

Submitted by:	ganbold (initial version)
In collaboration with:	ganbold
2015-12-03 05:27:39 +00:00
..
acphy.c
acphyreg.h
amphy.c
amphyreg.h
atphy.c
atphyreg.h
axphy.c
bmtphy.c
bmtphyreg.h
brgphy.c
brgphyreg.h
ciphy.c
ciphyreg.h
e1000phy.c
e1000phyreg.h
gentbi.c
icsphy.c
icsphyreg.h
ip1000phy.c
ip1000phyreg.h
jmphy.c
jmphyreg.h
lxtphy.c
lxtphyreg.h
micphy.c
mii_bitbang.c
mii_bitbang.h
mii_physubr.c
mii.c
mii.h
miibus_if.m
miidevs
miivar.h
mlphy.c
nsgphy.c
nsgphyreg.h
nsphy.c
nsphyreg.h
nsphyter.c
nsphyterreg.h
pnaphy.c
qsphy.c
qsphyreg.h
rdcphy.c
rdcphyreg.h
rgephy.c
rgephyreg.h
rlphy.c
rlswitch.c
smcphy.c
smscphy.c
tdkphy.c
tdkphyreg.h
tlphy.c
tlphyreg.h
truephy.c
truephyreg.h
ukphy_subr.c
ukphy.c
xmphy.c
xmphyreg.h