diff options
author | Frederic Barrat <fbarrat@linux.ibm.com> | 2024-09-13 11:16:47 -0500 |
---|---|---|
committer | Nicholas Piggin <npiggin@gmail.com> | 2024-11-04 09:14:21 +1000 |
commit | b9deafe7bf463fb7c7d7ee713774bfaf785eeb87 (patch) | |
tree | 9f2cb19d5bfb431492da4e605056d1ccb1d79cf5 | |
parent | a53304639a4a7c57184472a942bbb8da5e8482a6 (diff) | |
download | qemu-b9deafe7bf463fb7c7d7ee713774bfaf785eeb87.zip qemu-b9deafe7bf463fb7c7d7ee713774bfaf785eeb87.tar.gz qemu-b9deafe7bf463fb7c7d7ee713774bfaf785eeb87.tar.bz2 |
pnv/xive2: Define OGEN field in the TIMA
The OGEN field at offset 0x1F is a new field for Gen2 TIMA. This
patch defines it.
Signed-off-by: Frederic Barrat <fbarrat@linux.ibm.com>
Signed-off-by: Michael Kowal <kowal@linux.vnet.ibm.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
-rw-r--r-- | hw/intc/xive.c | 4 | ||||
-rw-r--r-- | include/hw/ppc/xive_regs.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/hw/intc/xive.c b/hw/intc/xive.c index dc86a7a..0e81678 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 diff --git a/include/hw/ppc/xive_regs.h b/include/hw/ppc/xive_regs.h index 9d52d46..9062c6a 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 |