diff options
author | Pyun YongHyeon <yongari@FreeBSD.org> | 2013-10-21 06:22:20 +0000 |
---|---|---|
committer | Pyun YongHyeon <yongari@FreeBSD.org> | 2013-10-21 06:22:20 +0000 |
commit | fd3ae0f5be1e8b9dd8caf6ceec9af1b6855d9d48 (patch) | |
tree | 42f351ee3bbcd0a27cf165505b676da0ec8c46a5 /sys/dev/re | |
parent | 5e63cdb457f93c321ed976853f8ecdd041df15be (diff) | |
download | src-fd3ae0f5be1e8b9dd8caf6ceec9af1b6855d9d48.tar.gz src-fd3ae0f5be1e8b9dd8caf6ceec9af1b6855d9d48.zip |
Correct MAC revision bits. Previously it always cleared bit 20 and
bit 21.
Notes
Notes:
svn path=/head/; revision=256827
Diffstat (limited to 'sys/dev/re')
-rw-r--r-- | sys/dev/re/if_re.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 1e906a7b4933..6270aceea352 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -1367,10 +1367,11 @@ re_attach(device_t dev) break; default: device_printf(dev, "Chip rev. 0x%08x\n", hwrev & 0x7c800000); + sc->rl_macrev = hwrev & 0x00700000; hwrev &= RL_TXCFG_HWREV; break; } - device_printf(dev, "MAC rev. 0x%08x\n", hwrev & 0x00700000); + device_printf(dev, "MAC rev. 0x%08x\n", sc->rl_macrev); while (hw_rev->rl_desc != NULL) { if (hw_rev->rl_rev == hwrev) { sc->rl_type = hw_rev->rl_type; @@ -1429,7 +1430,7 @@ re_attach(device_t dev) sc->rl_flags |= RL_FLAG_MACSLEEP; /* FALLTHROUGH */ case RL_HWREV_8168C: - if ((hwrev & 0x00700000) == 0x00200000) + if (sc->rl_macrev == 0x00200000) sc->rl_flags |= RL_FLAG_MACSLEEP; /* FALLTHROUGH */ case RL_HWREV_8168CP: |