From 7c7a23bd5a0bc149d2edd665ec46381726b24e0c Mon Sep 17 00:00:00 2001 From: wdenk Date: Sat, 7 Dec 2002 00:20:59 +0000 Subject: * Patch by Hans-Joerg Frieden, 06 Dec 2002 Fix misc problems with AmigaOne support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Patch by Chris Hallinan, 3 Dec 2002: minor cleanup to the MPC8245 EPIC driver * Patch by Pierre Aubert , 28 Nov 2002 Add support for external (SIU) interrupts on MPC8xx * Patch by Pierre Aubert , 28 Nov 2002 Fix nested syscalls bug in standalone applications * Patch by David Müller, 27 Nov 2002: fix output of "pciinfo" command for CardBus bridge devices. * Fix bug in TQM8260 board detection - boards got stuck when board ID was not readable --- examples/timer.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'examples') diff --git a/examples/timer.c b/examples/timer.c index 8d60fc8826..33f53c0726 100644 --- a/examples/timer.c +++ b/examples/timer.c @@ -122,6 +122,7 @@ int timer (int argc, char *argv[]) tid_8xx_cpmtimer_t hw; tid_8xx_cpmtimer_t *hwp = &hw; int c; + int running; /* Pointer to CPM Timer structure */ cpmtimerp = &((immap_t *) gd->bd->bi_immr_base)->im_cpmtimer; @@ -185,6 +186,7 @@ int timer (int argc, char *argv[]) *hwp->terp = (CPMT_EVENT_CAP | CPMT_EVENT_REF); mon_printf (usage); + running = 0; while ((c = mon_getc()) != 'q') { if (c == 'b') { @@ -197,6 +199,7 @@ int timer (int argc, char *argv[]) /* enable timer */ *hwp->tgcrp |= (CPMT_GCR_RST << TID_TIMER_ID); + running = 1; #ifdef DEBUG mon_printf ("tgcr=0x%x, tmr=0x%x, trr=0x%x," @@ -210,6 +213,7 @@ int timer (int argc, char *argv[]) mon_printf ("Stopping timer\n"); *hwp->tgcrp &= ~(CPMT_GCR_MASK << TID_TIMER_ID); + running = 0; #ifdef DEBUG mon_printf ("tgcr=0x%x, tmr=0x%x, trr=0x%x," @@ -252,6 +256,12 @@ int timer (int argc, char *argv[]) } mon_printf (usage); } + if (running) { + mon_printf ("Stopping timer\n"); + *hwp->tgcrp &= ~(CPMT_GCR_MASK << TID_TIMER_ID); + mon_free_hdlr (hwp->cpm_vec); + } + return (0); } -- cgit v1.2.1