[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [RFC PATCH 10/26] ppc/xive: record interrupt source MMIO addr
From: |
Cédric Le Goater |
Subject: |
[Qemu-ppc] [RFC PATCH 10/26] ppc/xive: record interrupt source MMIO address for hcalls |
Date: |
Wed, 5 Jul 2017 19:13:23 +0200 |
The address of the MMIO page through which the Event State Buffer is
controlled is returned to the guest by the H_INT_GET_SOURCE_INFO hcall.
Signed-off-by: Cédric Le Goater <address@hidden>
---
hw/intc/xive.c | 3 +++
include/hw/ppc/xive.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/hw/intc/xive.c b/hw/intc/xive.c
index a1cb87a07b76..0db97fd33981 100644
--- a/hw/intc/xive.c
+++ b/hw/intc/xive.c
@@ -344,6 +344,9 @@ static void xive_ics_realize(ICSState *ics, Error **errp)
ICS_BASE(xs)->offset * (1 << xs->esb_shift),
&xs->esb_iomem);
+ /* Record base address which is needed by the hcalls */
+ xs->esb_base = x->vc_base + ICS_BASE(xs)->offset * (1 << xs->esb_shift);
+
qemu_register_reset(xive_ics_reset, xs);
}
diff --git a/include/hw/ppc/xive.h b/include/hw/ppc/xive.h
index 1178300c9df3..b06bc861b845 100644
--- a/include/hw/ppc/xive.h
+++ b/include/hw/ppc/xive.h
@@ -43,6 +43,7 @@ struct XiveICSState {
uint64_t flags;
uint32_t esb_shift;
+ hwaddr esb_base;
MemoryRegion esb_iomem;
XIVE *xive;
--
2.7.5
- Re: [Qemu-ppc] [RFC PATCH 08/26] ppc/xive: add flags to the XIVE interrupt source, (continued)
[Qemu-ppc] [RFC PATCH 10/26] ppc/xive: record interrupt source MMIO address for hcalls,
Cédric Le Goater <=
[Qemu-ppc] [RFC PATCH 11/26] ppc/xics: introduce a print_info() handler to the ICS and ICP objects, Cédric Le Goater, 2017/07/05
[Qemu-ppc] [RFC PATCH 12/26] ppc/xive: add a print_info() handler for the interrupt source, Cédric Le Goater, 2017/07/05
[Qemu-ppc] [RFC PATCH 13/26] ppc/xive: introduce a XIVE interrupt presenter model, Cédric Le Goater, 2017/07/05