* [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
@ 2019-02-19 15:55 Thomas Huth
2019-02-19 18:18 ` Paolo Bonzini
2019-02-20 6:37 ` Wei Yang
0 siblings, 2 replies; 6+ messages in thread
From: Thomas Huth @ 2019-02-19 15:55 UTC (permalink / raw)
To: John Snow, qemu-block; +Cc: qemu-devel, qemu-trivial, yang.zhong, pbonzini
With the upcoming Kconfig-like build system, it will be easy to
build also version of QEMU that only contain a single machine. Some
of these 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. In this case 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'
Thus we must only compile ich.c if CONFIG_PCI is also set.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/ide/Makefile.objs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
index a142add..dfe53af 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-$(call land,$(CONFIG_AHCI),$(CONFIG_PCI)) += ich.o
common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
--
1.8.3.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
2019-02-19 15:55 [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set Thomas Huth
@ 2019-02-19 18:18 ` Paolo Bonzini
2019-02-20 6:16 ` Thomas Huth
2019-02-20 6:37 ` Wei Yang
1 sibling, 1 reply; 6+ messages in thread
From: Paolo Bonzini @ 2019-02-19 18:18 UTC (permalink / raw)
To: Thomas Huth, John Snow, qemu-block; +Cc: qemu-devel, qemu-trivial, yang.zhong
On 19/02/19 16:55, Thomas Huth wrote:
> With the upcoming Kconfig-like build system, it will be easy to
> build also version of QEMU that only contain a single machine. Some
> of these 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. In this case 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'
>
> Thus we must only compile ich.c if CONFIG_PCI is also set.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/ide/Makefile.objs | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
> index a142add..dfe53af 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-$(call land,$(CONFIG_AHCI),$(CONFIG_PCI)) += ich.o
> common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
> common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
What about defining CONFIG_AHCI_ICH instead? It can wait until after
Kconfig is merged.
Paolo
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
2019-02-19 18:18 ` Paolo Bonzini
@ 2019-02-20 6:16 ` Thomas Huth
2019-02-20 10:23 ` Paolo Bonzini
0 siblings, 1 reply; 6+ messages in thread
From: Thomas Huth @ 2019-02-20 6:16 UTC (permalink / raw)
To: Paolo Bonzini, John Snow, qemu-block; +Cc: qemu-devel, qemu-trivial, yang.zhong
On 19/02/2019 19.18, Paolo Bonzini wrote:
> On 19/02/19 16:55, Thomas Huth wrote:
>> With the upcoming Kconfig-like build system, it will be easy to
>> build also version of QEMU that only contain a single machine. Some
>> of these 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. In this case 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'
>>
>> Thus we must only compile ich.c if CONFIG_PCI is also set.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> hw/ide/Makefile.objs | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
>> index a142add..dfe53af 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-$(call land,$(CONFIG_AHCI),$(CONFIG_PCI)) += ich.o
>> common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
>> common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
>
> What about defining CONFIG_AHCI_ICH instead? It can wait until after
> Kconfig is merged.
Yeah, that's the ultimate solution once we've got Kconfig merged. I
thought this might be a nice intermediate step, but if we want to avoid
code churn, this can indeed wait.
By the way, what's the current status of the Kconfig series? Will there
be another respin soon? ... the next softfreeze is not that far away ...
Thomas
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
2019-02-19 15:55 [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set Thomas Huth
2019-02-19 18:18 ` Paolo Bonzini
@ 2019-02-20 6:37 ` Wei Yang
2019-02-20 6:46 ` Thomas Huth
1 sibling, 1 reply; 6+ messages in thread
From: Wei Yang @ 2019-02-20 6:37 UTC (permalink / raw)
To: Thomas Huth
Cc: John Snow, qemu-block, qemu-trivial, yang.zhong, qemu-devel,
pbonzini
On Tue, Feb 19, 2019 at 04:55:57PM +0100, Thomas Huth wrote:
>With the upcoming Kconfig-like build system, it will be easy to
>build also version of QEMU that only contain a single machine. Some
Sorry for my poor English.
What is also version?
>of these 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. In this case 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'
>
>Thus we must only compile ich.c if CONFIG_PCI is also set.
>
>Signed-off-by: Thomas Huth <thuth@redhat.com>
>---
> hw/ide/Makefile.objs | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
>index a142add..dfe53af 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-$(call land,$(CONFIG_AHCI),$(CONFIG_PCI)) += ich.o
> common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
> common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
>--
>1.8.3.1
>
--
Wei Yang
Help you, Help me
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
2019-02-20 6:37 ` Wei Yang
@ 2019-02-20 6:46 ` Thomas Huth
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Huth @ 2019-02-20 6:46 UTC (permalink / raw)
To: Wei Yang
Cc: John Snow, qemu-block, qemu-trivial, yang.zhong, qemu-devel,
pbonzini
On 20/02/2019 07.37, Wei Yang wrote:
> On Tue, Feb 19, 2019 at 04:55:57PM +0100, Thomas Huth wrote:
>> With the upcoming Kconfig-like build system, it will be easy to
>> build also version of QEMU that only contain a single machine. Some
>
> Sorry for my poor English.
>
> What is also version?
I mean "it will be easy to build a version of QEMU, too, that ...".
Maybe I should have rather written "it will be easy to build a binary of
QEMU, too, that ...".
Thomas
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set
2019-02-20 6:16 ` Thomas Huth
@ 2019-02-20 10:23 ` Paolo Bonzini
0 siblings, 0 replies; 6+ messages in thread
From: Paolo Bonzini @ 2019-02-20 10:23 UTC (permalink / raw)
To: Thomas Huth, John Snow, qemu-block; +Cc: qemu-devel, qemu-trivial, yang.zhong
On 20/02/19 07:16, Thomas Huth wrote:
> By the way, what's the current status of the Kconfig series? Will there
> be another respin soon? ... the next softfreeze is not that far away ...
Waiting on the vhost series; I'll talk to Peter about merging it without
ARM and handling ARM later.
Paolo
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-02-20 10:24 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-19 15:55 [Qemu-devel] [PATCH] hw/ide/ich: Compile ich.c only if CONFIG_PCI is also set Thomas Huth
2019-02-19 18:18 ` Paolo Bonzini
2019-02-20 6:16 ` Thomas Huth
2019-02-20 10:23 ` Paolo Bonzini
2019-02-20 6:37 ` Wei Yang
2019-02-20 6:46 ` Thomas Huth
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).