diff options
author | Borislav Petkov <borislav.petkov@amd.com> | 2011-01-19 14:02:38 -0500 |
---|---|---|
committer | Borislav Petkov <borislav.petkov@amd.com> | 2011-03-17 09:46:25 -0400 |
commit | 87b3e0e6e43b7e92575b79ed05ab86d221323642 (patch) | |
tree | 21dffcdbee0b720f96351ba7cc42cd985852276d /drivers/edac/amd64_edac.c | |
parent | cb293250c71fa85de3ef378d7383ddecf248c32d (diff) |
amd64_edac: Simplify scrubrate setting
Drop per-instance variable and compute min scrubrate dynamically.
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Diffstat (limited to 'drivers/edac/amd64_edac.c')
-rw-r--r-- | drivers/edac/amd64_edac.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index eb6b6bace683..0caf05e376cb 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c | |||
@@ -193,8 +193,12 @@ static int __amd64_set_scrub_rate(struct pci_dev *ctl, u32 new_bw, u32 min_rate) | |||
193 | static int amd64_set_scrub_rate(struct mem_ctl_info *mci, u32 bw) | 193 | static int amd64_set_scrub_rate(struct mem_ctl_info *mci, u32 bw) |
194 | { | 194 | { |
195 | struct amd64_pvt *pvt = mci->pvt_info; | 195 | struct amd64_pvt *pvt = mci->pvt_info; |
196 | u32 min_scrubrate = 0x5; | ||
196 | 197 | ||
197 | return __amd64_set_scrub_rate(pvt->F3, bw, pvt->min_scrubrate); | 198 | if (boot_cpu_data.x86 == 0xf) |
199 | min_scrubrate = 0x0; | ||
200 | |||
201 | return __amd64_set_scrub_rate(pvt->F3, bw, min_scrubrate); | ||
198 | } | 202 | } |
199 | 203 | ||
200 | static int amd64_get_scrub_rate(struct mem_ctl_info *mci) | 204 | static int amd64_get_scrub_rate(struct mem_ctl_info *mci) |
@@ -2399,13 +2403,11 @@ static struct amd64_family_type *amd64_per_family_init(struct amd64_pvt *pvt) | |||
2399 | fam_type = &amd64_family_types[K8_CPUS]; | 2403 | fam_type = &amd64_family_types[K8_CPUS]; |
2400 | pvt->ops = &amd64_family_types[K8_CPUS].ops; | 2404 | pvt->ops = &amd64_family_types[K8_CPUS].ops; |
2401 | pvt->ctl_name = fam_type->ctl_name; | 2405 | pvt->ctl_name = fam_type->ctl_name; |
2402 | pvt->min_scrubrate = K8_MIN_SCRUB_RATE_BITS; | ||
2403 | break; | 2406 | break; |
2404 | case 0x10: | 2407 | case 0x10: |
2405 | fam_type = &amd64_family_types[F10_CPUS]; | 2408 | fam_type = &amd64_family_types[F10_CPUS]; |
2406 | pvt->ops = &amd64_family_types[F10_CPUS].ops; | 2409 | pvt->ops = &amd64_family_types[F10_CPUS].ops; |
2407 | pvt->ctl_name = fam_type->ctl_name; | 2410 | pvt->ctl_name = fam_type->ctl_name; |
2408 | pvt->min_scrubrate = F10_MIN_SCRUB_RATE_BITS; | ||
2409 | break; | 2411 | break; |
2410 | 2412 | ||
2411 | default: | 2413 | default: |