From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:52548) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SxAK6-0005w0-A8 for qemu-devel@nongnu.org; Fri, 03 Aug 2012 01:21:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SxAK5-0006Iw-Af for qemu-devel@nongnu.org; Fri, 03 Aug 2012 01:21:18 -0400 From: Bharat Bhushan Date: Fri, 3 Aug 2012 10:51:24 +0530 Message-ID: <1343971285-17725-2-git-send-email-Bharat.Bhushan@freescale.com> In-Reply-To: <1343971285-17725-1-git-send-email-Bharat.Bhushan@freescale.com> References: <1343971285-17725-1-git-send-email-Bharat.Bhushan@freescale.com> MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH 2/3] Registered timer reset handler List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-ppc@nongnu.org, qemu-devel@nongnu.org, agraf@suse.de Cc: Bharat Bhushan Reset qemu timers when guest reset. Signed-off-by: Bharat Bhushan --- hw/ppc_booke.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/hw/ppc_booke.c b/hw/ppc_booke.c index d51e7fa..837a5b6 100644 --- a/hw/ppc_booke.c +++ b/hw/ppc_booke.c @@ -231,6 +231,16 @@ void store_booke_tcr(CPUPPCState *env, target_ulong val) } +static void ppc_booke_timer_reset_handle(void *opaque) +{ + CPUPPCState *env = opaque; + + env->spr[SPR_BOOKE_TSR] = 0; + env->spr[SPR_BOOKE_TCR] = 0; + + booke_update_irq(env); +} + void ppc_booke_timers_init(CPUPPCState *env, uint32_t freq, uint32_t flags) { ppc_tb_t *tb_env; @@ -251,4 +261,6 @@ void ppc_booke_timers_init(CPUPPCState *env, uint32_t freq, uint32_t flags) qemu_new_timer_ns(vm_clock, &booke_fit_cb, env); booke_timer->wdt_timer = qemu_new_timer_ns(vm_clock, &booke_wdt_cb, env); + + qemu_register_reset(ppc_booke_timer_reset_handle, env); } -- 1.7.0.4