qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH for-3.0 0/4] cmsdk-apb-timer: various bugfixes


From: Peter Maydell
Subject: [Qemu-devel] [PATCH for-3.0 0/4] cmsdk-apb-timer: various bugfixes
Date: Tue, 3 Jul 2018 18:10:40 +0100

This patchseries includes Guenter's recent patch to suppress
warning messages from the ptimer layer that otherwise occur
from the way the Linux driver for this timer device operates.

The other patches here fix more obscure things:
 * the timer interrupt is only supposed to trigger when the
   counter counts down from 1 to 0, not if it is at 0 for
   some other reason like a direct write of 0 to the VALUE register.
   Handling this requires adding a new policy option to the ptimer
   code, which is what patch 1 does.
 * we were incorrectly setting the NO_IMMEDIATE_TRIGGER
   ptimer policy, which meant we would trigger the interrupt
   one timer clock too late (when we did the timer reload,
   rather than on the 1-to-0 counter transition)
 * if the ptimer had already disabled itself because it was
   in one-shot mode and had expired, writing to RELOAD or
   VALUE needs to cause it to start counting again

Tested with a uCLinux/mps2 kernel and buildroot initfs.

thanks
-- PMM

Guenter Roeck (1):
  hw/timer/cmsdk-apb-timer: Correctly identify and set one-shot mode

Peter Maydell (3):
  ptimer: Add TRIGGER_ONLY_ON_DECREMENT policy option
  hw/timer/cmsdk-apb-timer: Correct ptimer policy settings
  hw/timer/cmsdk-apb-timer: run or stop timer on writes to RELOAD and
    VALUE

 include/hw/ptimer.h        |  9 +++++++++
 hw/core/ptimer.c           | 22 +++++++++++++++++++++-
 hw/timer/cmsdk-apb-timer.c | 20 ++++++++++++++++++--
 tests/ptimer-test.c        | 25 +++++++++++++++++++------
 4 files changed, 67 insertions(+), 9 deletions(-)

-- 
2.17.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]