aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBorislav Petkov <borislav.petkov@amd.com>2010-03-08 12:29:35 -0500
committerBorislav Petkov <borislav.petkov@amd.com>2010-08-03 10:14:04 -0400
commit9975a5f22a4fcc8d08035c65439900a983f891ad (patch)
tree33fbd72a4f4bc1d7097e46db6bf46a4848d7f74b
parentf4347553b30ec66530bfe63c84530afea3803396 (diff)
amd64_edac: Fix DCT base address selector
The correct check is to verify whether in high range we're below 4GB and not to extract the DctSelBaseAddr again. See "2.8.5 Routing DRAM Requests" in the F10h BKDG. Cc: <stable@kernel.org> # .32.x .33.x .34.x Signed-off-by: Borislav Petkov <borislav.petkov@amd.com> Acked-by: Doug Thompson <dougthompson@xmission.com>
-rw-r--r--drivers/edac/amd64_edac.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c
index a44e90abb755..4129aa0930cd 100644
--- a/drivers/edac/amd64_edac.c
+++ b/drivers/edac/amd64_edac.c
@@ -1435,7 +1435,7 @@ static inline u64 f10_get_base_addr_offset(u64 sys_addr, int hi_range_sel,
1435 u64 chan_off; 1435 u64 chan_off;
1436 1436
1437 if (hi_range_sel) { 1437 if (hi_range_sel) {
1438 if (!(dct_sel_base_addr & 0xFFFFF800) && 1438 if (!(dct_sel_base_addr & 0xFFFF0000) &&
1439 hole_valid && (sys_addr >= 0x100000000ULL)) 1439 hole_valid && (sys_addr >= 0x100000000ULL))
1440 chan_off = hole_off << 16; 1440 chan_off = hole_off << 16;
1441 else 1441 else