diff mbox

[PATCHv2,3/4] Allow ISA bus to be configured out

Message ID 1435816427-9426-4-git-send-email-david@gibson.dropbear.id.au
State New
Headers show

Commit Message

David Gibson July 2, 2015, 5:53 a.m. UTC
Currently, the code to handle the legacy ISA bus is always included in
qemu.  However there are lots of platforms that don't include ISA legacy
devies, and quite a few that have never used ISA legacy devices at all.

This patch allows the ISA bus code to be disabled in the configuration for
platforms where it doesn't make sense.

For now, the default configs are adjusted to include ISA on all platforms
including PCI: anything with PCI can at least in principle add an i82378
PCI->ISA bridge.  Also, CONFIG_IDE_CORE which is already in pci.mak
requires ISA support.

We also explicitly enable ISA on some other non-PCI platforms which include
ISA devices.  We may want to pare this down in future.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
 default-configs/moxie-softmmu.mak     | 1 +
 default-configs/pci.mak               | 1 +
 default-configs/sparc-softmmu.mak     | 1 +
 default-configs/unicore32-softmmu.mak | 1 +
 hw/isa/Makefile.objs                  | 2 +-
 5 files changed, 5 insertions(+), 1 deletion(-)

Comments

Michael S. Tsirkin July 2, 2015, 8:45 a.m. UTC | #1
On Thu, Jul 02, 2015 at 03:53:46PM +1000, David Gibson wrote:
> Currently, the code to handle the legacy ISA bus is always included in
> qemu.  However there are lots of platforms that don't include ISA legacy
> devies, and quite a few that have never used ISA legacy devices at all.
> 
> This patch allows the ISA bus code to be disabled in the configuration for
> platforms where it doesn't make sense.
> 
> For now, the default configs are adjusted to include ISA on all platforms
> including PCI: anything with PCI can at least in principle add an i82378
> PCI->ISA bridge.

That would be a config bug, won't it?
Don't enable CONFIG_I82378 unless you want ISA.


>  Also, CONFIG_IDE_CORE which is already in pci.mak
> requires ISA support.

Ugh that's ugly. We really need to express dependencies between config
options, long term.
Until we support this, how about a comment to document why is ISA pulled in by
pci.mak?

> 
> We also explicitly enable ISA on some other non-PCI platforms which include
> ISA devices.  We may want to pare this down in future.
> 
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>

Only a comment requested so

Acked-by: Michael S. Tsirkin <mst@redhat.com>


> ---
>  default-configs/moxie-softmmu.mak     | 1 +
>  default-configs/pci.mak               | 1 +
>  default-configs/sparc-softmmu.mak     | 1 +
>  default-configs/unicore32-softmmu.mak | 1 +
>  hw/isa/Makefile.objs                  | 2 +-
>  5 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/default-configs/moxie-softmmu.mak b/default-configs/moxie-softmmu.mak
> index 1a95476..3886275 100644
> --- a/default-configs/moxie-softmmu.mak
> +++ b/default-configs/moxie-softmmu.mak
> @@ -1,5 +1,6 @@
>  # Default configuration for moxie-softmmu
>  
> +CONFIG_ISA_BUS=y
>  CONFIG_MC146818RTC=y
>  CONFIG_SERIAL=y
>  CONFIG_VGA=y
> diff --git a/default-configs/pci.mak b/default-configs/pci.mak
> index 7e10903..9f2b98c 100644
> --- a/default-configs/pci.mak
> +++ b/default-configs/pci.mak
> @@ -1,4 +1,5 @@
>  CONFIG_PCI=y
> +CONFIG_ISA_BUS=y
>  CONFIG_VIRTIO_PCI=y
>  CONFIG_VIRTIO=y
>  CONFIG_USB_UHCI=y
> diff --git a/default-configs/sparc-softmmu.mak b/default-configs/sparc-softmmu.mak
> index ab796b3..004b0f4 100644
> --- a/default-configs/sparc-softmmu.mak
> +++ b/default-configs/sparc-softmmu.mak
> @@ -1,5 +1,6 @@
>  # Default configuration for sparc-softmmu
>  
> +CONFIG_ISA_BUS=y
>  CONFIG_ECC=y
>  CONFIG_ESP=y
>  CONFIG_ESCC=y
> diff --git a/default-configs/unicore32-softmmu.mak b/default-configs/unicore32-softmmu.mak
> index de38577..5f6c4a8 100644
> --- a/default-configs/unicore32-softmmu.mak
> +++ b/default-configs/unicore32-softmmu.mak
> @@ -1,4 +1,5 @@
>  # Default configuration for unicore32-softmmu
> +CONFIG_ISA_BUS=y
>  CONFIG_PUV3=y
>  CONFIG_PTIMER=y
>  CONFIG_PCKBD=y
> diff --git a/hw/isa/Makefile.objs b/hw/isa/Makefile.objs
> index 9164556..fb37c55 100644
> --- a/hw/isa/Makefile.objs
> +++ b/hw/isa/Makefile.objs
> @@ -1,4 +1,4 @@
> -common-obj-y += isa-bus.o
> +common-obj-$(CONFIG_ISA_BUS) += isa-bus.o
>  common-obj-$(CONFIG_APM) += apm.o
>  common-obj-$(CONFIG_I82378) += i82378.o
>  common-obj-$(CONFIG_PC87312) += pc87312.o
> -- 
> 2.4.3
diff mbox

Patch

diff --git a/default-configs/moxie-softmmu.mak b/default-configs/moxie-softmmu.mak
index 1a95476..3886275 100644
--- a/default-configs/moxie-softmmu.mak
+++ b/default-configs/moxie-softmmu.mak
@@ -1,5 +1,6 @@ 
 # Default configuration for moxie-softmmu
 
+CONFIG_ISA_BUS=y
 CONFIG_MC146818RTC=y
 CONFIG_SERIAL=y
 CONFIG_VGA=y
diff --git a/default-configs/pci.mak b/default-configs/pci.mak
index 7e10903..9f2b98c 100644
--- a/default-configs/pci.mak
+++ b/default-configs/pci.mak
@@ -1,4 +1,5 @@ 
 CONFIG_PCI=y
+CONFIG_ISA_BUS=y
 CONFIG_VIRTIO_PCI=y
 CONFIG_VIRTIO=y
 CONFIG_USB_UHCI=y
diff --git a/default-configs/sparc-softmmu.mak b/default-configs/sparc-softmmu.mak
index ab796b3..004b0f4 100644
--- a/default-configs/sparc-softmmu.mak
+++ b/default-configs/sparc-softmmu.mak
@@ -1,5 +1,6 @@ 
 # Default configuration for sparc-softmmu
 
+CONFIG_ISA_BUS=y
 CONFIG_ECC=y
 CONFIG_ESP=y
 CONFIG_ESCC=y
diff --git a/default-configs/unicore32-softmmu.mak b/default-configs/unicore32-softmmu.mak
index de38577..5f6c4a8 100644
--- a/default-configs/unicore32-softmmu.mak
+++ b/default-configs/unicore32-softmmu.mak
@@ -1,4 +1,5 @@ 
 # Default configuration for unicore32-softmmu
+CONFIG_ISA_BUS=y
 CONFIG_PUV3=y
 CONFIG_PTIMER=y
 CONFIG_PCKBD=y
diff --git a/hw/isa/Makefile.objs b/hw/isa/Makefile.objs
index 9164556..fb37c55 100644
--- a/hw/isa/Makefile.objs
+++ b/hw/isa/Makefile.objs
@@ -1,4 +1,4 @@ 
-common-obj-y += isa-bus.o
+common-obj-$(CONFIG_ISA_BUS) += isa-bus.o
 common-obj-$(CONFIG_APM) += apm.o
 common-obj-$(CONFIG_I82378) += i82378.o
 common-obj-$(CONFIG_PC87312) += pc87312.o