Message ID | 20190418180057.3593-17-thuth@redhat.com |
---|---|
State | New |
Headers | show |
Series | Kconfig dependencies for ARM machines | expand |
Hi Thomas, On 4/18/19 8:00 PM, Thomas Huth wrote: > Dependencies have been determined by looking at hw/arm/virt.c > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > default-configs/arm-softmmu.mak | 11 +---------- > hw/arm/Kconfig | 19 +++++++++++++++++++ > hw/arm/Makefile.objs | 3 ++- > 3 files changed, 22 insertions(+), 11 deletions(-) > > diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak > index 2580584281..f440a2b1cd 100644 > --- a/default-configs/arm-softmmu.mak > +++ b/default-configs/arm-softmmu.mak > @@ -6,6 +6,7 @@ CONFIG_ARM_V7M=y > # CONFIG_PCI_DEVICES=n > # CONFIG_TEST_DEVICES=n > > +CONFIG_ARM_VIRT=y > CONFIG_EXYNOS4=y > CONFIG_HIGHBANK=y > CONFIG_INTEGRATOR=y > @@ -32,8 +33,6 @@ CONFIG_VGA=y > CONFIG_SSI_M25P80=y > CONFIG_ALLWINNER_EMAC=y > CONFIG_IMX_FEC=y > -CONFIG_PLATFORM_BUS=y > -CONFIG_VIRTIO_MMIO=y > > CONFIG_NETDUINO2=y > > @@ -68,9 +67,6 @@ CONFIG_IOTKIT_SYSINFO=y > CONFIG_ARMSSE_CPUID=y > CONFIG_ARMSSE_MHU=y > > -CONFIG_PCI_EXPRESS=y > -CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y > - > CONFIG_ALLWINNER_A10_PIT=y > CONFIG_ALLWINNER_A10_PIC=y > CONFIG_ALLWINNER_A10=y > @@ -86,10 +82,5 @@ CONFIG_PCIE_PORT=y > CONFIG_XIO3130=y > CONFIG_IOH3420=y > CONFIG_I82801B11=y > -CONFIG_ACPI=y > -CONFIG_ARM_VIRT=y > -CONFIG_SMBIOS=y > -CONFIG_GPIO_KEY=y > CONFIG_MSF2=y > -CONFIG_FW_CFG_DMA=y > CONFIG_PCI_EXPRESS_DESIGNWARE=y > diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig > index abeaa54d88..4d0febf644 100644 > --- a/hw/arm/Kconfig > +++ b/hw/arm/Kconfig > @@ -1,6 +1,24 @@ > config ARM_VIRT > bool > + imply PCI_DEVICES Without -nodefaults I get: qemu-system-aarch64: Unsupported NIC model: virtio-net-pci This is expected. > + imply TEST_DEVICES > + imply VFIO_AMD_XGBE > imply VFIO_PLATFORM > + imply VFIO_XGMAC > + select A15MPCORE > + select ACPI > + select ARM_SMMUV3 You forgot to remove ARM_SMMUV3 from default-configs/aarch64-softmmu.mak. With it removed: Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > + select GPIO_KEY > + select FW_CFG_DMA > + select PCI_EXPRESS > + select PCI_EXPRESS_GENERIC_BRIDGE > + select PFLASH_CFI01 > + select PL011 # UART > + select PL031 # RTC > + select PL061 # GPIO > + select PLATFORM_BUS > + select SMBIOS > + select VIRTIO_MMIO > > config CHEETAH > bool > @@ -298,6 +316,7 @@ config A9MPCORE > > config A15MPCORE > bool > + select ARM_GIC > > config ARM11MPCORE > bool > diff --git a/hw/arm/Makefile.objs b/hw/arm/Makefile.objs > index 729e711b87..4f591ca487 100644 > --- a/hw/arm/Makefile.objs > +++ b/hw/arm/Makefile.objs > @@ -1,4 +1,5 @@ > -obj-y += boot.o sysbus-fdt.o > +obj-y += boot.o > +obj-$(CONFIG_PLATFORM_BUS) += sysbus-fdt.o > obj-$(CONFIG_ARM_VIRT) += virt.o > obj-$(CONFIG_ACPI) += virt-acpi-build.o > obj-$(CONFIG_DIGIC) += digic_boards.o >
On 25/04/2019 17.53, Philippe Mathieu-Daudé wrote: > Hi Thomas, > > On 4/18/19 8:00 PM, Thomas Huth wrote: >> Dependencies have been determined by looking at hw/arm/virt.c >> >> Signed-off-by: Thomas Huth <thuth@redhat.com> >> --- >> default-configs/arm-softmmu.mak | 11 +---------- >> hw/arm/Kconfig | 19 +++++++++++++++++++ >> hw/arm/Makefile.objs | 3 ++- >> 3 files changed, 22 insertions(+), 11 deletions(-) >> >> diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak >> index 2580584281..f440a2b1cd 100644 >> --- a/default-configs/arm-softmmu.mak >> +++ b/default-configs/arm-softmmu.mak >> @@ -6,6 +6,7 @@ CONFIG_ARM_V7M=y >> # CONFIG_PCI_DEVICES=n >> # CONFIG_TEST_DEVICES=n >> >> +CONFIG_ARM_VIRT=y >> CONFIG_EXYNOS4=y >> CONFIG_HIGHBANK=y >> CONFIG_INTEGRATOR=y >> @@ -32,8 +33,6 @@ CONFIG_VGA=y >> CONFIG_SSI_M25P80=y >> CONFIG_ALLWINNER_EMAC=y >> CONFIG_IMX_FEC=y >> -CONFIG_PLATFORM_BUS=y >> -CONFIG_VIRTIO_MMIO=y >> >> CONFIG_NETDUINO2=y >> >> @@ -68,9 +67,6 @@ CONFIG_IOTKIT_SYSINFO=y >> CONFIG_ARMSSE_CPUID=y >> CONFIG_ARMSSE_MHU=y >> >> -CONFIG_PCI_EXPRESS=y >> -CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y >> - >> CONFIG_ALLWINNER_A10_PIT=y >> CONFIG_ALLWINNER_A10_PIC=y >> CONFIG_ALLWINNER_A10=y >> @@ -86,10 +82,5 @@ CONFIG_PCIE_PORT=y >> CONFIG_XIO3130=y >> CONFIG_IOH3420=y >> CONFIG_I82801B11=y >> -CONFIG_ACPI=y >> -CONFIG_ARM_VIRT=y >> -CONFIG_SMBIOS=y >> -CONFIG_GPIO_KEY=y >> CONFIG_MSF2=y >> -CONFIG_FW_CFG_DMA=y >> CONFIG_PCI_EXPRESS_DESIGNWARE=y >> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig >> index abeaa54d88..4d0febf644 100644 >> --- a/hw/arm/Kconfig >> +++ b/hw/arm/Kconfig >> @@ -1,6 +1,24 @@ >> config ARM_VIRT >> bool >> + imply PCI_DEVICES > > Without -nodefaults I get: > qemu-system-aarch64: Unsupported NIC model: virtio-net-pci > This is expected. Yes, it should still work with "-nic none" or "-nodefaults". >> + imply TEST_DEVICES >> + imply VFIO_AMD_XGBE >> imply VFIO_PLATFORM >> + imply VFIO_XGMAC >> + select A15MPCORE >> + select ACPI >> + select ARM_SMMUV3 > > You forgot to remove ARM_SMMUV3 from default-configs/aarch64-softmmu.mak. Good catch! Will fix it in v6. > With it removed: > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Thanks! Thomas
On Mon, 29 Apr 2019 at 16:34, Thomas Huth <thuth@redhat.com> wrote: > > On 25/04/2019 17.53, Philippe Mathieu-Daudé wrote: > > Hi Thomas, > > > > On 4/18/19 8:00 PM, Thomas Huth wrote: > >> Dependencies have been determined by looking at hw/arm/virt.c > >> > >> Signed-off-by: Thomas Huth <thuth@redhat.com> > >> --- > >> default-configs/arm-softmmu.mak | 11 +---------- > >> hw/arm/Kconfig | 19 +++++++++++++++++++ > >> hw/arm/Makefile.objs | 3 ++- > >> 3 files changed, 22 insertions(+), 11 deletions(-) > > Without -nodefaults I get: > > qemu-system-aarch64: Unsupported NIC model: virtio-net-pci > > This is expected. > > Yes, it should still work with "-nic none" or "-nodefaults". Er, if you need either -nic none or -nodefaults after this patch then this would be a change in behaviour, which seems wrong to me. thanks -- PMM
On 29/04/2019 17.53, Peter Maydell wrote: > On Mon, 29 Apr 2019 at 16:34, Thomas Huth <thuth@redhat.com> wrote: >> >> On 25/04/2019 17.53, Philippe Mathieu-Daudé wrote: >>> Hi Thomas, >>> >>> On 4/18/19 8:00 PM, Thomas Huth wrote: >>>> Dependencies have been determined by looking at hw/arm/virt.c >>>> >>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>> --- >>>> default-configs/arm-softmmu.mak | 11 +---------- >>>> hw/arm/Kconfig | 19 +++++++++++++++++++ >>>> hw/arm/Makefile.objs | 3 ++- >>>> 3 files changed, 22 insertions(+), 11 deletions(-) > >>> Without -nodefaults I get: >>> qemu-system-aarch64: Unsupported NIC model: virtio-net-pci >>> This is expected. >> >> Yes, it should still work with "-nic none" or "-nodefaults". > > Er, if you need either -nic none or -nodefaults after this > patch then this would be a change in behaviour, which seems > wrong to me. No worry, this only applies to compiling builds where you run "configure --without-default-devices". For normal builds, virtio-net should still be included fine. ... at least I hope this is what Philippe was talking about ... but for me it's working fine when I run "configure" normally. Thomas
On 4/29/19 6:02 PM, Thomas Huth wrote: > On 29/04/2019 17.53, Peter Maydell wrote: >> On Mon, 29 Apr 2019 at 16:34, Thomas Huth <thuth@redhat.com> wrote: >>> >>> On 25/04/2019 17.53, Philippe Mathieu-Daudé wrote: >>>> Hi Thomas, >>>> >>>> On 4/18/19 8:00 PM, Thomas Huth wrote: >>>>> Dependencies have been determined by looking at hw/arm/virt.c >>>>> >>>>> Signed-off-by: Thomas Huth <thuth@redhat.com> >>>>> --- >>>>> default-configs/arm-softmmu.mak | 11 +---------- >>>>> hw/arm/Kconfig | 19 +++++++++++++++++++ >>>>> hw/arm/Makefile.objs | 3 ++- >>>>> 3 files changed, 22 insertions(+), 11 deletions(-) >> >>>> Without -nodefaults I get: >>>> qemu-system-aarch64: Unsupported NIC model: virtio-net-pci >>>> This is expected. >>> >>> Yes, it should still work with "-nic none" or "-nodefaults". >> >> Er, if you need either -nic none or -nodefaults after this >> patch then this would be a change in behaviour, which seems >> wrong to me. > > No worry, this only applies to compiling builds where you run "configure > --without-default-devices". For normal builds, virtio-net should still > be included fine. ... at least I hope this is what Philippe was talking > about ... but for me it's working fine when I run "configure" normally. Yes, I tested both cases, without --without-default-devices it works as expected (no behaviour change). With --without-default-devices (this is a new configure switch) it is probably required to run QEMU with -nodefaults.
diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak index 2580584281..f440a2b1cd 100644 --- a/default-configs/arm-softmmu.mak +++ b/default-configs/arm-softmmu.mak @@ -6,6 +6,7 @@ CONFIG_ARM_V7M=y # CONFIG_PCI_DEVICES=n # CONFIG_TEST_DEVICES=n +CONFIG_ARM_VIRT=y CONFIG_EXYNOS4=y CONFIG_HIGHBANK=y CONFIG_INTEGRATOR=y @@ -32,8 +33,6 @@ CONFIG_VGA=y CONFIG_SSI_M25P80=y CONFIG_ALLWINNER_EMAC=y CONFIG_IMX_FEC=y -CONFIG_PLATFORM_BUS=y -CONFIG_VIRTIO_MMIO=y CONFIG_NETDUINO2=y @@ -68,9 +67,6 @@ CONFIG_IOTKIT_SYSINFO=y CONFIG_ARMSSE_CPUID=y CONFIG_ARMSSE_MHU=y -CONFIG_PCI_EXPRESS=y -CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y - CONFIG_ALLWINNER_A10_PIT=y CONFIG_ALLWINNER_A10_PIC=y CONFIG_ALLWINNER_A10=y @@ -86,10 +82,5 @@ CONFIG_PCIE_PORT=y CONFIG_XIO3130=y CONFIG_IOH3420=y CONFIG_I82801B11=y -CONFIG_ACPI=y -CONFIG_ARM_VIRT=y -CONFIG_SMBIOS=y -CONFIG_GPIO_KEY=y CONFIG_MSF2=y -CONFIG_FW_CFG_DMA=y CONFIG_PCI_EXPRESS_DESIGNWARE=y diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index abeaa54d88..4d0febf644 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -1,6 +1,24 @@ config ARM_VIRT bool + imply PCI_DEVICES + imply TEST_DEVICES + imply VFIO_AMD_XGBE imply VFIO_PLATFORM + imply VFIO_XGMAC + select A15MPCORE + select ACPI + select ARM_SMMUV3 + select GPIO_KEY + select FW_CFG_DMA + select PCI_EXPRESS + select PCI_EXPRESS_GENERIC_BRIDGE + select PFLASH_CFI01 + select PL011 # UART + select PL031 # RTC + select PL061 # GPIO + select PLATFORM_BUS + select SMBIOS + select VIRTIO_MMIO config CHEETAH bool @@ -298,6 +316,7 @@ config A9MPCORE config A15MPCORE bool + select ARM_GIC config ARM11MPCORE bool diff --git a/hw/arm/Makefile.objs b/hw/arm/Makefile.objs index 729e711b87..4f591ca487 100644 --- a/hw/arm/Makefile.objs +++ b/hw/arm/Makefile.objs @@ -1,4 +1,5 @@ -obj-y += boot.o sysbus-fdt.o +obj-y += boot.o +obj-$(CONFIG_PLATFORM_BUS) += sysbus-fdt.o obj-$(CONFIG_ARM_VIRT) += virt.o obj-$(CONFIG_ACPI) += virt-acpi-build.o obj-$(CONFIG_DIGIC) += digic_boards.o
Dependencies have been determined by looking at hw/arm/virt.c Signed-off-by: Thomas Huth <thuth@redhat.com> --- default-configs/arm-softmmu.mak | 11 +---------- hw/arm/Kconfig | 19 +++++++++++++++++++ hw/arm/Makefile.objs | 3 ++- 3 files changed, 22 insertions(+), 11 deletions(-)