qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH qemu.git v3 0/8] hw/timer/imx_epit: improve and fix EPIT compare timer
@ 2022-12-01 15:42 ~axelheider
  2022-10-25 10:33 ` [PATCH qemu.git v3 7/8] hw/timer/imx_epit: remove explicit fields cnt and freq ~axelheider
                   ` (8 more replies)
  0 siblings, 9 replies; 22+ messages in thread
From: ~axelheider @ 2022-12-01 15:42 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-arm, peter.maydell

This patch set improves the i.MX EPIT emulation:
- fix #1263 for writes to CR
- ensure SR_OCIF is set properly even if CR_OCIEN is off
- hardware reset initialized CR to 0
- interrupt state update on CR writes (e.g. software reset)
- remove explicit fields cnt and freq (they are redundant)
- general code and documentation improvements

v3 addresses the comments from the previous iterations, but still keeps
the scope of this patchset limited to addressing the obvious bugs in the
behavior. It does not try to improve the timer accuracy, thus the
following remarks remain to be fixed in a future patch after this one is
merged:
- don't use PTIMER_POLICY_LEGACY. Fine tuning this requires more
  time and currently this is not a major concern, because the timer is
  working reasonably well.
- replace the modestly harmful sequence
        counter = ptimer_get_count(s->timer_reload);
        ...
        ptimer_set_count(s->timer_cmp, counter);
  by something better that does not lose or gain time. The current
  patchset does not introduce this sequence, it has been there
  before already. Again,  the current lack of accuracy here is not a
  major concern because the timer is working reasonably well.

Axel Heider (8):
  hw/timer/imx_epit: improve comments
  hw/timer/imx_epit: cleanup CR defines
  hw/timer/imx_epit: define SR_OCIF
  hw/timer/imx_epit: update interrupt state on CR write access
  hw/timer/imx_epit: hard reset initializes CR with 0
  hw/timer/imx_epit: factor out register write handlers
  hw/timer/imx_epit: remove explicit fields cnt and freq
  hw/timer/imx_epit: fix compare timer handling

 hw/timer/imx_epit.c         | 370 +++++++++++++++++++++---------------
 include/hw/timer/imx_epit.h |   8 +-
 2 files changed, 222 insertions(+), 156 deletions(-)

-- 
2.34.5


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2023-04-04 16:27 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-01 15:42 [PATCH qemu.git v3 0/8] hw/timer/imx_epit: improve and fix EPIT compare timer ~axelheider
2022-10-25 10:33 ` [PATCH qemu.git v3 7/8] hw/timer/imx_epit: remove explicit fields cnt and freq ~axelheider
2023-01-05 12:08   ` Peter Maydell
2022-10-25 15:33 ` [PATCH qemu.git v3 1/8] hw/timer/imx_epit: improve comments ~axelheider
2023-01-05 12:00   ` Peter Maydell
2022-10-25 18:32 ` [PATCH qemu.git v3 4/8] hw/timer/imx_epit: update interrupt state on CR write access ~axelheider
2023-01-05 12:03   ` Peter Maydell
2022-10-27 13:09 ` [PATCH qemu.git v3 6/8] hw/timer/imx_epit: factor out register write handlers ~axelheider
2023-01-05 12:04   ` Peter Maydell
2022-10-30 23:59 ` [PATCH qemu.git v3 2/8] hw/timer/imx_epit: cleanup CR defines ~axelheider
2023-01-05 12:00   ` Peter Maydell
2022-11-19 14:59 ` [PATCH qemu.git v3 3/8] hw/timer/imx_epit: define SR_OCIF ~axelheider
2023-01-05 12:01   ` Peter Maydell
2022-11-19 16:09 ` [PATCH qemu.git v3 5/8] hw/timer/imx_epit: hard reset initializes CR with 0 ~axelheider
2023-01-05 12:04   ` Peter Maydell
2022-11-20 19:05 ` [PATCH qemu.git v3 8/8] hw/timer/imx_epit: fix compare timer handling ~axelheider
2023-01-05 12:21   ` Peter Maydell
2023-01-05 21:08     ` Axel Heider
2023-04-04 15:44   ` Peter Maydell
2023-04-04 16:26     ` Axel Heider
2023-01-05 12:23 ` [PATCH qemu.git v3 0/8] hw/timer/imx_epit: improve and fix EPIT compare timer Peter Maydell
2023-01-05 21:11   ` Axel Heider

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).