From: Frederic Barrat <fbar...@linux.ibm.com> The OGEN field at offset 0x1F is a new field for Gen2 TIMA. This patch defines it.
Signed-off-by: Frederic Barrat <fbar...@linux.ibm.com> Signed-off-by: Michael Kowal <ko...@linux.vnet.ibm.com> Reviewed-by: Cédric Le Goater <c...@redhat.com> --- include/hw/ppc/xive_regs.h | 1 + hw/intc/xive.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/include/hw/ppc/xive_regs.h b/include/hw/ppc/xive_regs.h index 9d52d464d9..9062c6abf6 100644 --- a/include/hw/ppc/xive_regs.h +++ b/include/hw/ppc/xive_regs.h @@ -79,6 +79,7 @@ #define TM_INC 0x5 /* - + - + */ #define TM_AGE 0x6 /* - + - + */ #define TM_PIPR 0x7 /* - + - + */ +#define TM_OGEN 0xF /* - + - - */ /* P10 only */ #define TM_WORD0 0x0 #define TM_WORD1 0x4 diff --git a/hw/intc/xive.c b/hw/intc/xive.c index 2fb38e2102..136d82338a 100644 --- a/hw/intc/xive.c +++ b/hw/intc/xive.c @@ -742,6 +742,10 @@ void xive_tctx_reset(XiveTCTX *tctx) tctx->regs[TM_QW1_OS + TM_LSMFB] = 0xFF; tctx->regs[TM_QW1_OS + TM_ACK_CNT] = 0xFF; tctx->regs[TM_QW1_OS + TM_AGE] = 0xFF; + if (!(xive_presenter_get_config(tctx->xptr) & + XIVE_PRESENTER_GEN1_TIMA_OS)) { + tctx->regs[TM_QW1_OS + TM_OGEN] = 2; + } /* * Initialize PIPR to 0xFF to avoid phantom interrupts when the -- 2.43.0