diff options
-rw-r--r-- | drivers/edac/Kconfig | 8 | ||||
-rw-r--r-- | drivers/edac/amd64_edac.c | 8 |
2 files changed, 9 insertions, 7 deletions
diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig index 47953b06d6c8..27d0c4cdc58d 100644 --- a/drivers/edac/Kconfig +++ b/drivers/edac/Kconfig @@ -84,10 +84,10 @@ config EDAC_AMD64 When EDAC_DEBUG is enabled, hardware error injection facilities through sysfs are available: - Recent Opterons (Family 10h and later) provide for Memory Error - Injection into the ECC detection circuits. The amd64_edac module - allows the operator/user to inject Uncorrectable and Correctable - errors into DRAM. + AMD CPUs up to and excluding family 0x17 provide for Memory + Error Injection into the ECC detection circuits. The amd64_edac + module allows the operator/user to inject Uncorrectable and + Correctable errors into DRAM. When enabled, in each of the respective memory controller directories (/sys/devices/system/edac/mc/mcX), there are 3 input files: diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index d55f8ef2240c..9868f95a5622 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c @@ -828,9 +828,11 @@ static umode_t inj_is_visible(struct kobject *kobj, struct attribute *attr, int struct mem_ctl_info *mci = container_of(dev, struct mem_ctl_info, dev); struct amd64_pvt *pvt = mci->pvt_info; - if (pvt->fam < 0x10) - return 0; - return attr->mode; + /* Families which have that injection hw */ + if (pvt->fam >= 0x10 && pvt->fam <= 0x16) + return attr->mode; + + return 0; } static const struct attribute_group inj_group = { |