提交 4fad8098 编写于 作者: S Sedat Dilek 提交者: Mauro Carvalho Chehab

i7core_edac: Fix compilation on 32 bits arch

on i386:
	ERROR: "__udivdi3" [drivers/edac/i7core_edac.ko] undefined!\

In both get_sdram_scrub_rate() and set_sdram_scrub_rate()
Reported-by: NRandy Dunlap <rdunlap@xenotime.net>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 535e9c78
...@@ -37,6 +37,7 @@ ...@@ -37,6 +37,7 @@
#include <linux/smp.h> #include <linux/smp.h>
#include <asm/mce.h> #include <asm/mce.h>
#include <asm/processor.h> #include <asm/processor.h>
#include <asm/div64.h>
#include "edac_core.h" #include "edac_core.h"
...@@ -2102,7 +2103,8 @@ static int set_sdram_scrub_rate(struct mem_ctl_info *mci, u32 new_bw) ...@@ -2102,7 +2103,8 @@ static int set_sdram_scrub_rate(struct mem_ctl_info *mci, u32 new_bw)
* program the corresponding register value. * program the corresponding register value.
*/ */
scrub_interval = (unsigned long long)freq_dclk_mhz * scrub_interval = (unsigned long long)freq_dclk_mhz *
cache_line_size * 1000000 / new_bw; cache_line_size * 1000000;
do_div(scrub_interval, new_bw);
if (!scrub_interval || scrub_interval > SCRUBINTERVAL_MASK) if (!scrub_interval || scrub_interval > SCRUBINTERVAL_MASK)
return -EINVAL; return -EINVAL;
...@@ -2153,7 +2155,8 @@ static int get_sdram_scrub_rate(struct mem_ctl_info *mci) ...@@ -2153,7 +2155,8 @@ static int get_sdram_scrub_rate(struct mem_ctl_info *mci)
/* Calculate scrub rate value into byte/sec bandwidth */ /* Calculate scrub rate value into byte/sec bandwidth */
scrub_rate = (unsigned long long)freq_dclk_mhz * scrub_rate = (unsigned long long)freq_dclk_mhz *
1000000 * cache_line_size / scrubval; 1000000 * cache_line_size;
do_div(scrub_rate, scrubval);
return (int)scrub_rate; return (int)scrub_rate;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册