EDAC/amd64: Initialize DIMM info for systems with more than two channels
authorYazen Ghannam <yazen.ghannam@amd.com>
Wed, 21 Aug 2019 23:59:57 +0000 (23:59 +0000)
committerBorislav Petkov <bp@suse.de>
Fri, 23 Aug 2019 05:06:29 +0000 (07:06 +0200)
commit353a1fcb8f9e5857c0fb720b9e57a86c1fb7c17e
treef4840cefffa8a6aa9737bd4fed1ed91fb4281669
parentf8be8e5680225ac9caf07d4545f8529b7395327f
EDAC/amd64: Initialize DIMM info for systems with more than two channels

Currently, the DIMM info for AMD Family 17h systems is initialized in
init_csrows(). This function is shared with legacy systems, and it has a
limit of two channel support.

This prevents initialization of the DIMM info for a number of ranks, so
there will be missing ranks in the EDAC sysfs.

Create a new init_csrows_df() for Family17h+ and revert init_csrows()
back to pre-Family17h support.

Loop over all channels in the new function in order to support systems
with more than two channels.

Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>
Cc: James Morse <james.morse@arm.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Tony Luck <tony.luck@intel.com>
Link: https://lkml.kernel.org/r/20190821235938.118710-4-Yazen.Ghannam@amd.com
drivers/edac/amd64_edac.c