qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org
Cc: qemu-arm@nongnu.org
Subject: [Qemu-devel] [PULL 02/28] hw/ide/ahci: Add a Kconfig switch for the AHCI-ICH9 device
Date: Sun,  5 May 2019 15:56:48 +0200	[thread overview]
Message-ID: <20190505135714.11277-3-thuth@redhat.com> (raw)
In-Reply-To: <20190505135714.11277-1-thuth@redhat.com>

Some of our machines (like the ARM cubieboard) use CONFIG_AHCI for an AHCI
sysbus device, but do not use CONFIG_PCI since they do not feature a PCI
bus. With CONFIG_AHCI but without CONFIG_PCI, currently linking fails:

    ../hw/ide/ich.o: In function `pci_ich9_ahci_realize':
    hw/ide/ich.c:124: undefined reference to `pci_allocate_irq'
    hw/ide/ich.c:126: undefined reference to `pci_register_bar'
    hw/ide/ich.c:128: undefined reference to `pci_register_bar'
    hw/ide/ich.c:131: undefined reference to `pci_add_capability'
    hw/ide/ich.c:147: undefined reference to `msi_init'
    ../hw/ide/ich.o: In function `pci_ich9_uninit':
    hw/ide/ich.c:158: undefined reference to `msi_uninit'
    ../hw/ide/ich.o:(.data.rel+0x50): undefined reference to `vmstate_pci_device'

We must only compile ich.c if CONFIG_PCI is available, too, so introduce a
new config switch for this device.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Acked-by: John Snow <jsnow@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/ide/Kconfig       | 6 +++++-
 hw/ide/Makefile.objs | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
index ab47b6a7a3..5d9106b1ac 100644
--- a/hw/ide/Kconfig
+++ b/hw/ide/Kconfig
@@ -43,10 +43,14 @@ config MICRODRIVE
     select IDE_QDEV
 
 config AHCI
+    bool
+    select IDE_QDEV
+
+config AHCI_ICH9
     bool
     default y if PCI_DEVICES
     depends on PCI
-    select IDE_QDEV
+    select AHCI
 
 config IDE_SII3112
     bool
diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
index a142add90e..faf04e0209 100644
--- a/hw/ide/Makefile.objs
+++ b/hw/ide/Makefile.objs
@@ -9,6 +9,6 @@ common-obj-$(CONFIG_IDE_MMIO) += mmio.o
 common-obj-$(CONFIG_IDE_VIA) += via.o
 common-obj-$(CONFIG_MICRODRIVE) += microdrive.o
 common-obj-$(CONFIG_AHCI) += ahci.o
-common-obj-$(CONFIG_AHCI) += ich.o
+common-obj-$(CONFIG_AHCI_ICH9) += ich.o
 common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
 common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
-- 
2.21.0

  parent reply	other threads:[~2019-05-05 13:57 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-05 13:56 [Qemu-devel] [PULL 00/28] Kconfig for Arm machines Thomas Huth
2019-05-05 13:56 ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 01/28] hw/pci/pci-stub: Add msi_enabled() and msi_notify() to the pci stubs Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` Thomas Huth [this message]
2019-05-05 13:56   ` [Qemu-devel] [PULL 02/28] hw/ide/ahci: Add a Kconfig switch for the AHCI-ICH9 device Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 03/28] hw/arm: Express dependencies of the exynos machines with Kconfig Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 04/28] hw/arm: Express dependencies of the highbank " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2020-09-30 15:38   ` Philippe Mathieu-Daudé
2020-09-30 16:10     ` Thomas Huth
2020-09-30 16:17       ` Philippe Mathieu-Daudé
2019-05-05 13:56 ` [Qemu-devel] [PULL 05/28] hw/arm: Express dependencies of integratorcp " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 06/28] hw/arm: Express dependencies of the fsl-imx31 machine " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 07/28] hw/arm: Express dependencies of musicpal " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 08/28] hw/arm: Express dependencies of the OMAP machines " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 09/28] hw/arm: Express dependencies of stellaris " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 10/28] hw/arm: Express dependencies of realview, versatile and vexpress " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 11/28] hw/arm: Express dependencies of the PXA2xx machines " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 12/28] hw/arm: Express dependencies of xilinx-zynq " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:56 ` [Qemu-devel] [PULL 13/28] hw/arm: Express dependencies of collie " Thomas Huth
2019-05-05 13:56   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 14/28] hw/arm: Express dependencies of the aspeed boards " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 15/28] hw/arm: Express dependencies of the virt machine " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 16/28] hw/arm: Express dependencies of netduino / stm32f2xx " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 17/28] hw/arm: Express dependencies of allwinner / cubieboard " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 18/28] hw/arm: Express dependencies of the MPS2 boards " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 19/28] hw/arm: Express dependencies of the raspi machines " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 20/28] hw/arm: Express dependencies of canon-a1100 " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 21/28] hw/arm: Express dependencies of sabrelite " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 22/28] hw/arm: Express dependencies of the MSF2 / EMCRAFT_SF2 machine " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 23/28] hw/arm: Express dependencies of the remaining IMX boards " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 24/28] hw/arm: Express dependencies of the microbit / nrf51 machine " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 25/28] hw/arm: Express dependencies of the ZynqMP zcu102 " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 26/28] hw/arm: Express dependencies of the xlnx-versal-virt " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 27/28] hw/arm: Express dependencies of the musca machines " Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-05 13:57 ` [Qemu-devel] [PULL 28/28] hw/arm: Remove hard-enablement of the remaining PCI devices Thomas Huth
2019-05-05 13:57   ` Thomas Huth
2019-05-07 11:01 ` [Qemu-devel] [PULL 00/28] Kconfig for Arm machines Peter Maydell
2019-05-07 11:52   ` Philippe Mathieu-Daudé
2019-05-07 12:20     ` Thomas Huth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190505135714.11277-3-thuth@redhat.com \
    --to=thuth@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).