[RFC 0/1] Implement AVR WDT (watchdog timer)

Michael Rolnik posted 1 patch 3 years ago
Only 0 patches received!
There is a newer version of this series
hw/avr/Kconfig                |   1 +
hw/avr/atmega.c               |  15 ++-
hw/avr/atmega.h               |   2 +
hw/watchdog/Kconfig           |   3 +
hw/watchdog/avr_wdt.c         | 188 ++++++++++++++++++++++++++++++++++
hw/watchdog/meson.build       |   2 +
hw/watchdog/trace-events      |   5 +
include/hw/watchdog/avr_wdt.h |  47 +++++++++
target/avr/cpu.c              |   3 +
target/avr/cpu.h              |   1 +
target/avr/helper.c           |   7 +-
11 files changed, 269 insertions(+), 5 deletions(-)
create mode 100644 hw/watchdog/avr_wdt.c
create mode 100644 include/hw/watchdog/avr_wdt.h
[RFC 0/1] Implement AVR WDT (watchdog timer)
Posted by Michael Rolnik 3 years ago
1.  Initial implementation of AVR WDT
    There are two issues with this implementation so I need your help here
    a. when I configure the WDT to fire an interrupt every 15ms it actually happens every 6 instructions
    b. when I specify --icount shift=0 qemu stucks

Michael Rolnik (1):
  Implement AVR watchdog timer

 hw/avr/Kconfig                |   1 +
 hw/avr/atmega.c               |  15 ++-
 hw/avr/atmega.h               |   2 +
 hw/watchdog/Kconfig           |   3 +
 hw/watchdog/avr_wdt.c         | 188 ++++++++++++++++++++++++++++++++++
 hw/watchdog/meson.build       |   2 +
 hw/watchdog/trace-events      |   5 +
 include/hw/watchdog/avr_wdt.h |  47 +++++++++
 target/avr/cpu.c              |   3 +
 target/avr/cpu.h              |   1 +
 target/avr/helper.c           |   7 +-
 11 files changed, 269 insertions(+), 5 deletions(-)
 create mode 100644 hw/watchdog/avr_wdt.c
 create mode 100644 include/hw/watchdog/avr_wdt.h

-- 
2.25.1