Hi Alistair,
Thanks for the suggestion! I've rebased and sent patch v6.
Best Regards,
Tommy
On Thu, Jun 22, 2023 at 10:10 AM Alistair Francis <alistair23@gmail.com>
wrote:
> On Fri, Jun 9, 2023 at 2:46 AM Tommy Wu <tommy.wu@sifive.com> wrote:
> >
> > The HiFive 1 rev b includes a watchdog module based on a 32-bit
> > counter. The watchdog timer is in the always-on domain device of
> > HiFive 1 rev b, so this patch added the AON device to the sifive_e
> > machine. This patch only implemented the functionality of the
> > watchdog timer, not all the functionality of the AON device.
> >
> > You can test the patchset by the QTest
> tests/qtest/sifive-e-aon-watchdog-test.c
> >
> > Changes since v1 ( Thank Alistair for the feedback ):
> > - Use the register field macro.
> > - Delete the public create function. The board creates the aon device
> itself.
> > - Keep all variable declarations at the top of the code block.
> >
> > Changes since v2 ( Thank Alistair for the feedback ):
> > - Delete the declaration and definition of the create function.
> >
> > Changes since v3 ( Thank Alistair and Thomas for the feedback ):
> > - Use `device_class_set_props()` for the properties in sifive_e_aon
> device.
> > - Add SPDX identifier in QTEST.
> > - Use libqtest.h in QTEST.
> > - Let the statements on one line as long as they still fit into 80
> columns.
> >
> > Changes since v4 ( Thank Phil for the feedback ):
> > - Improve code style consistency.
> > - Move the timer create function to the sifive_e_aon_init.
> > - Allocate the sifive_e_aon device state in the SoC.
> >
> > Tommy Wu (3):
> > hw/misc: sifive_e_aon: Support the watchdog timer of HiFive 1 rev b.
> > hw/riscv: sifive_e: Support the watchdog timer of HiFive 1 rev b.
> > tests/qtest: sifive-e-aon-watchdog-test.c: Add QTest of watchdog of
> > sifive_e
>
> Do you mind rebasing this on
> https://github.com/alistair23/qemu/tree/riscv-to-apply.next ? Then I
> will apply it
>
> Alistair
>
> >
> > hw/misc/Kconfig | 3 +
> > hw/misc/meson.build | 1 +
> > hw/misc/sifive_e_aon.c | 319 ++++++++++++++++
> > hw/riscv/Kconfig | 1 +
> > hw/riscv/sifive_e.c | 17 +-
> > include/hw/misc/sifive_e_aon.h | 60 +++
> > include/hw/riscv/sifive_e.h | 9 +-
> > tests/qtest/meson.build | 3 +
> > tests/qtest/sifive-e-aon-watchdog-test.c | 450 +++++++++++++++++++++++
> > 9 files changed, 858 insertions(+), 5 deletions(-)
> > create mode 100644 hw/misc/sifive_e_aon.c
> > create mode 100644 include/hw/misc/sifive_e_aon.h
> > create mode 100644 tests/qtest/sifive-e-aon-watchdog-test.c
> >
> > --
> > 2.27.0
> >
> >
>