dev,arm: remove and recreate timer events around drains
authorCurtis Dunham <Curtis.Dunham@arm.com>
Thu, 18 May 2017 21:18:48 +0000 (21:18 +0000)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Wed, 5 Jul 2017 14:24:03 +0000 (14:24 +0000)
commite2a049e089b4878d6abd8e816973b175e2be2d7c
tree196ca2952e623920c1d8da558b8fef3a4c0e5784
parentb829b4a8e4ef82345cf81d442dbc6c67016fde98
dev,arm: remove and recreate timer events around drains

Having timer events stored in checkpoints complicates Kvm
execution.  We change the timer behavior so that it always
deschedules any pending events on a drain() and recreates
them on a drainResume(), thus they will never appear in
checkpoints henceforth.  This pattern of behavior makes
it simpler to handle Kvm execution, where the hardware
performs the timer function directly.

Change-Id: Ia218868c69350d96e923c640634d492b5c19cd3f
Reviewed-on: https://gem5-review.googlesource.com/3541
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
src/dev/arm/generic_timer.cc
src/dev/arm/generic_timer.hh