aboutsummaryrefslogtreecommitdiff
path: root/hw/watchdog/wdt_imx2.c
diff options
context:
space:
mode:
authorBernhard Beschow <shentey@gmail.com>2023-10-28 14:24:10 +0200
committerPeter Maydell <peter.maydell@linaro.org>2023-11-02 13:36:45 +0000
commit18736a21417818bf6561fb3ededd64f1f90790c3 (patch)
tree241ad49b32b6adaf26cd6c590768842e2e7bf317 /hw/watchdog/wdt_imx2.c
parent7df9a2285761eadbaf3cc6c8850aeb894f91b4f7 (diff)
downloadqemu-18736a21417818bf6561fb3ededd64f1f90790c3.zip
qemu-18736a21417818bf6561fb3ededd64f1f90790c3.tar.gz
qemu-18736a21417818bf6561fb3ededd64f1f90790c3.tar.bz2
hw/watchdog/wdt_imx2: Trace MMIO access
Signed-off-by: Bernhard Beschow <shentey@gmail.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-id: 20231028122415.14869-2-shentey@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/watchdog/wdt_imx2.c')
-rw-r--r--hw/watchdog/wdt_imx2.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/hw/watchdog/wdt_imx2.c b/hw/watchdog/wdt_imx2.c
index e776a2f..885ebd3 100644
--- a/hw/watchdog/wdt_imx2.c
+++ b/hw/watchdog/wdt_imx2.c
@@ -17,6 +17,7 @@
#include "hw/qdev-properties.h"
#include "hw/watchdog/wdt_imx2.h"
+#include "trace.h"
static void imx2_wdt_interrupt(void *opaque)
{
@@ -67,20 +68,29 @@ static void imx2_wdt_reset(DeviceState *dev)
static uint64_t imx2_wdt_read(void *opaque, hwaddr addr, unsigned int size)
{
IMX2WdtState *s = IMX2_WDT(opaque);
+ uint16_t value = 0;
switch (addr) {
case IMX2_WDT_WCR:
- return s->wcr;
+ value = s->wcr;
+ break;
case IMX2_WDT_WSR:
- return s->wsr;
+ value = s->wsr;
+ break;
case IMX2_WDT_WRSR:
- return s->wrsr;
+ value = s->wrsr;
+ break;
case IMX2_WDT_WICR:
- return s->wicr;
+ value = s->wicr;
+ break;
case IMX2_WDT_WMCR:
- return s->wmcr;
+ value = s->wmcr;
+ break;
}
- return 0;
+
+ trace_imx2_wdt_read(addr, value);
+
+ return value;
}
static void imx_wdt2_update_itimer(IMX2WdtState *s, bool start)
@@ -137,6 +147,8 @@ static void imx2_wdt_write(void *opaque, hwaddr addr,
{
IMX2WdtState *s = IMX2_WDT(opaque);
+ trace_imx2_wdt_write(addr, value);
+
switch (addr) {
case IMX2_WDT_WCR:
if (s->wcr_locked) {