diff options
author | Thomas Huth <thuth@redhat.com> | 2019-02-22 15:48:11 +0100 |
---|---|---|
committer | Thomas Huth <thuth@redhat.com> | 2019-05-13 09:36:31 +0200 |
commit | 9a585f3ea630d0d1b9a2fc4450a3a2a0326546f9 (patch) | |
tree | d2961ee65e2b6ff0bf356629d9f82dce10450c62 | |
parent | bb768f71eb504ebce4b12bcf61675a0ad9a81fdf (diff) | |
download | qemu-9a585f3ea630d0d1b9a2fc4450a3a2a0326546f9.zip qemu-9a585f3ea630d0d1b9a2fc4450a3a2a0326546f9.tar.gz qemu-9a585f3ea630d0d1b9a2fc4450a3a2a0326546f9.tar.bz2 |
hw/ide/ahci: Add a Kconfig switch for the AHCI-ICH9 device
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>
-rw-r--r-- | hw/i386/Kconfig | 2 | ||||
-rw-r--r-- | hw/ide/Kconfig | 6 | ||||
-rw-r--r-- | hw/ide/Makefile.objs | 2 |
3 files changed, 7 insertions, 3 deletions
diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig index a6aed7c..9817888 100644 --- a/hw/i386/Kconfig +++ b/hw/i386/Kconfig @@ -80,7 +80,7 @@ config Q35 select PC_ACPI select PCI_EXPRESS_Q35 select LPC_ICH9 - select AHCI + select AHCI_ICH9 select DIMM select SMBIOS select VMPORT diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig index ab47b6a..5d9106b 100644 --- a/hw/ide/Kconfig +++ b/hw/ide/Kconfig @@ -44,9 +44,13 @@ config MICRODRIVE 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 a142add..faf04e0 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 |