diff options
author | yongari <yongari@FreeBSD.org> | 2011-02-16 21:59:42 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2011-02-16 21:59:42 +0000 |
commit | 5038159e7ed02b739431c61e4e3c2d41b90bf933 (patch) | |
tree | 60757c94648f4278d97c648cf890eb00757927d1 /sys | |
parent | b9b7d3e93a251adacd363eaf9d23963ec7467075 (diff) | |
download | FreeBSD-src-5038159e7ed02b739431c61e4e3c2d41b90bf933.zip FreeBSD-src-5038159e7ed02b739431c61e4e3c2d41b90bf933.tar.gz |
Add initial support for RTL8401E PCIe Fast Ethernet.
PR: 154789
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/re/if_re.c | 7 | ||||
-rw-r--r-- | sys/pci/if_rlreg.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 8c7d295..2d9d4d7 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -217,6 +217,7 @@ static struct rl_hwrev re_hwrevs[] = { { RL_HWREV_8102EL, RL_8169, "8102EL", RL_MTU }, { RL_HWREV_8102EL_SPIN1, RL_8169, "8102EL", RL_MTU }, { RL_HWREV_8103E, RL_8169, "8103E", RL_MTU }, + { RL_HWREV_8401E, RL_8169, "8401E", RL_MTU }, { RL_HWREV_8105E, RL_8169, "8105E", RL_MTU }, { RL_HWREV_8168B_SPIN2, RL_8169, "8168", RL_JUMBO_MTU }, { RL_HWREV_8168B_SPIN3, RL_8169, "8168", RL_JUMBO_MTU }, @@ -1377,6 +1378,7 @@ re_attach(device_t dev) RL_FLAG_MACSTAT | RL_FLAG_FASTETHER | RL_FLAG_CMDSTOP | RL_FLAG_AUTOPAD | RL_FLAG_MACSLEEP; break; + case RL_HWREV_8401E: case RL_HWREV_8105E: sc->rl_flags |= RL_FLAG_PHYWAKE | RL_FLAG_PHYWAKE_PM | RL_FLAG_PAR | RL_FLAG_DESCV2 | RL_FLAG_MACSTAT | @@ -1502,8 +1504,11 @@ re_attach(device_t dev) } /* Take PHY out of power down mode. */ - if ((sc->rl_flags & RL_FLAG_PHYWAKE_PM) != 0) + if ((sc->rl_flags & RL_FLAG_PHYWAKE_PM) != 0) { CSR_WRITE_1(sc, RL_PMCH, CSR_READ_1(sc, RL_PMCH) | 0x80); + if (hw_rev->rl_rev == RL_HWREV_8401E) + CSR_WRITE_1(sc, 0xD1, CSR_READ_1(sc, 0xD1) & ~0x08); + } if ((sc->rl_flags & RL_FLAG_PHYWAKE) != 0) { re_gmii_writereg(dev, 1, 0x1f, 0); re_gmii_writereg(dev, 1, 0x0e, 0); diff --git a/sys/pci/if_rlreg.h b/sys/pci/if_rlreg.h index 38839fa..6ecba71 100644 --- a/sys/pci/if_rlreg.h +++ b/sys/pci/if_rlreg.h @@ -160,6 +160,7 @@ #define RL_HWREV_8110S 0x04000000 #define RL_HWREV_8169_8110SB 0x10000000 #define RL_HWREV_8169_8110SC 0x18000000 +#define RL_HWREV_8401E 0x24000000 #define RL_HWREV_8102EL 0x24800000 #define RL_HWREV_8102EL_SPIN1 0x24C00000 #define RL_HWREV_8168D 0x28000000 |