mirror of
https://github.com/opnsense/src.git
synced 2026-06-14 19:20:18 -04:00
Partial revert r185756.
It seems that RTL8168D and RTL8102EL requires additional settle time to complete RL_PHYAR register write. Accessing RL_PHYAR register right after the write causes errors for subsequent PHY register accesses. Tested by: george at luckytele dot com, Steve Wills < STEVE at stevenwills dot com >
This commit is contained in:
parent
2b5b95c278
commit
bd9bede57a
1 changed files with 2 additions and 0 deletions
|
|
@ -419,6 +419,7 @@ re_gmii_readreg(device_t dev, int phy, int reg)
|
|||
}
|
||||
|
||||
CSR_WRITE_4(sc, RL_PHYAR, reg << 16);
|
||||
DELAY(1000);
|
||||
|
||||
for (i = 0; i < RL_PHY_TIMEOUT; i++) {
|
||||
rval = CSR_READ_4(sc, RL_PHYAR);
|
||||
|
|
@ -446,6 +447,7 @@ re_gmii_writereg(device_t dev, int phy, int reg, int data)
|
|||
|
||||
CSR_WRITE_4(sc, RL_PHYAR, (reg << 16) |
|
||||
(data & RL_PHYAR_PHYDATA) | RL_PHYAR_BUSY);
|
||||
DELAY(1000);
|
||||
|
||||
for (i = 0; i < RL_PHY_TIMEOUT; i++) {
|
||||
rval = CSR_READ_4(sc, RL_PHYAR);
|
||||
|
|
|
|||
Loading…
Reference in a new issue