A Skylake server may have some DIMM slots filled with NVDIMMs
instead of normal DDR4 DIMMs. These are enumerated differently
by the memory controller.
Sadly there isn't an easy way to just peek at some memory controller
register to find the size of these DIMMs, so we have to rely on the
NFIT and SMBIOS tables to get that information.
This series only tackles the topology function of the EDAC
driver. A later series of patches will fix the address translation
parts so that errors in NVDIMMs will be reported correctly.
It's marked "RFC" because it depends on the new ACPCIA version 20171110
which has only just made it to Rafael's tree.
Some of you may only care about some of the parts that touch code you
maintain, but I copied you on all four because you might like to see
the bigger picture.
Tony Luck (4):
acpi, nfit: Add function to look up nvdimm device and provide SMBIOS
firmware: dmi: Add function to look up a handle and return DIMM size
edac: Add new memory type for non-volatile DIMMs
EDAC, skx_edac: Detect non-volatile DIMMs
drivers/acpi/nfit/core.c | 27 +++++++++++++++++++++
drivers/edac/Kconfig | 2 ++
drivers/edac/edac_mc.c | 1 +
drivers/edac/edac_mc_sysfs.c | 3 ++-
drivers/edac/skx_edac.c | 56 ++++++++++++++++++++++++++++++++++++++++----
drivers/firmware/dmi_scan.c | 29 +++++++++++++++++++++++
include/acpi/nfit.h | 19 +++++++++++++++
include/linux/dmi.h | 2 ++
include/linux/edac.h | 3 +++
9 files changed, 136 insertions(+), 6 deletions(-)
create mode 100644 include/acpi/nfit.h