Browse Source
When FEAT_RME is implemented, these bits override the value of CNT[VP]_CTL_EL0.IMASK in Realm and Root state. Move the IRQ state update into a new gt_update_irq() function and test those bits every time we recompute the IRQ state. Since we're removing the IRQ state from some trace events, add a new trace event for gt_update_irq(). Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Message-id: 20230809123706.1842548-7-jean-philippe@linaro.org [PMM: only register change hook if not USER_ONLY and if TCG] Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>pull/249/head
committed by
Peter Maydell
4 changed files with 68 additions and 14 deletions
@ -1,13 +1,14 @@ |
|||
# See docs/devel/tracing.rst for syntax documentation. |
|||
|
|||
# helper.c |
|||
arm_gt_recalc(int timer, int irqstate, uint64_t nexttick) "gt recalc: timer %d irqstate %d next tick 0x%" PRIx64 |
|||
arm_gt_recalc_disabled(int timer) "gt recalc: timer %d irqstate 0 timer disabled" |
|||
arm_gt_recalc(int timer, uint64_t nexttick) "gt recalc: timer %d next tick 0x%" PRIx64 |
|||
arm_gt_recalc_disabled(int timer) "gt recalc: timer %d timer disabled" |
|||
arm_gt_cval_write(int timer, uint64_t value) "gt_cval_write: timer %d value 0x%" PRIx64 |
|||
arm_gt_tval_write(int timer, uint64_t value) "gt_tval_write: timer %d value 0x%" PRIx64 |
|||
arm_gt_ctl_write(int timer, uint64_t value) "gt_ctl_write: timer %d value 0x%" PRIx64 |
|||
arm_gt_imask_toggle(int timer, int irqstate) "gt_ctl_write: timer %d IMASK toggle, new irqstate %d" |
|||
arm_gt_imask_toggle(int timer) "gt_ctl_write: timer %d IMASK toggle" |
|||
arm_gt_cntvoff_write(uint64_t value) "gt_cntvoff_write: value 0x%" PRIx64 |
|||
arm_gt_update_irq(int timer, int irqstate) "gt_update_irq: timer %d irqstate %d" |
|||
|
|||
# kvm.c |
|||
kvm_arm_fixup_msi_route(uint64_t iova, uint64_t gpa) "MSI iova = 0x%"PRIx64" is translated into 0x%"PRIx64 |
|||
|
|||
Loading…
Reference in new issue