When selecting only the NVDIMM device with "NVDIMM y", the device is not compiled/linked because it does not select MEM_DEVICE and hw/mem/Makefile.objs is not included:
$ git grep mem/ hw/Makefile.objs hw/Makefile.objs:39:devices-dirs-$(CONFIG_MEM_DEVICE) += mem/ Let NVDIMM config select MEM_DEVICE. Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> --- I'm not sure this is the best fix, maybe we should simply include mem/ regardless of CONFIG_MEM_DEVICE (all mem devices use it). --- hw/mem/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/mem/Kconfig b/hw/mem/Kconfig index 620fd4cb59..5da724d7a2 100644 --- a/hw/mem/Kconfig +++ b/hw/mem/Kconfig @@ -7,5 +7,6 @@ config MEM_DEVICE config NVDIMM bool + select MEM_DEVICE default y depends on PC -- 2.21.0