1f49e276c3
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 |
||
---|---|---|
.. | ||
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 |