All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 00/17] Kconfig patches for 2021-07-20
@ 2021-07-20 15:41 Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 01/17] hw/mips: Add dependency MIPS_CPS -> MIPS_ITU Philippe Mathieu-Daudé
                   ` (17 more replies)
  0 siblings, 18 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Philippe Mathieu-Daudé

The following changes since commit 7457b407edd6e8555e4b46488aab2f13959fccf8:

  Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-07-19' into staging (2021-07-19 11:34:08 +0100)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/kconfig-20210720

for you to fetch changes up to 3fac1da88f95f5338bb79420682427ab06adf99e:

  hw/tricore: fix inclusion of tricore_testboard (2021-07-20 17:17:07 +0200)

----------------------------------------------------------------
Kconfig patches queue

Various Kconfig patches collected during v6.1 development cycle.

----------------------------------------------------------------

Alex Bennée (1):
  hw/tricore: fix inclusion of tricore_testboard

Philippe Mathieu-Daudé (16):
  hw/mips: Add dependency MIPS_CPS -> MIPS_ITU
  hw/mips: Express dependencies of the Boston machine with Kconfig
  hw/acpi: Do not restrict ACPI core routines to x86 architecture
  hw/acpi/Kconfig: Add missing Kconfig dependencies (build error)
  hw/i386/Kconfig: Add missing Kconfig dependency (runtime error)
  hw/ide/Kconfig: Add missing dependency PCI -> IDE_QDEV
  hw/arm/Kconfig: Add missing dependency NPCM7XX -> SMBUS
  hw/arm/Kconfig: Remove unused DS1338 symbol from i.MX25 PDK Board
  hw/arm/Kconfig: Add missing SDHCI symbol to FSL_IMX25
  hw/riscv/Kconfig: Add missing dependency MICROCHIP_PFSOC -> SERIAL
  hw/riscv/Kconfig: Restrict NUMA to Virt & Spike machines
  hw/ppc/Kconfig: Add missing dependency E500 -> DS1338 RTC
  hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259
  hw/isa/vt82c686: Add missing Kconfig dependencies (build error)
  hw/isa/vt82c686: Add missing Kconfig dependency (runtime error)
  hw/ppc/Kconfig: Add dependency PEGASOS2 -> ATI_VGA

 configs/devices/mips64el-softmmu/default.mak | 4 ----
 configs/devices/ppc-softmmu/default.mak      | 1 -
 configs/devices/tricore-softmmu/default.mak  | 1 +
 hw/acpi/Kconfig                              | 4 ++++
 hw/acpi/meson.build                          | 3 ++-
 hw/arm/Kconfig                               | 3 ++-
 hw/char/Kconfig                              | 1 +
 hw/i386/Kconfig                              | 1 +
 hw/ide/Kconfig                               | 2 +-
 hw/isa/Kconfig                               | 4 ++++
 hw/mips/Kconfig                              | 6 ++++++
 hw/pci-host/Kconfig                          | 1 +
 hw/ppc/Kconfig                               | 2 ++
 hw/riscv/Kconfig                             | 5 +++++
 hw/riscv/meson.build                         | 2 +-
 hw/tricore/Kconfig                           | 3 +--
 hw/tricore/meson.build                       | 4 ++--
 17 files changed, 34 insertions(+), 13 deletions(-)

-- 
2.31.1




^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PULL 01/17] hw/mips: Add dependency MIPS_CPS -> MIPS_ITU
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 02/17] hw/mips: Express dependencies of the Boston machine with Kconfig Philippe Mathieu-Daudé
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Philippe Mathieu-Daudé

The Inter-Thread Communication Unit (ITU, introduced in commit
34fa7e83e11) is part of the Coherent Processing System (CPS),
as describe in commit 408294352ad:

    Make ITU available in the system if CPU supports multithreading
    and is part of CPS.

Have CPS select ITU in Kconfig to avoid the following build failure:

  /usr/bin/ld: libqemu-mips64el-softmmu.fa.p/hw_mips_cps.c.o: in function `mips_cps_realize':
  hw/mips/cps.c:104: undefined reference to `mips_itu_get_tag_region'

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190311005618.19007-5-philmd@redhat.com>
---
 hw/mips/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig
index c245e881a2b..1d4051fcf07 100644
--- a/hw/mips/Kconfig
+++ b/hw/mips/Kconfig
@@ -47,6 +47,7 @@ config LOONGSON3V
 config MIPS_CPS
     bool
     select PTIMER
+    select MIPS_ITU
 
 config MIPS_BOSTON
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 02/17] hw/mips: Express dependencies of the Boston machine with Kconfig
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 01/17] hw/mips: Add dependency MIPS_CPS -> MIPS_ITU Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 03/17] hw/acpi: Do not restrict ACPI core routines to x86 architecture Philippe Mathieu-Daudé
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paul Burton, Thomas Huth, Philippe Mathieu-Daudé

Boston is built around a Xilinx FPGA, which includes a PCIe root port
and an UART. An Intel EG20T PCH connects the I/O peripherals, but only
the SATA bus is emulated.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Paul Burton <pburton@wavecomp.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190311005618.19007-6-philmd@redhat.com>
---
 configs/devices/mips64el-softmmu/default.mak | 4 ----
 hw/mips/Kconfig                              | 5 +++++
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/configs/devices/mips64el-softmmu/default.mak b/configs/devices/mips64el-softmmu/default.mak
index c511a061bae..c610749ac13 100644
--- a/configs/devices/mips64el-softmmu/default.mak
+++ b/configs/devices/mips64el-softmmu/default.mak
@@ -8,8 +8,4 @@ CONFIG_ATI_VGA=y
 CONFIG_RTL8139_PCI=y
 CONFIG_JAZZ=y
 CONFIG_VT82C686=y
-CONFIG_AHCI=y
 CONFIG_MIPS_BOSTON=y
-CONFIG_FITLOADER=y
-CONFIG_PCI_EXPRESS=y
-CONFIG_PCI_EXPRESS_XILINX=y
diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig
index 1d4051fcf07..b4c5549ce84 100644
--- a/hw/mips/Kconfig
+++ b/hw/mips/Kconfig
@@ -51,6 +51,11 @@ config MIPS_CPS
 
 config MIPS_BOSTON
     bool
+    select FITLOADER
+    select MIPS_CPS
+    select PCI_EXPRESS_XILINX
+    select AHCI_ICH9
+    select SERIAL
 
 config FW_CFG_MIPS
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 03/17] hw/acpi: Do not restrict ACPI core routines to x86 architecture
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 01/17] hw/mips: Add dependency MIPS_CPS -> MIPS_ITU Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 02/17] hw/mips: Express dependencies of the Boston machine with Kconfig Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 04/17] hw/acpi/Kconfig: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Philippe Mathieu-Daudé, Michael S . Tsirkin

ACPI core routines (in core.c) are not really x86-specific.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20210616204328.2611406-21-philmd@redhat.com>
---
 hw/acpi/meson.build | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hw/acpi/meson.build b/hw/acpi/meson.build
index 9b7fa75719c..29f804d13ea 100644
--- a/hw/acpi/meson.build
+++ b/hw/acpi/meson.build
@@ -3,6 +3,7 @@
   'acpi_interface.c',
   'aml-build.c',
   'bios-linker-loader.c',
+  'core.c',
   'utils.c',
 ))
 acpi_ss.add(when: 'CONFIG_ACPI_CPU_HOTPLUG', if_true: files('cpu.c'))
@@ -14,7 +15,7 @@
 acpi_ss.add(when: 'CONFIG_ACPI_HW_REDUCED', if_true: files('generic_event_device.c'))
 acpi_ss.add(when: 'CONFIG_ACPI_HMAT', if_true: files('hmat.c'))
 acpi_ss.add(when: 'CONFIG_ACPI_APEI', if_true: files('ghes.c'), if_false: files('ghes-stub.c'))
-acpi_ss.add(when: 'CONFIG_ACPI_X86', if_true: files('core.c', 'piix4.c', 'pcihp.c'), if_false: files('acpi-stub.c'))
+acpi_ss.add(when: 'CONFIG_ACPI_X86', if_true: files('piix4.c', 'pcihp.c'))
 acpi_ss.add(when: 'CONFIG_ACPI_X86_ICH', if_true: files('ich9.c', 'tco.c'))
 acpi_ss.add(when: 'CONFIG_IPMI', if_true: files('ipmi.c'), if_false: files('ipmi-stub.c'))
 acpi_ss.add(when: 'CONFIG_PC', if_false: files('acpi-x86-stub.c'))
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 04/17] hw/acpi/Kconfig: Add missing Kconfig dependencies (build error)
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (2 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 03/17] hw/acpi: Do not restrict ACPI core routines to x86 architecture Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 05/17] hw/i386/Kconfig: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Philippe Mathieu-Daudé, Gerd Hoffmann, Michael S . Tsirkin

The 'microvm' machine misses various dependencies:

  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_setup_microvm':
  hw/i386/acpi-microvm.c:247: undefined reference to `acpi_build_tables_init'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_build_microvm':
  hw/i386/acpi-microvm.c:192: undefined reference to `bios_linker_loader_alloc'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `build_dsdt_microvm':
  hw/i386/acpi-microvm.c:121: undefined reference to `init_aml_allocator'
  /usr/bin/ld: hw/i386/acpi-microvm.c:124: undefined reference to `acpi_data_push'
  /usr/bin/ld: hw/i386/acpi-microvm.c:126: undefined reference to `aml_scope'
  /usr/bin/ld: hw/i386/acpi-microvm.c:129: undefined reference to `build_ged_aml'
  /usr/bin/ld: hw/i386/acpi-microvm.c:131: undefined reference to `acpi_dsdt_add_power_button'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_dsdt_add_virtio':
  hw/i386/acpi-microvm.c:77: undefined reference to `aml_string'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `build_dsdt_microvm':
  hw/i386/acpi-microvm.c:138: undefined reference to `aml_scope'
  /usr/bin/ld: hw/i386/acpi-microvm.c:149: undefined reference to `build_header'
  /usr/bin/ld: hw/i386/acpi-microvm.c:152: undefined reference to `free_aml_allocator'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_build_microvm':
  hw/i386/acpi-microvm.c:202: undefined reference to `acpi_add_table'
  /usr/bin/ld: hw/i386/acpi-microvm.c:203: undefined reference to `build_fadt'
  /usr/bin/ld: hw/i386/acpi-microvm.c:206: undefined reference to `acpi_add_table'
  /usr/bin/ld: hw/i386/acpi-microvm.c:207: undefined reference to `acpi_build_madt'
  /usr/bin/ld: hw/i386/acpi-microvm.c:212: undefined reference to `build_xsdt'
  /usr/bin/ld: hw/i386/acpi-microvm.c:224: undefined reference to `build_rsdp'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_setup_microvm':
  hw/i386/acpi-microvm.c:251: undefined reference to `acpi_add_rom_blob'
  /usr/bin/ld: hw/i386/acpi-microvm.c:253: undefined reference to `acpi_add_rom_blob'
  /usr/bin/ld: hw/i386/acpi-microvm.c:255: undefined reference to `acpi_add_rom_blob'
  /usr/bin/ld: hw/i386/acpi-microvm.c:258: undefined reference to `acpi_build_tables_cleanup'
  /usr/bin/ld: libqemu-i386-softmmu.fa.p/hw_i386_acpi-microvm.c.o: in function `acpi_dsdt_add_pci':
  hw/i386/acpi-microvm.c:105: undefined reference to `acpi_dsdt_add_gpex'
  collect2: error: ld returned 1 exit status
  ninja: build stopped: subcommand failed.

Update the ACPI_HW_REDUCED symbol to select ACPI_MEMORY_HOTPLUG /
ACPI_NVDIMM / ACPI.

Fixes: 8045df14bcc ("microvm/acpi: add minimal acpi support")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20210616204328.2611406-23-philmd@redhat.com>
---
 hw/acpi/Kconfig | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/hw/acpi/Kconfig b/hw/acpi/Kconfig
index 1932f66af8d..cfc4ede8d91 100644
--- a/hw/acpi/Kconfig
+++ b/hw/acpi/Kconfig
@@ -42,3 +42,7 @@ config ACPI_VMGENID
     depends on PC
 
 config ACPI_HW_REDUCED
+    bool
+    select ACPI
+    select ACPI_MEMORY_HOTPLUG
+    select ACPI_NVDIMM
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 05/17] hw/i386/Kconfig: Add missing Kconfig dependency (runtime error)
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (3 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 04/17] hw/acpi/Kconfig: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 06/17] hw/ide/Kconfig: Add missing dependency PCI -> IDE_QDEV Philippe Mathieu-Daudé
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Philippe Mathieu-Daudé, Gerd Hoffmann, Michael S . Tsirkin

When building the 'microvm' machine stand-alone we get:

  $ qemu-system-x86_64 -M microvm
  **
  ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)
  Bail out! ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)
  Aborted (core dumped)

Looking at the backtrace:

  (gdb) bt
  #3  0x00007ff2330492ff in g_assertion_message_expr () at /lib64/libglib-2.0.so.0
  #4  0x000055a878c18341 in object_new_with_type (type=<optimized out>) at qom/object.c:714
  #5  0x000055a878c18399 in object_new (typename=typename@entry=0x55a878dec36a "isa-pit") at qom/object.c:747
  #6  0x000055a878cc8146 in qdev_new (name=name@entry=0x55a878dec36a "isa-pit") at hw/core/qdev.c:153
  #7  0x000055a878a8b439 in isa_new (name=name@entry=0x55a878dec36a "isa-pit") at hw/isa/isa-bus.c:160
  #8  0x000055a878adb782 in i8254_pit_init (base=64, isa_irq=0, alt_irq=0x0, bus=0x55a87ab38760) at include/hw/timer/i8254.h:54
  #9  microvm_devices_init (mms=0x55a87ac36800) at hw/i386/microvm.c:263
  #10 microvm_machine_state_init (machine=<optimized out>) at hw/i386/microvm.c:471
  #11 0x000055a878a944ab in machine_run_board_init (machine=machine@entry=0x55a87ac36800) at hw/core/machine.c:1239

The "isa-pit" type (TYPE_I8254) is missing. Add it.

Fixes: 0ebf007ddac ("hw/i386: Introduce the microvm machine type")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <20210616204328.2611406-24-philmd@redhat.com>
---
 hw/i386/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig
index bad6cf5b4e6..ddedcef0b27 100644
--- a/hw/i386/Kconfig
+++ b/hw/i386/Kconfig
@@ -111,6 +111,7 @@ config MICROVM
     select ACPI_HW_REDUCED
     select PCI_EXPRESS_GENERIC_BRIDGE
     select USB_XHCI_SYSBUS
+    select I8254
 
 config X86_IOMMU
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 06/17] hw/ide/Kconfig: Add missing dependency PCI -> IDE_QDEV
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (4 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 05/17] hw/i386/Kconfig: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 07/17] hw/arm/Kconfig: Add missing dependency NPCM7XX -> SMBUS Philippe Mathieu-Daudé
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: John Snow, Paolo Bonzini, Bin Meng, Philippe Mathieu-Daudé

The pci_ide_create_devs() function is declared i hw/ide/qdev.c:

 $ git grep ide_create_drive
 hw/ide/pci.c:491:            ide_create_drive(d->bus + bus[i], unit[i], hd_table[i]);
 hw/ide/qdev.c:127:IDEDevice *ide_create_drive(IDEBus *bus, int unit, DriveInfo *drive)
 include/hw/ide/internal.h:653:IDEDevice *ide_create_drive(IDEBus *bus, int unit, DriveInfo *drive);

Fix the correct symbol dependency to avoid build failure when
deselecting some machines:

  /usr/bin/ld: libcommon.fa.p/hw_ide_pci.c.o: in function `pci_ide_create_devs':
  hw/ide/pci.c:491: undefined reference to `ide_create_drive'

Fixes: 8f01b41e109 ("ide: express dependencies with Kconfig")
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-3-philmd@redhat.com>
Acked-by: John Snow <jsnow@redhat.com>
---
 hw/ide/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
index 8e2c8934549..dd85fa3619f 100644
--- a/hw/ide/Kconfig
+++ b/hw/ide/Kconfig
@@ -8,7 +8,7 @@ config IDE_QDEV
 config IDE_PCI
     bool
     depends on PCI
-    select IDE_CORE
+    select IDE_QDEV
 
 config IDE_ISA
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 07/17] hw/arm/Kconfig: Add missing dependency NPCM7XX -> SMBUS
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (5 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 06/17] hw/ide/Kconfig: Add missing dependency PCI -> IDE_QDEV Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 08/17] hw/arm/Kconfig: Remove unused DS1338 symbol from i.MX25 PDK Board Philippe Mathieu-Daudé
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Hao Wu, Paolo Bonzini, Bin Meng, Philippe Mathieu-Daudé

The TYPE_NPCM7XX_SMBUS device model exposes an SMBus, but
this isn't advertised with proper Kconfig symbol, leading
to an early build failure when building NPCM7XX machines
standalone:

  The following clauses were found for AT24C

      config AT24C depends on I2C
      select AT24C if NPCM7XX

Fix by adding SMBUS to NPCM7XX.

Fixes: 94e77879395 ("hw/i2c: Implement NPCM7XX SMBus Module Single Mode")
Reviewed-by: Hao Wu <wuhaotsh@google.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-4-philmd@redhat.com>
---
 hw/arm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 90b19c0861a..4a994f35e3b 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -388,6 +388,7 @@ config NPCM7XX
     select A9MPCORE
     select ADM1272
     select ARM_GIC
+    select SMBUS
     select AT24C  # EEPROM
     select MAX34451
     select PL310  # cache controller
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 08/17] hw/arm/Kconfig: Remove unused DS1338 symbol from i.MX25 PDK Board
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (6 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 07/17] hw/arm/Kconfig: Add missing dependency NPCM7XX -> SMBUS Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 09/17] hw/arm/Kconfig: Add missing SDHCI symbol to FSL_IMX25 Philippe Mathieu-Daudé
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, Bin Meng, Philippe Mathieu-Daudé

In commit c4f00daa5b3 ("imx25-pdk: create ds1338 for qtest inside
the test") we removed the DS1338 device from the i.MX25 machine
but forgot to remove it in the machine Kconfig definitions, do
it now.

Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-5-philmd@redhat.com>
---
 hw/arm/Kconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 4a994f35e3b..30967da2e14 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -404,7 +404,6 @@ config FSL_IMX25
     select IMX_FEC
     select IMX_I2C
     select WDT_IMX2
-    select DS1338
 
 config FSL_IMX31
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 09/17] hw/arm/Kconfig: Add missing SDHCI symbol to FSL_IMX25
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (7 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 08/17] hw/arm/Kconfig: Remove unused DS1338 symbol from i.MX25 PDK Board Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 10/17] hw/riscv/Kconfig: Add missing dependency MICROCHIP_PFSOC -> SERIAL Philippe Mathieu-Daudé
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, Bin Meng, Philippe Mathieu-Daudé

Commit bfae1772c43 ("hw/arm/fsl-imx25: Wire up eSDHC controllers")
added a dependency on the TYPE_IMX_USDHC model, but forgot to add
the Kconfig selector. Fix that to solve when built stand-alone:

  $ qemu-system-arm -M imx25-pdk
  qemu-system-arm: missing object type 'imx-usdhc'
  Aborted (core dumped)

Fixes: bfae1772c43 ("hw/arm/fsl-imx25: Wire up eSDHC controllers")
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-6-philmd@redhat.com>
---
 hw/arm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 30967da2e14..4ba0aca0676 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -404,6 +404,7 @@ config FSL_IMX25
     select IMX_FEC
     select IMX_I2C
     select WDT_IMX2
+    select SDHCI
 
 config FSL_IMX31
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 10/17] hw/riscv/Kconfig: Add missing dependency MICROCHIP_PFSOC -> SERIAL
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (8 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 09/17] hw/arm/Kconfig: Add missing SDHCI symbol to FSL_IMX25 Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 11/17] hw/riscv/Kconfig: Restrict NUMA to Virt & Spike machines Philippe Mathieu-Daudé
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Alistair Francis, Bin Meng, Philippe Mathieu-Daudé

Commit a8fb0a500a6 ("hw/char: Add Microchip PolarFire SoC MMUART
emulation") added a dependency on the SERIAL model, but forgot to
add the Kconfig selector.
Add the dependency to the MCHP_PFSOC_MMUART symbol to fix when
building the MICROCHIP_PFSOC machine stand-alone:

  /usr/bin/ld: libcommon.fa.p/hw_char_mchp_pfsoc_mmuart.c.o: in function `mchp_pfsoc_mmuart_create':
  hw/char/mchp_pfsoc_mmuart.c:79: undefined reference to `serial_mm_init'

Fixes: a8fb0a500a6 ("hw/char: Add Microchip PolarFire SoC MMUART emulation")
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-7-philmd@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---
 hw/char/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/char/Kconfig b/hw/char/Kconfig
index 4cf36ac637b..2e4f620b13e 100644
--- a/hw/char/Kconfig
+++ b/hw/char/Kconfig
@@ -61,6 +61,7 @@ config AVR_USART
 
 config MCHP_PFSOC_MMUART
     bool
+    select SERIAL
 
 config SIFIVE_UART
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 11/17] hw/riscv/Kconfig: Restrict NUMA to Virt & Spike machines
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (9 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 10/17] hw/riscv/Kconfig: Add missing dependency MICROCHIP_PFSOC -> SERIAL Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 12/17] hw/ppc/Kconfig: Add missing dependency E500 -> DS1338 RTC Philippe Mathieu-Daudé
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Alistair Francis, Bin Meng, Philippe Mathieu-Daudé

Only the Virt and Spike machines use NUMA. Add a RISCV_NUMA Kconfig
symbol and only have these machines select it. Adapt the Meson file
to only built it if required.

Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210515173716.358295-8-philmd@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
---
 hw/riscv/Kconfig     | 5 +++++
 hw/riscv/meson.build | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/hw/riscv/Kconfig b/hw/riscv/Kconfig
index 86957ec7b06..0590f443fdf 100644
--- a/hw/riscv/Kconfig
+++ b/hw/riscv/Kconfig
@@ -1,3 +1,6 @@
+config RISCV_NUMA
+    bool
+
 config IBEX
     bool
 
@@ -34,6 +37,7 @@ config RISCV_VIRT
     imply PCI_DEVICES
     imply VIRTIO_VGA
     imply TEST_DEVICES
+    select RISCV_NUMA
     select GOLDFISH_RTC
     select MSI_NONBROKEN
     select PCI
@@ -74,6 +78,7 @@ config SIFIVE_U
 
 config SPIKE
     bool
+    select RISCV_NUMA
     select HTIF
     select MSI_NONBROKEN
     select SIFIVE_CLINT
diff --git a/hw/riscv/meson.build b/hw/riscv/meson.build
index a97454661c0..ab6cae57eae 100644
--- a/hw/riscv/meson.build
+++ b/hw/riscv/meson.build
@@ -1,6 +1,6 @@
 riscv_ss = ss.source_set()
 riscv_ss.add(files('boot.c'), fdt)
-riscv_ss.add(files('numa.c'))
+riscv_ss.add(when: 'CONFIG_RISCV_NUMA', if_true: files('numa.c'))
 riscv_ss.add(files('riscv_hart.c'))
 riscv_ss.add(when: 'CONFIG_OPENTITAN', if_true: files('opentitan.c'))
 riscv_ss.add(when: 'CONFIG_RISCV_VIRT', if_true: files('virt.c'))
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 12/17] hw/ppc/Kconfig: Add missing dependency E500 -> DS1338 RTC
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (10 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 11/17] hw/riscv/Kconfig: Restrict NUMA to Virt & Spike machines Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259 Philippe Mathieu-Daudé
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Bin Meng, Philippe Mathieu-Daudé, David Gibson

Commit 7abb479c7ab ("PPC: E500: Add FSL I2C controller and integrate
RTC with it") added a global dependency on the DS1338 model, instead
of a machine one (via Kconfig). This gives trouble when building
standalone machines not exposing I2C bus:

  The following clauses were found for DS1338

      CONFIG_DS1338=y
      config DS1338 depends on I2C

Fix by selecting the DS1338 symbol in the single machine requiring
it, the E500.

Fixes: 7abb479c7ab ("PPC: E500: Add FSL I2C controller and integrate RTC with it")
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20210513163858.3928976-9-philmd@redhat.com>
---
 configs/devices/ppc-softmmu/default.mak | 1 -
 hw/ppc/Kconfig                          | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/configs/devices/ppc-softmmu/default.mak b/configs/devices/ppc-softmmu/default.mak
index 4535993d8d5..658a454426e 100644
--- a/configs/devices/ppc-softmmu/default.mak
+++ b/configs/devices/ppc-softmmu/default.mak
@@ -1,7 +1,6 @@
 # Default configuration for ppc-softmmu
 
 # For embedded PPCs:
-CONFIG_DS1338=y
 CONFIG_E500=y
 CONFIG_PPC405=y
 CONFIG_PPC440=y
diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig
index 322a7eb031e..85b9c93f02e 100644
--- a/hw/ppc/Kconfig
+++ b/hw/ppc/Kconfig
@@ -130,6 +130,7 @@ config E500
     select SERIAL
     select MPC_I2C
     select FDT_PPC
+    select DS1338
 
 config VIRTEX
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (11 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 12/17] hw/ppc/Kconfig: Add missing dependency E500 -> DS1338 RTC Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 18:02   ` BALATON Zoltan
  2021-07-20 15:41 ` [PULL 14/17] hw/isa/vt82c686: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
                   ` (4 subsequent siblings)
  17 siblings, 1 reply; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Bin Meng, Philippe Mathieu-Daudé, David Gibson

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

Looking at the MV64340 model source, there is a dependency on the
8259 interrupt controller:

  523     case MV64340_PCI_1_INTERRUPT_ACKNOWLEDGE_VIRTUAL_REG:
  524         /* FIXME: Should this be sent via the PCI bus somehow? */
  525         if (s->gpp_int_level && (s->gpp_value & BIT(31))) {
  526             ret = pic_read_irq(isa_pic);
  527         }
  528         break;

Add it to Kconfig to avoid the following build failure:

  /usr/bin/ld: libcommon.fa.p/hw_pci-host_mv64361.c.o: in function `mv64361_read':
  hw/pci-host/mv64361.c:526: undefined reference to `isa_pic'
  /usr/bin/ld: hw/pci-host/mv64361.c:526: undefined reference to `pic_read_irq'

Fixes: dcdf98a9015 ("hw/pci-host: Add emulation of Marvell MV64361 PPC system controller")
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20210515173716.358295-10-philmd@redhat.com>
---
 hw/pci-host/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig
index 84494400b86..2b5f7d58cc5 100644
--- a/hw/pci-host/Kconfig
+++ b/hw/pci-host/Kconfig
@@ -76,3 +76,4 @@ config SH_PCI
 config MV64361
     bool
     select PCI
+    select I8259
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 14/17] hw/isa/vt82c686: Add missing Kconfig dependencies (build error)
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (12 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259 Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 15/17] hw/isa/vt82c686: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Bin Meng, Philippe Mathieu-Daudé

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

The VT82C686 device model misses various dependencies:

  /usr/bin/ld: libcommon.fa.p/hw_isa_vt82c686.c.o: in function `vt82c686b_realize':
  hw/isa/vt82c686.c:622: undefined reference to `i8259_init'
  /usr/bin/ld: hw/isa/vt82c686.c:624: undefined reference to `i8257_dma_init'
  /usr/bin/ld: hw/isa/vt82c686.c:627: undefined reference to `mc146818_rtc_init'

Add them.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Message-Id: <20210515173716.358295-11-philmd@redhat.com>
---
 hw/isa/Kconfig | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/hw/isa/Kconfig b/hw/isa/Kconfig
index 96db170eff3..f99df0e20b1 100644
--- a/hw/isa/Kconfig
+++ b/hw/isa/Kconfig
@@ -50,6 +50,9 @@ config VT82C686
     select FDC_ISA
     select USB_UHCI
     select APM
+    select I8257
+    select I8259
+    select MC146818RTC
 
 config SMC37C669
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 15/17] hw/isa/vt82c686: Add missing Kconfig dependency (runtime error)
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (13 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 14/17] hw/isa/vt82c686: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 16/17] hw/ppc/Kconfig: Add dependency PEGASOS2 -> ATI_VGA Philippe Mathieu-Daudé
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Bin Meng, Philippe Mathieu-Daudé

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

When building the Pegasos2 machine stand-alone we get:

  $ qemu-system-ppc -M pegasos2 -bios pegasos2.rom
  ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)
  Bail out! ERROR:qom/object.c:714:object_new_with_type: assertion failed: (type != NULL)

Looking at the backtrace:

  Thread 1 "qemu-system-ppc" received signal SIGABRT, Aborted.
  (gdb) bt
  #0  0x00007ffff53877d5 in raise () at /lib64/libc.so.6
  #1  0x00007ffff5370895 in abort () at /lib64/libc.so.6
  #2  0x00007ffff6dc4b6c in g_assertion_message_expr.cold () at /lib64/libglib-2.0.so.0
  #3  0x00007ffff6e229ff in g_assertion_message_expr () at /lib64/libglib-2.0.so.0
  #4  0x0000555555a0c8f4 in object_new_with_type (type=0x0) at qom/object.c:714
  #5  0x0000555555a0c9d5 in object_new (typename=0x555555c7afe4 "isa-pit") at qom/object.c:747
  #6  0x0000555555a053b8 in qdev_new (name=0x555555c7afe4 "isa-pit") at hw/core/qdev.c:153
  #7  0x00005555557cdd05 in isa_new (name=0x555555c7afe4 "isa-pit") at hw/isa/isa-bus.c:160
  #8  0x00005555557cf518 in i8254_pit_init (bus=0x55555603d140, base=64, isa_irq=0, alt_irq=0x0) at include/hw/timer/i8254.h:54
  #9  0x00005555557d12f9 in vt8231_realize (d=0x5555563d9770, errp=0x7fffffffcc28) at hw/isa/vt82c686.c:704
  #10 0x00005555557e1340 in pci_qdev_realize (qdev=0x5555563d9770, errp=0x7fffffffcca0) at hw/pci/pci.c:2116
  #11 0x0000555555a06a84 in device_set_realized (obj=0x5555563d9770, value=true, errp=0x7fffffffcda8) at hw/core/qdev.c:761
  #12 0x0000555555a0ff9e in property_set_bool (obj=0x5555563d9770, v=0x5555563da090, name=0x555555cd7881 "realized", opaque=0x5555560acf80, errp=0x7fffffffcda8) at qom/object.c:2257
  #13 0x0000555555a0e098 in object_property_set (obj=0x5555563d9770, name=0x555555cd7881 "realized", v=0x5555563da090, errp=0x555555fc3fa0 <error_fatal>) at qom/object.c:1402
  #14 0x0000555555a12271 in object_property_set_qobject (obj=0x5555563d9770, name=0x555555cd7881 "realized", value=0x5555563cf0a0, errp=0x555555fc3fa0 <error_fatal>) at qom/qom-qobject.c:28
  #15 0x0000555555a0e3fb in object_property_set_bool (obj=0x5555563d9770, name=0x555555cd7881 "realized", value=true, errp=0x555555fc3fa0 <error_fatal>) at qom/object.c:1472
  #16 0x0000555555a05b15 in qdev_realize (dev=0x5555563d9770, bus=0x5555563d32b0, errp=0x555555fc3fa0 <error_fatal>) at hw/core/qdev.c:389
  #17 0x0000555555a05b42 in qdev_realize_and_unref (dev=0x5555563d9770, bus=0x5555563d32b0, errp=0x555555fc3fa0 <error_fatal>) at hw/core/qdev.c:396
  #18 0x00005555557e160f in pci_realize_and_unref (dev=0x5555563d9770, bus=0x5555563d32b0, errp=0x555555fc3fa0 <error_fatal>) at hw/pci/pci.c:2181
  #19 0x00005555557e165b in pci_create_simple_multifunction (bus=0x5555563d32b0, devfn=96, multifunction=true, name=0x555555c9b63b "vt8231-isa") at hw/pci/pci.c:2189
  #20 0x0000555555867730 in pegasos2_init (machine=0x5555560427a0) at hw/ppc/pegasos2.c:105

The "isa-pit" type (TYPE_I8254) is missing. Add it.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20210515173716.358295-12-philmd@redhat.com>
Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---
 hw/isa/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/isa/Kconfig b/hw/isa/Kconfig
index f99df0e20b1..e4db60ed580 100644
--- a/hw/isa/Kconfig
+++ b/hw/isa/Kconfig
@@ -50,6 +50,7 @@ config VT82C686
     select FDC_ISA
     select USB_UHCI
     select APM
+    select I8254
     select I8257
     select I8259
     select MC146818RTC
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 16/17] hw/ppc/Kconfig: Add dependency PEGASOS2 -> ATI_VGA
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (14 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 15/17] hw/isa/vt82c686: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-20 15:41 ` [PULL 17/17] hw/tricore: fix inclusion of tricore_testboard Philippe Mathieu-Daudé
  2021-07-21 10:01 ` [PULL 00/17] Kconfig patches for 2021-07-20 Peter Maydell
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel; +Cc: Bin Meng, Philippe Mathieu-Daudé, David Gibson

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

The ATI VGA device isn't a requisite for the Pegasos2 machine
because Linux only uses the serial console; see commit ba7e5ac18e7
("hw/ppc: Add emulation of Genesi/bPlan Pegasos II") for rationale.

Using the default devices we don't have any problem:

  $ qemu-system-ppc -M pegasos2
  qemu-system-ppc: standard VGA not available

But when trying to explicitly use the ATI device we get an error:

  $ qemu-system-ppc -M pegasos2 -vga none -bios pegasos2.rom -device ati-vga,romfile=
  qemu-system-ppc: -device ati-vga,romfile=: 'ati-vga' is not a valid device model name

Add it as an implicit Kconfig dependency.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20210515173716.358295-13-philmd@redhat.com>
Acked-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
---
 hw/ppc/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig
index 85b9c93f02e..400511c6b70 100644
--- a/hw/ppc/Kconfig
+++ b/hw/ppc/Kconfig
@@ -79,6 +79,7 @@ config PEGASOS2
     select VOF
 # This should come with VT82C686
     select ACPI_X86
+    imply ATI_VGA
 
 config PREP
     bool
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PULL 17/17] hw/tricore: fix inclusion of tricore_testboard
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (15 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 16/17] hw/ppc/Kconfig: Add dependency PEGASOS2 -> ATI_VGA Philippe Mathieu-Daudé
@ 2021-07-20 15:41 ` Philippe Mathieu-Daudé
  2021-07-21 10:01 ` [PULL 00/17] Kconfig patches for 2021-07-20 Peter Maydell
  17 siblings, 0 replies; 20+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-20 15:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, Richard Henderson, Alex Bennée,
	Philippe Mathieu-Daudé, Philippe Mathieu-Daudé

From: Alex Bennée <alex.bennee@linaro.org>

Because commit f4063f9c319e39 ("meson: Introduce target-specific
Kconfig") ended being merged after commit 582079c9d27fc8cfff9f49
("hw/tricore: Add testdevice for tests in tests/tcg/"), we
inadvertently added a symbol clash causing the build not to include
the testboard needed for check-tcg.

Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20210720114057.32053-2-alex.bennee@linaro.org>
[PMD: Updated description mentioning commits merged]
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
 configs/devices/tricore-softmmu/default.mak | 1 +
 hw/tricore/Kconfig                          | 3 +--
 hw/tricore/meson.build                      | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/configs/devices/tricore-softmmu/default.mak b/configs/devices/tricore-softmmu/default.mak
index 5cc91cebce7..cb8fc286eb2 100644
--- a/configs/devices/tricore-softmmu/default.mak
+++ b/configs/devices/tricore-softmmu/default.mak
@@ -1 +1,2 @@
+CONFIG_TRICORE_TESTBOARD=y
 CONFIG_TRIBOARD=y
diff --git a/hw/tricore/Kconfig b/hw/tricore/Kconfig
index 506e6183c17..33c1e852c33 100644
--- a/hw/tricore/Kconfig
+++ b/hw/tricore/Kconfig
@@ -1,9 +1,8 @@
-config TRICORE
+config TRICORE_TESTBOARD
     bool
 
 config TRIBOARD
     bool
-    select TRICORE
     select TC27X_SOC
 
 config TC27X_SOC
diff --git a/hw/tricore/meson.build b/hw/tricore/meson.build
index 47e36bb0778..7e3585daf8f 100644
--- a/hw/tricore/meson.build
+++ b/hw/tricore/meson.build
@@ -1,6 +1,6 @@
 tricore_ss = ss.source_set()
-tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testboard.c'))
-tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testdevice.c'))
+tricore_ss.add(when: 'CONFIG_TRICORE_TESTBOARD', if_true: files('tricore_testboard.c'))
+tricore_ss.add(when: 'CONFIG_TRICORE_TESTBOARD', if_true: files('tricore_testdevice.c'))
 tricore_ss.add(when: 'CONFIG_TRIBOARD', if_true: files('triboard.c'))
 tricore_ss.add(when: 'CONFIG_TC27X_SOC', if_true: files('tc27x_soc.c'))
 
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259
  2021-07-20 15:41 ` [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259 Philippe Mathieu-Daudé
@ 2021-07-20 18:02   ` BALATON Zoltan
  0 siblings, 0 replies; 20+ messages in thread
From: BALATON Zoltan @ 2021-07-20 18:02 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: Bin Meng, qemu-devel, David Gibson, Philippe Mathieu-Daudé

[-- Attachment #1: Type: text/plain, Size: 1631 bytes --]

On Tue, 20 Jul 2021, Philippe Mathieu-Daudé wrote:
> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>
> Looking at the MV64340 model source, there is a dependency on the

Small typo, it's MV64361 but maybe not a big problem if it's too late to 
fix up the commit message. Sorry I did not notice earlier.

Regards,
BALATON Zoltan

> 8259 interrupt controller:
>
>  523     case MV64340_PCI_1_INTERRUPT_ACKNOWLEDGE_VIRTUAL_REG:
>  524         /* FIXME: Should this be sent via the PCI bus somehow? */
>  525         if (s->gpp_int_level && (s->gpp_value & BIT(31))) {
>  526             ret = pic_read_irq(isa_pic);
>  527         }
>  528         break;
>
> Add it to Kconfig to avoid the following build failure:
>
>  /usr/bin/ld: libcommon.fa.p/hw_pci-host_mv64361.c.o: in function `mv64361_read':
>  hw/pci-host/mv64361.c:526: undefined reference to `isa_pic'
>  /usr/bin/ld: hw/pci-host/mv64361.c:526: undefined reference to `pic_read_irq'
>
> Fixes: dcdf98a9015 ("hw/pci-host: Add emulation of Marvell MV64361 PPC system controller")
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu>
> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
> Acked-by: David Gibson <david@gibson.dropbear.id.au>
> Message-Id: <20210515173716.358295-10-philmd@redhat.com>
> ---
> hw/pci-host/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig
> index 84494400b86..2b5f7d58cc5 100644
> --- a/hw/pci-host/Kconfig
> +++ b/hw/pci-host/Kconfig
> @@ -76,3 +76,4 @@ config SH_PCI
> config MV64361
>     bool
>     select PCI
> +    select I8259
>

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PULL 00/17] Kconfig patches for 2021-07-20
  2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
                   ` (16 preceding siblings ...)
  2021-07-20 15:41 ` [PULL 17/17] hw/tricore: fix inclusion of tricore_testboard Philippe Mathieu-Daudé
@ 2021-07-21 10:01 ` Peter Maydell
  17 siblings, 0 replies; 20+ messages in thread
From: Peter Maydell @ 2021-07-21 10:01 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé; +Cc: QEMU Developers

On Tue, 20 Jul 2021 at 16:43, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
> The following changes since commit 7457b407edd6e8555e4b46488aab2f13959fccf8:
>
>   Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-07-19' into staging (2021-07-19 11:34:08 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/philmd/qemu.git tags/kconfig-20210720
>
> for you to fetch changes up to 3fac1da88f95f5338bb79420682427ab06adf99e:
>
>   hw/tricore: fix inclusion of tricore_testboard (2021-07-20 17:17:07 +0200)
>
> ----------------------------------------------------------------
> Kconfig patches queue
>
> Various Kconfig patches collected during v6.1 development cycle.
>
> ----------------------------------------------------------------


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/6.1
for any user-visible changes.

-- PMM


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2021-07-21 10:12 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-20 15:41 [PULL 00/17] Kconfig patches for 2021-07-20 Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 01/17] hw/mips: Add dependency MIPS_CPS -> MIPS_ITU Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 02/17] hw/mips: Express dependencies of the Boston machine with Kconfig Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 03/17] hw/acpi: Do not restrict ACPI core routines to x86 architecture Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 04/17] hw/acpi/Kconfig: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 05/17] hw/i386/Kconfig: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 06/17] hw/ide/Kconfig: Add missing dependency PCI -> IDE_QDEV Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 07/17] hw/arm/Kconfig: Add missing dependency NPCM7XX -> SMBUS Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 08/17] hw/arm/Kconfig: Remove unused DS1338 symbol from i.MX25 PDK Board Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 09/17] hw/arm/Kconfig: Add missing SDHCI symbol to FSL_IMX25 Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 10/17] hw/riscv/Kconfig: Add missing dependency MICROCHIP_PFSOC -> SERIAL Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 11/17] hw/riscv/Kconfig: Restrict NUMA to Virt & Spike machines Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 12/17] hw/ppc/Kconfig: Add missing dependency E500 -> DS1338 RTC Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 13/17] hw/pci-host/Kconfig: Add missing dependency MV64361 -> I8259 Philippe Mathieu-Daudé
2021-07-20 18:02   ` BALATON Zoltan
2021-07-20 15:41 ` [PULL 14/17] hw/isa/vt82c686: Add missing Kconfig dependencies (build error) Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 15/17] hw/isa/vt82c686: Add missing Kconfig dependency (runtime error) Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 16/17] hw/ppc/Kconfig: Add dependency PEGASOS2 -> ATI_VGA Philippe Mathieu-Daudé
2021-07-20 15:41 ` [PULL 17/17] hw/tricore: fix inclusion of tricore_testboard Philippe Mathieu-Daudé
2021-07-21 10:01 ` [PULL 00/17] Kconfig patches for 2021-07-20 Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.