diff options
| -rw-r--r-- | drivers/edac/sb_edac.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/edac/sb_edac.c b/drivers/edac/sb_edac.c index f3b1f9fafa4b..5715b7c2c517 100644 --- a/drivers/edac/sb_edac.c +++ b/drivers/edac/sb_edac.c | |||
| @@ -513,7 +513,8 @@ static int get_dimm_config(struct mem_ctl_info *mci) | |||
| 513 | { | 513 | { |
| 514 | struct sbridge_pvt *pvt = mci->pvt_info; | 514 | struct sbridge_pvt *pvt = mci->pvt_info; |
| 515 | struct dimm_info *dimm; | 515 | struct dimm_info *dimm; |
| 516 | int i, j, banks, ranks, rows, cols, size, npages; | 516 | unsigned i, j, banks, ranks, rows, cols, npages; |
| 517 | u64 size; | ||
| 517 | u32 reg; | 518 | u32 reg; |
| 518 | enum edac_type mode; | 519 | enum edac_type mode; |
| 519 | enum mem_type mtype; | 520 | enum mem_type mtype; |
| @@ -585,10 +586,10 @@ static int get_dimm_config(struct mem_ctl_info *mci) | |||
| 585 | cols = numcol(mtr); | 586 | cols = numcol(mtr); |
| 586 | 587 | ||
| 587 | /* DDR3 has 8 I/O banks */ | 588 | /* DDR3 has 8 I/O banks */ |
| 588 | size = (rows * cols * banks * ranks) >> (20 - 3); | 589 | size = ((u64)rows * cols * banks * ranks) >> (20 - 3); |
| 589 | npages = MiB_TO_PAGES(size); | 590 | npages = MiB_TO_PAGES(size); |
| 590 | 591 | ||
| 591 | edac_dbg(0, "mc#%d: channel %d, dimm %d, %d Mb (%d pages) bank: %d, rank: %d, row: %#x, col: %#x\n", | 592 | edac_dbg(0, "mc#%d: channel %d, dimm %d, %Ld Mb (%d pages) bank: %d, rank: %d, row: %#x, col: %#x\n", |
| 592 | pvt->sbridge_dev->mc, i, j, | 593 | pvt->sbridge_dev->mc, i, j, |
| 593 | size, npages, | 594 | size, npages, |
| 594 | banks, ranks, rows, cols); | 595 | banks, ranks, rows, cols); |
