Skip to content

Generalize Dallas/Maxim I2C RTC devices v2

Michael Davidsaver qemu-devel 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest14 patches 15 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/14tests: more thorough tests of ds1338tests/Makefile.include tests/ds-rtc-common.h tests/ds-rtc-current-test.c +1 more+247 -02 replies
2/14timer: ds1338 use registerfields.hhw/timer/ds1338.c+58 -261 reply
3/14timer: ds1338 persist 12-hour mode selectionhw/timer/ds1338.c+1 -31 reply
4/14timer: ds1338 clarify HOUR handlinghw/timer/ds1338.c+17 -181 reply
5/14timer: ds1338 change write handlinghw/timer/ds1338.c+40 -461 reply
6/14tests: ds-rtc test 12 hour modetests/ds-rtc-set-test.c+52 -00 replies
7/14timer: ds1338 fix wday_offset handlinghw/timer/ds1338.c+16 -81 reply
8/14tests: ds-rtc test wday offsettests/ds-rtc-common.h tests/ds-rtc-current-test.c tests/ds-rtc-set-test.c+19 -60 replies
9/14timer: rename ds1338 -> dsrtchw/timer/ds1338.c+37 -371 reply
10/14timer: rename file ds1338.c -> ds-rtc.cdefault-configs/arm-softmmu.mak hw/timer/Makefile.objs hw/timer/ds-rtc.c+2 -21 reply
11/14timer: generalize ds1338hw/timer/ds-rtc.c+46 -171 reply
12/14timer: ds-rtc handle CENTURY bithw/timer/ds-rtc.c+14 -81 reply
13/14timer: ds-rtc model ds1375hw/timer/ds-rtc.c+28 -21 reply
14/14tests: drop ds1338-testtests/Makefile.include tests/ds1338-test.c+0 -770 replies

Reviews trailers per patch

5 of 14 patches have a Reviewed-by or Acked-by.

PatchPeter Maydell
1/14
2/14R-b
3/14
4/14
5/14
6/14
7/14
8/14
9/14R-b
10/14R-b
11/14
12/14R-b
13/14R-b
14/14

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [Qemu-devel] [PATCH 00/14] Generalize Dallas/Maxim I2C RTC devices v2

This series generalizes the ds1338 model to also support the ds1375. As previously, only the time of day registers are modeled. This series is largely a do-over wrt. my previous series. This time I started with incremental changes from the existing ds1338 model, and only add support for the ds1375 (which I care about).

I've added a more thorough test of the time of day function, covering reading and setting in both 12 and 24 hour mode. This corrects two (practically inconsequential) bugs with the handling of 12 hour mode, and day of the week.

In an attempt to address concerns about false positive test failures in CI builds, instead of comparing the parts of 'struct tm' seperately I've changed the logic of the tests to compare the difference between the expected and actual time in seconds. The threshold is 30 seconds when run with 'gtester -m quick', and 1 second otherwise.

Comparision of day of the week is still exact, so there is a chance of a false positive if the test is running across midnight UTC.

Michael Davidsaver (14):
tests: more thorough tests of ds1338
timer: ds1338 use registerfields.h
timer: ds1338 persist 12-hour mode selection
timer: ds1338 clarify HOUR handling
timer: ds1338 change write handling
tests: ds-rtc test 12 hour mode
timer: ds1338 fix wday_offset handling
tests: ds-rtc test wday offset
timer: rename ds1338 -> dsrtc
timer: rename file ds1338.c -> ds-rtc.c
timer: generalize ds1338
timer: ds-rtc handle CENTURY bit
timer: ds-rtc model ds1375
tests: drop ds1338-test

 default-configs/arm-softmmu.mak |   2 +-
 hw/timer/Makefile.objs          |   2 +-
 hw/timer/ds-rtc.c               | 331 ++++++++++++++++++++++++++++++++++++++++
 hw/timer/ds1338.c               | 239 -----------------------------
 tests/Makefile.include          |   6 +-
 tests/ds-rtc-common.h           |  71 +++++++++
 tests/ds-rtc-current-test.c     |  66 ++++++++
 tests/ds-rtc-set-test.c         | 171 +++++++++++++++++++++
 tests/ds1338-test.c             |  75 ---------
 9 files changed, 645 insertions(+), 318 deletions(-)
 create mode 100644 hw/timer/ds-rtc.c
 delete mode 100644 hw/timer/ds1338.c
 create mode 100644 tests/ds-rtc-common.h
 create mode 100644 tests/ds-rtc-current-test.c
 create mode 100644 tests/ds-rtc-set-test.c
 delete mode 100644 tests/ds1338-test.c
Signature · 1 line
2.11.0