Skip to content

Commit

Permalink
s390x: express dependencies with Kconfig
Browse files Browse the repository at this point in the history
Instead of hard-coding all config switches in the config file
default-configs/s390x-softmmu.mak, let's use the new Kconfig files
to express the necessary dependencies: The S390_CCW_VIRTIO config switch
for the "s390-ccw-virtio" machine now selects all non-optional devices.

And since we already have the VIRTIO_PCI and VIRTIO_MMIO config switches
for the other two virtio transports, this patch also introduces a new
config switch VIRTIO_CCW for the third, s390x-specific virtio transport,
so that all three virtio transports are now handled in the same way.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
  • Loading branch information
huth authored and bonzini committed Mar 7, 2019
1 parent 82a230d commit 9e5c205
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 9 deletions.
20 changes: 12 additions & 8 deletions default-configs/s390x-softmmu.mak
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
CONFIG_PCI=y
CONFIG_VIRTIO_PCI=y
CONFIG_SCLPCONSOLE=y
CONFIG_TERMINAL3270=y
CONFIG_S390_FLIC=y
CONFIG_WDT_DIAG288=y
# Default configuration for s390x-softmmu

# Uncomment the following lines to disable these optional devices:
#
#CONFIG_TERMINAL3270=n
#CONFIG_VFIO_AP=n
#CONFIG_VFIO_CCW=n
#CONFIG_VIRTIO_PCI=n
#CONFIG_WDT_DIAG288=n

# Boards:
#
CONFIG_S390_CCW_VIRTIO=y
CONFIG_VFIO_CCW=y
CONFIG_VFIO_AP=y
9 changes: 9 additions & 0 deletions hw/s390x/Kconfig
Original file line number Diff line number Diff line change
@@ -1,2 +1,11 @@
config S390_CCW_VIRTIO
bool
imply VIRTIO_PCI
imply TERMINAL3270
imply VFIO_AP
imply VFIO_CCW
imply WDT_DIAG288
select PCI
select S390_FLIC
select SCLPCONSOLE
select VIRTIO_CCW
4 changes: 3 additions & 1 deletion hw/s390x/Makefile.objs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ obj-y += sclpcpu.o
obj-y += ipl.o
obj-y += css.o
obj-$(CONFIG_S390_CCW_VIRTIO) += s390-virtio-ccw.o
obj-y += 3270-ccw.o
obj-$(CONFIG_TERMINAL3270) += 3270-ccw.o
ifeq ($(CONFIG_VIRTIO_CCW),y)
obj-y += virtio-ccw.o
obj-$(CONFIG_VIRTIO_SERIAL) += virtio-ccw-serial.o
obj-$(CONFIG_VIRTIO_BALLOON) += virtio-ccw-balloon.o
Expand All @@ -19,6 +20,7 @@ obj-$(CONFIG_VIRTIO_NET) += virtio-ccw-net.o
obj-$(CONFIG_VIRTIO_BLK) += virtio-ccw-blk.o
obj-$(call land,$(CONFIG_VIRTIO_9P),$(CONFIG_VIRTFS)) += virtio-ccw-9p.o
obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock-ccw.o
endif
obj-y += css-bridge.o
obj-y += ccw-device.o
obj-y += s390-pci-bus.o s390-pci-inst.o
Expand Down
4 changes: 4 additions & 0 deletions hw/virtio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ config VIRTIO_MMIO
bool
select VIRTIO

config VIRTIO_CCW
bool
select VIRTIO

config VIRTIO_BALLOON
bool
default y
Expand Down

0 comments on commit 9e5c205

Please sign in to comment.