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é <philmd@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
On 15/10/19 18:46, Philippe Mathieu-Daudé wrote: > 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é <philmd@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 > Queued, thanks. As a follow-up, hw/mem/memory-device.c can be common-obj-y. Paolo
Le 15/10/2019 à 18:46, Philippe Mathieu-Daudé a écrit : > 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é <philmd@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 > Applied to my trivial-patches branch. Thanks, Laurent
On 15/10/2019 18.46, Philippe Mathieu-Daudé wrote: > 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é <philmd@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 Looks reasonable to me. Reviewed-by: Thomas Huth <thuth@redhat.com>
© 2016 - 2024 Red Hat, Inc.