[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 4/9] s390x: chsc nt2 events are pci-only
From: |
Cornelia Huck |
Subject: |
[Qemu-devel] [PATCH v5 4/9] s390x: chsc nt2 events are pci-only |
Date: |
Wed, 23 Aug 2017 17:54:53 +0200 |
The nt2 event class is pci-only - don't look for events if pci is
not in the active cpu model.
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
---
hw/s390x/s390-pci-bus.c | 4 ++--
hw/s390x/s390-pci-bus.h | 4 ++--
hw/s390x/s390-pci-stub.c | 4 ++--
target/s390x/ioinst.c | 16 ++++++++++++++++
4 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
index 61cfd2138f..c57f6ebae0 100644
--- a/hw/s390x/s390-pci-bus.c
+++ b/hw/s390x/s390-pci-bus.c
@@ -47,7 +47,7 @@ S390pciState *s390_get_phb(void)
return phb;
}
-int chsc_sei_nt2_get_event(void *res)
+int pci_chsc_sei_nt2_get_event(void *res)
{
ChscSeiNt2Res *nt2_res = (ChscSeiNt2Res *)res;
PciCcdfAvail *accdf;
@@ -87,7 +87,7 @@ int chsc_sei_nt2_get_event(void *res)
return rc;
}
-int chsc_sei_nt2_have_event(void)
+int pci_chsc_sei_nt2_have_event(void)
{
S390pciState *s = s390_get_phb();
diff --git a/hw/s390x/s390-pci-bus.h b/hw/s390x/s390-pci-bus.h
index 67af2c12ff..5df6292509 100644
--- a/hw/s390x/s390-pci-bus.h
+++ b/hw/s390x/s390-pci-bus.h
@@ -319,8 +319,8 @@ typedef struct S390pciState {
} S390pciState;
S390pciState *s390_get_phb(void);
-int chsc_sei_nt2_get_event(void *res);
-int chsc_sei_nt2_have_event(void);
+int pci_chsc_sei_nt2_get_event(void *res);
+int pci_chsc_sei_nt2_have_event(void);
void s390_pci_sclp_configure(SCCB *sccb);
void s390_pci_sclp_deconfigure(SCCB *sccb);
void s390_pci_iommu_enable(S390PCIIOMMU *iommu);
diff --git a/hw/s390x/s390-pci-stub.c b/hw/s390x/s390-pci-stub.c
index 2e7e42a2af..cc7278a865 100644
--- a/hw/s390x/s390-pci-stub.c
+++ b/hw/s390x/s390-pci-stub.c
@@ -7,12 +7,12 @@
#include "s390-pci-bus.h"
/* target/s390x/ioinst.c */
-int chsc_sei_nt2_get_event(void *res)
+int pci_chsc_sei_nt2_get_event(void *res)
{
return 1;
}
-int chsc_sei_nt2_have_event(void)
+int pci_chsc_sei_nt2_have_event(void)
{
return 0;
}
diff --git a/target/s390x/ioinst.c b/target/s390x/ioinst.c
index 51fbea620d..3fa3301f50 100644
--- a/target/s390x/ioinst.c
+++ b/target/s390x/ioinst.c
@@ -599,6 +599,22 @@ static int chsc_sei_nt0_have_event(void)
return 0;
}
+static int chsc_sei_nt2_get_event(void *res)
+{
+ if (s390_has_feat(S390_FEAT_ZPCI)) {
+ return pci_chsc_sei_nt2_get_event(res);
+ }
+ return 1;
+}
+
+static int chsc_sei_nt2_have_event(void)
+{
+ if (s390_has_feat(S390_FEAT_ZPCI)) {
+ return pci_chsc_sei_nt2_have_event();
+ }
+ return 0;
+}
+
#define CHSC_SEI_NT0 (1ULL << 63)
#define CHSC_SEI_NT2 (1ULL << 61)
static void ioinst_handle_chsc_sei(ChscReq *req, ChscResp *res)
--
2.13.5
- [Qemu-devel] [PATCH v5 1/9] 9pfs: fix dependencies, (continued)
[Qemu-devel] [PATCH v5 4/9] s390x: chsc nt2 events are pci-only,
Cornelia Huck <=
[Qemu-devel] [PATCH v5 5/9] s390x/pci: do not advertise pci on non-pci builds, Cornelia Huck, 2017/08/23
[Qemu-devel] [PATCH v5 6/9] s390x/ccw: create s390 phb conditionally, Cornelia Huck, 2017/08/23
[Qemu-devel] [PATCH v5 7/9] s390x/sclp: properly guard pci-specific functions, Cornelia Huck, 2017/08/23
[Qemu-devel] [PATCH v5 8/9] s390x/pci: fence off instructions for non-pci, Cornelia Huck, 2017/08/23
[Qemu-devel] [PATCH v5 9/9] s390x: refine pci dependencies, Cornelia Huck, 2017/08/23
Re: [Qemu-devel] [PATCH v5 0/9] zpci detangling, Christian Borntraeger, 2017/08/24