aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2018-01-29 13:56:07 +0100
committerCornelia Huck <cohuck@redhat.com>2018-02-09 09:37:13 +0100
commite2ac12f014ef1524e51d76bc0a282239d4f138f3 (patch)
tree25963ea5d0a5a2b9d8131913c531048cfa178c47
parentce204cba74b96867bb34a3a5d5eb5fc3893e3c55 (diff)
downloadqemu-e2ac12f014ef1524e51d76bc0a282239d4f138f3.zip
qemu-e2ac12f014ef1524e51d76bc0a282239d4f138f3.tar.gz
qemu-e2ac12f014ef1524e51d76bc0a282239d4f138f3.tar.bz2
s390x/flic: simplify flic initialization
This makes it clearer, which device is used for which accelerator. Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20180129125623.21729-3-david@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
-rw-r--r--hw/intc/s390_flic.c7
-rw-r--r--hw/intc/s390_flic_kvm.c12
-rw-r--r--include/hw/s390x/s390_flic.h9
3 files changed, 5 insertions, 23 deletions
diff --git a/hw/intc/s390_flic.c b/hw/intc/s390_flic.c
index 6eaf178..fc244fe 100644
--- a/hw/intc/s390_flic.c
+++ b/hw/intc/s390_flic.c
@@ -40,8 +40,11 @@ void s390_flic_init(void)
{
DeviceState *dev;
- dev = s390_flic_kvm_create();
- if (!dev) {
+ if (kvm_enabled()) {
+ dev = qdev_create(NULL, TYPE_KVM_S390_FLIC);
+ object_property_add_child(qdev_get_machine(), TYPE_KVM_S390_FLIC,
+ OBJECT(dev), NULL);
+ } else {
dev = qdev_create(NULL, TYPE_QEMU_S390_FLIC);
object_property_add_child(qdev_get_machine(), TYPE_QEMU_S390_FLIC,
OBJECT(dev), NULL);
diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c
index d208cb8..0cb5fea 100644
--- a/hw/intc/s390_flic_kvm.c
+++ b/hw/intc/s390_flic_kvm.c
@@ -35,18 +35,6 @@ typedef struct KVMS390FLICState {
bool clear_io_supported;
} KVMS390FLICState;
-DeviceState *s390_flic_kvm_create(void)
-{
- DeviceState *dev = NULL;
-
- if (kvm_enabled()) {
- dev = qdev_create(NULL, TYPE_KVM_S390_FLIC);
- object_property_add_child(qdev_get_machine(), TYPE_KVM_S390_FLIC,
- OBJECT(dev), NULL);
- }
- return dev;
-}
-
/**
* flic_get_all_irqs - store all pending irqs in buffer
* @buf: pointer to buffer which is passed to kernel
diff --git a/include/hw/s390x/s390_flic.h b/include/hw/s390x/s390_flic.h
index 7aab6ef..5b00e93 100644
--- a/include/hw/s390x/s390_flic.h
+++ b/include/hw/s390x/s390_flic.h
@@ -91,13 +91,4 @@ void s390_flic_init(void);
S390FLICState *s390_get_flic(void);
bool ais_needed(void *opaque);
-#ifdef CONFIG_KVM
-DeviceState *s390_flic_kvm_create(void);
-#else
-static inline DeviceState *s390_flic_kvm_create(void)
-{
- return NULL;
-}
-#endif
-
#endif /* HW_S390_FLIC_H */