Add a generic DesignWare APB timer device model, and wire it up for the K230 machine with num-timers=6 and a 6.25 MHz clock.
Changes since v2: - Per Bin Meng's review, refactored from K230-specific device to a generic DesignWare APB Timer model with num-timers property - K230 board sets num-timers=6 and clock frequency accordingly Changes since v1: - Split into 3 patches: model, board integration, tests - Remove goto pattern from read/write handlers - Fix include order, add explicit bitops.h include - Add QOM <private>/<public> markers in struct - Fix copyright headers raoyi (3): hw/timer: add DesignWare APB timer model hw/riscv: add DesignWare APB timer to K230 board tests/qtest: add k230 dwapb timer test MAINTAINERS | 3 + hw/riscv/Kconfig | 1 + hw/riscv/k230.c | 32 +++- hw/timer/Kconfig | 4 + hw/timer/dw-apb-timer.c | 341 ++++++++++++++++++++++++++++ hw/timer/meson.build | 1 + hw/timer/trace-events | 8 + include/hw/riscv/k230.h | 12 ++ include/hw/timer/dw-apb-timer.h | 65 +++++ tests/qtest/k230-dwapb-timer-test.c | 261 +++++++++++++++++++++ tests/qtest/meson.build | 4 +- 11 files changed, 728 insertions(+), 4 deletions(-) create mode 100644 hw/timer/dw-apb-timer.c create mode 100644 include/hw/timer/dw-apb-timer.h create mode 100644 tests/qtest/k230-dwapb-timer-test.c -- 2.53.0
