* [PATCH] hw/timer/hpet: Convert DPRINTF to trace events
@ 2023-11-18 23:11 Daniel Hoffman
2023-11-22 1:42 ` Dan Hoffman
2024-01-17 8:26 ` Philippe Mathieu-Daudé
0 siblings, 2 replies; 3+ messages in thread
From: Daniel Hoffman @ 2023-11-18 23:11 UTC (permalink / raw)
To: qemu-devel
Cc: qemu-trivial, Daniel Hoffman, Michael S. Tsirkin, Paolo Bonzini
This conversion is pretty straight-forward. Standardized some formatting
so the +0 and +4 offset cases can recycle the same message.
Signed-off-by: Daniel Hoffman <dhoff749@gmail.com>
---
hw/timer/hpet.c | 55 +++++++++++++++++--------------------------
hw/timer/trace-events | 16 +++++++++++++
2 files changed, 38 insertions(+), 33 deletions(-)
diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c
index 6998094233a..f9d248b4cf7 100644
--- a/hw/timer/hpet.c
+++ b/hw/timer/hpet.c
@@ -39,13 +39,7 @@
#include "hw/timer/i8254.h"
#include "exec/address-spaces.h"
#include "qom/object.h"
-
-//#define HPET_DEBUG
-#ifdef HPET_DEBUG
-#define DPRINTF printf
-#else
-#define DPRINTF(...)
-#endif
+#include "trace.h"
#define HPET_MSI_SUPPORT 0
@@ -431,7 +425,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
HPETState *s = opaque;
uint64_t cur_tick, index;
- DPRINTF("qemu: Enter hpet_ram_readl at %" PRIx64 "\n", addr);
+ trace_hpet_ram_read(addr);
index = addr;
/*address range of all TN regs*/
if (index >= 0x100 && index <= 0x3ff) {
@@ -439,7 +433,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
HPETTimer *timer = &s->timer[timer_id];
if (timer_id > s->num_timers) {
- DPRINTF("qemu: timer id out of range\n");
+ trace_hpet_timer_id_out_of_range(timer_id);
return 0;
}
@@ -457,7 +451,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
case HPET_TN_ROUTE + 4:
return timer->fsb >> 32;
default:
- DPRINTF("qemu: invalid hpet_ram_readl\n");
+ trace_hpet_ram_read_invalid();
break;
}
} else {
@@ -469,7 +463,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
case HPET_CFG:
return s->config;
case HPET_CFG + 4:
- DPRINTF("qemu: invalid HPET_CFG + 4 hpet_ram_readl\n");
+ trace_hpet_invalid_hpet_cfg(4);
return 0;
case HPET_COUNTER:
if (hpet_enabled(s)) {
@@ -477,7 +471,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
} else {
cur_tick = s->hpet_counter;
}
- DPRINTF("qemu: reading counter = %" PRIx64 "\n", cur_tick);
+ trace_hpet_ram_read_reading_counter(0, cur_tick);
return cur_tick;
case HPET_COUNTER + 4:
if (hpet_enabled(s)) {
@@ -485,12 +479,12 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
} else {
cur_tick = s->hpet_counter;
}
- DPRINTF("qemu: reading counter + 4 = %" PRIx64 "\n", cur_tick);
+ trace_hpet_ram_read_reading_counter(4, cur_tick);
return cur_tick >> 32;
case HPET_STATUS:
return s->isr;
default:
- DPRINTF("qemu: invalid hpet_ram_readl\n");
+ trace_hpet_ram_read_invalid();
break;
}
}
@@ -504,8 +498,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
HPETState *s = opaque;
uint64_t old_val, new_val, val, index;
- DPRINTF("qemu: Enter hpet_ram_writel at %" PRIx64 " = 0x%" PRIx64 "\n",
- addr, value);
+ trace_hpet_ram_write(addr, value);
index = addr;
old_val = hpet_ram_read(opaque, addr, 4);
new_val = value;
@@ -515,14 +508,14 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
uint8_t timer_id = (addr - 0x100) / 0x20;
HPETTimer *timer = &s->timer[timer_id];
- DPRINTF("qemu: hpet_ram_writel timer_id = 0x%x\n", timer_id);
+ trace_hpet_ram_write_timer_id(timer_id);
if (timer_id > s->num_timers) {
- DPRINTF("qemu: timer id out of range\n");
+ trace_hpet_timer_id_out_of_range(timer_id);
return;
}
switch ((addr - 0x100) % 0x20) {
case HPET_TN_CFG:
- DPRINTF("qemu: hpet_ram_writel HPET_TN_CFG\n");
+ trace_hpet_ram_write_tn_cfg();
if (activating_bit(old_val, new_val, HPET_TN_FSB_ENABLE)) {
update_irq(timer, 0);
}
@@ -540,10 +533,10 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
}
break;
case HPET_TN_CFG + 4: // Interrupt capabilities
- DPRINTF("qemu: invalid HPET_TN_CFG+4 write\n");
+ trace_hpet_ram_write_invalid_tn_cfg(4);
break;
case HPET_TN_CMP: // comparator register
- DPRINTF("qemu: hpet_ram_writel HPET_TN_CMP\n");
+ trace_hpet_ram_write_tn_cmp(0);
if (timer->config & HPET_TN_32BIT) {
new_val = (uint32_t)new_val;
}
@@ -566,7 +559,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
}
break;
case HPET_TN_CMP + 4: // comparator register high order
- DPRINTF("qemu: hpet_ram_writel HPET_TN_CMP + 4\n");
+ trace_hpet_ram_write_tn_cmp(4);
if (!timer_is_periodic(timer)
|| (timer->config & HPET_TN_SETVAL)) {
timer->cmp = (timer->cmp & 0xffffffffULL) | new_val << 32;
@@ -591,7 +584,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
timer->fsb = (new_val << 32) | (timer->fsb & 0xffffffff);
break;
default:
- DPRINTF("qemu: invalid hpet_ram_writel\n");
+ trace_hpet_ram_write_invalid();
break;
}
return;
@@ -631,7 +624,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
}
break;
case HPET_CFG + 4:
- DPRINTF("qemu: invalid HPET_CFG+4 write\n");
+ trace_hpet_invalid_hpet_cfg(4);
break;
case HPET_STATUS:
val = new_val & s->isr;
@@ -643,24 +636,20 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
break;
case HPET_COUNTER:
if (hpet_enabled(s)) {
- DPRINTF("qemu: Writing counter while HPET enabled!\n");
+ trace_hpet_ram_write_counter_write_while_enabled();
}
s->hpet_counter =
(s->hpet_counter & 0xffffffff00000000ULL) | value;
- DPRINTF("qemu: HPET counter written. ctr = 0x%" PRIx64 " -> "
- "%" PRIx64 "\n", value, s->hpet_counter);
+ trace_hpet_ram_write_counter_written(0, value, s->hpet_counter);
break;
case HPET_COUNTER + 4:
- if (hpet_enabled(s)) {
- DPRINTF("qemu: Writing counter while HPET enabled!\n");
- }
+ trace_hpet_ram_write_counter_write_while_enabled();
s->hpet_counter =
(s->hpet_counter & 0xffffffffULL) | (((uint64_t)value) << 32);
- DPRINTF("qemu: HPET counter + 4 written. ctr = 0x%" PRIx64 " -> "
- "%" PRIx64 "\n", value, s->hpet_counter);
+ trace_hpet_ram_write_counter_written(4, value, s->hpet_counter);
break;
default:
- DPRINTF("qemu: invalid hpet_ram_writel\n");
+ trace_hpet_ram_write_invalid();
break;
}
}
diff --git a/hw/timer/trace-events b/hw/timer/trace-events
index 3eccef83858..474831a8c3b 100644
--- a/hw/timer/trace-events
+++ b/hw/timer/trace-events
@@ -99,3 +99,19 @@ sifive_pwm_write(uint64_t data, uint64_t offset) "Write 0x%" PRIx64 " at address
sh_timer_start_stop(int enable, int current) "%d (%d)"
sh_timer_read(uint64_t offset) "tmu012_read 0x%" PRIx64
sh_timer_write(uint64_t offset, uint64_t value) "tmu012_write 0x%" PRIx64 " 0x%08" PRIx64
+
+# hpet.c
+hpet_timer_id_out_of_range(uint8_t timer_id) "timer id out of range: 0x%" PRIx8
+hpet_invalid_hpet_cfg(uint8_t reg_off) "invalid HPET_CFG + 0x%x" PRIx8
+hpet_ram_read(uint64_t addr) "enter hpet_ram_readl at 0x%" PRIx64
+hpet_ram_read_reading_counter(uint8_t reg_off, uint64_t cur_tick) "reading counter + 0x%" PRIx8 " = 0x%" PRIx64
+hpet_ram_read_invalid(void) "invalid hpet_ram_readl"
+hpet_ram_write(uint64_t addr, uint64_t value) "enter hpet_ram_writel at 0x%" PRIx64 " = 0x%" PRIx64
+hpet_ram_write_timer_id(uint64_t timer_id) "hpet_ram_writel timer_id = 0x%" PRIx64
+hpet_ram_write_tn_cfg(void) "hpet_ram_writel HPET_TN_CFG"
+hpet_ram_write_invalid_tn_cfg(uint8_t reg_off) "invalid HPET_TN_CFG + %" PRIx8 " write"
+hpet_ram_write_tn_cmp(uint8_t reg_off) "hpet_ram_writel HPET_TN_CMP + %" PRIx8
+hpet_ram_write_invalid(void) "invalid hpet_ram_writel"
+hpet_ram_write_counter_write_while_enabled(void) "Writing counter while HPET enabled!"
+hpet_ram_write_counter_written(uint8_t reg_off, uint64_t value, uint64_t counter) "HPET counter + %" PRIx8 "written. crt = 0x%" PRIx64 " -> 0x%" PRIx64
+
--
2.40.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] hw/timer/hpet: Convert DPRINTF to trace events
2023-11-18 23:11 [PATCH] hw/timer/hpet: Convert DPRINTF to trace events Daniel Hoffman
@ 2023-11-22 1:42 ` Dan Hoffman
2024-01-17 8:26 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 3+ messages in thread
From: Dan Hoffman @ 2023-11-22 1:42 UTC (permalink / raw)
To: qemu-devel; +Cc: qemu-trivial, Michael S. Tsirkin, Paolo Bonzini
bump
On Sat, Nov 18, 2023 at 5:13 PM Daniel Hoffman <dhoff749@gmail.com> wrote:
>
> This conversion is pretty straight-forward. Standardized some formatting
> so the +0 and +4 offset cases can recycle the same message.
>
> Signed-off-by: Daniel Hoffman <dhoff749@gmail.com>
> ---
> hw/timer/hpet.c | 55 +++++++++++++++++--------------------------
> hw/timer/trace-events | 16 +++++++++++++
> 2 files changed, 38 insertions(+), 33 deletions(-)
>
> diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c
> index 6998094233a..f9d248b4cf7 100644
> --- a/hw/timer/hpet.c
> +++ b/hw/timer/hpet.c
> @@ -39,13 +39,7 @@
> #include "hw/timer/i8254.h"
> #include "exec/address-spaces.h"
> #include "qom/object.h"
> -
> -//#define HPET_DEBUG
> -#ifdef HPET_DEBUG
> -#define DPRINTF printf
> -#else
> -#define DPRINTF(...)
> -#endif
> +#include "trace.h"
>
> #define HPET_MSI_SUPPORT 0
>
> @@ -431,7 +425,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> HPETState *s = opaque;
> uint64_t cur_tick, index;
>
> - DPRINTF("qemu: Enter hpet_ram_readl at %" PRIx64 "\n", addr);
> + trace_hpet_ram_read(addr);
> index = addr;
> /*address range of all TN regs*/
> if (index >= 0x100 && index <= 0x3ff) {
> @@ -439,7 +433,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> HPETTimer *timer = &s->timer[timer_id];
>
> if (timer_id > s->num_timers) {
> - DPRINTF("qemu: timer id out of range\n");
> + trace_hpet_timer_id_out_of_range(timer_id);
> return 0;
> }
>
> @@ -457,7 +451,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> case HPET_TN_ROUTE + 4:
> return timer->fsb >> 32;
> default:
> - DPRINTF("qemu: invalid hpet_ram_readl\n");
> + trace_hpet_ram_read_invalid();
> break;
> }
> } else {
> @@ -469,7 +463,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> case HPET_CFG:
> return s->config;
> case HPET_CFG + 4:
> - DPRINTF("qemu: invalid HPET_CFG + 4 hpet_ram_readl\n");
> + trace_hpet_invalid_hpet_cfg(4);
> return 0;
> case HPET_COUNTER:
> if (hpet_enabled(s)) {
> @@ -477,7 +471,7 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> } else {
> cur_tick = s->hpet_counter;
> }
> - DPRINTF("qemu: reading counter = %" PRIx64 "\n", cur_tick);
> + trace_hpet_ram_read_reading_counter(0, cur_tick);
> return cur_tick;
> case HPET_COUNTER + 4:
> if (hpet_enabled(s)) {
> @@ -485,12 +479,12 @@ static uint64_t hpet_ram_read(void *opaque, hwaddr addr,
> } else {
> cur_tick = s->hpet_counter;
> }
> - DPRINTF("qemu: reading counter + 4 = %" PRIx64 "\n", cur_tick);
> + trace_hpet_ram_read_reading_counter(4, cur_tick);
> return cur_tick >> 32;
> case HPET_STATUS:
> return s->isr;
> default:
> - DPRINTF("qemu: invalid hpet_ram_readl\n");
> + trace_hpet_ram_read_invalid();
> break;
> }
> }
> @@ -504,8 +498,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> HPETState *s = opaque;
> uint64_t old_val, new_val, val, index;
>
> - DPRINTF("qemu: Enter hpet_ram_writel at %" PRIx64 " = 0x%" PRIx64 "\n",
> - addr, value);
> + trace_hpet_ram_write(addr, value);
> index = addr;
> old_val = hpet_ram_read(opaque, addr, 4);
> new_val = value;
> @@ -515,14 +508,14 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> uint8_t timer_id = (addr - 0x100) / 0x20;
> HPETTimer *timer = &s->timer[timer_id];
>
> - DPRINTF("qemu: hpet_ram_writel timer_id = 0x%x\n", timer_id);
> + trace_hpet_ram_write_timer_id(timer_id);
> if (timer_id > s->num_timers) {
> - DPRINTF("qemu: timer id out of range\n");
> + trace_hpet_timer_id_out_of_range(timer_id);
> return;
> }
> switch ((addr - 0x100) % 0x20) {
> case HPET_TN_CFG:
> - DPRINTF("qemu: hpet_ram_writel HPET_TN_CFG\n");
> + trace_hpet_ram_write_tn_cfg();
> if (activating_bit(old_val, new_val, HPET_TN_FSB_ENABLE)) {
> update_irq(timer, 0);
> }
> @@ -540,10 +533,10 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> }
> break;
> case HPET_TN_CFG + 4: // Interrupt capabilities
> - DPRINTF("qemu: invalid HPET_TN_CFG+4 write\n");
> + trace_hpet_ram_write_invalid_tn_cfg(4);
> break;
> case HPET_TN_CMP: // comparator register
> - DPRINTF("qemu: hpet_ram_writel HPET_TN_CMP\n");
> + trace_hpet_ram_write_tn_cmp(0);
> if (timer->config & HPET_TN_32BIT) {
> new_val = (uint32_t)new_val;
> }
> @@ -566,7 +559,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> }
> break;
> case HPET_TN_CMP + 4: // comparator register high order
> - DPRINTF("qemu: hpet_ram_writel HPET_TN_CMP + 4\n");
> + trace_hpet_ram_write_tn_cmp(4);
> if (!timer_is_periodic(timer)
> || (timer->config & HPET_TN_SETVAL)) {
> timer->cmp = (timer->cmp & 0xffffffffULL) | new_val << 32;
> @@ -591,7 +584,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> timer->fsb = (new_val << 32) | (timer->fsb & 0xffffffff);
> break;
> default:
> - DPRINTF("qemu: invalid hpet_ram_writel\n");
> + trace_hpet_ram_write_invalid();
> break;
> }
> return;
> @@ -631,7 +624,7 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> }
> break;
> case HPET_CFG + 4:
> - DPRINTF("qemu: invalid HPET_CFG+4 write\n");
> + trace_hpet_invalid_hpet_cfg(4);
> break;
> case HPET_STATUS:
> val = new_val & s->isr;
> @@ -643,24 +636,20 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> break;
> case HPET_COUNTER:
> if (hpet_enabled(s)) {
> - DPRINTF("qemu: Writing counter while HPET enabled!\n");
> + trace_hpet_ram_write_counter_write_while_enabled();
> }
> s->hpet_counter =
> (s->hpet_counter & 0xffffffff00000000ULL) | value;
> - DPRINTF("qemu: HPET counter written. ctr = 0x%" PRIx64 " -> "
> - "%" PRIx64 "\n", value, s->hpet_counter);
> + trace_hpet_ram_write_counter_written(0, value, s->hpet_counter);
> break;
> case HPET_COUNTER + 4:
> - if (hpet_enabled(s)) {
> - DPRINTF("qemu: Writing counter while HPET enabled!\n");
> - }
> + trace_hpet_ram_write_counter_write_while_enabled();
> s->hpet_counter =
> (s->hpet_counter & 0xffffffffULL) | (((uint64_t)value) << 32);
> - DPRINTF("qemu: HPET counter + 4 written. ctr = 0x%" PRIx64 " -> "
> - "%" PRIx64 "\n", value, s->hpet_counter);
> + trace_hpet_ram_write_counter_written(4, value, s->hpet_counter);
> break;
> default:
> - DPRINTF("qemu: invalid hpet_ram_writel\n");
> + trace_hpet_ram_write_invalid();
> break;
> }
> }
> diff --git a/hw/timer/trace-events b/hw/timer/trace-events
> index 3eccef83858..474831a8c3b 100644
> --- a/hw/timer/trace-events
> +++ b/hw/timer/trace-events
> @@ -99,3 +99,19 @@ sifive_pwm_write(uint64_t data, uint64_t offset) "Write 0x%" PRIx64 " at address
> sh_timer_start_stop(int enable, int current) "%d (%d)"
> sh_timer_read(uint64_t offset) "tmu012_read 0x%" PRIx64
> sh_timer_write(uint64_t offset, uint64_t value) "tmu012_write 0x%" PRIx64 " 0x%08" PRIx64
> +
> +# hpet.c
> +hpet_timer_id_out_of_range(uint8_t timer_id) "timer id out of range: 0x%" PRIx8
> +hpet_invalid_hpet_cfg(uint8_t reg_off) "invalid HPET_CFG + 0x%x" PRIx8
> +hpet_ram_read(uint64_t addr) "enter hpet_ram_readl at 0x%" PRIx64
> +hpet_ram_read_reading_counter(uint8_t reg_off, uint64_t cur_tick) "reading counter + 0x%" PRIx8 " = 0x%" PRIx64
> +hpet_ram_read_invalid(void) "invalid hpet_ram_readl"
> +hpet_ram_write(uint64_t addr, uint64_t value) "enter hpet_ram_writel at 0x%" PRIx64 " = 0x%" PRIx64
> +hpet_ram_write_timer_id(uint64_t timer_id) "hpet_ram_writel timer_id = 0x%" PRIx64
> +hpet_ram_write_tn_cfg(void) "hpet_ram_writel HPET_TN_CFG"
> +hpet_ram_write_invalid_tn_cfg(uint8_t reg_off) "invalid HPET_TN_CFG + %" PRIx8 " write"
> +hpet_ram_write_tn_cmp(uint8_t reg_off) "hpet_ram_writel HPET_TN_CMP + %" PRIx8
> +hpet_ram_write_invalid(void) "invalid hpet_ram_writel"
> +hpet_ram_write_counter_write_while_enabled(void) "Writing counter while HPET enabled!"
> +hpet_ram_write_counter_written(uint8_t reg_off, uint64_t value, uint64_t counter) "HPET counter + %" PRIx8 "written. crt = 0x%" PRIx64 " -> 0x%" PRIx64
> +
> --
> 2.40.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] hw/timer/hpet: Convert DPRINTF to trace events
2023-11-18 23:11 [PATCH] hw/timer/hpet: Convert DPRINTF to trace events Daniel Hoffman
2023-11-22 1:42 ` Dan Hoffman
@ 2024-01-17 8:26 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-01-17 8:26 UTC (permalink / raw)
To: Daniel Hoffman, qemu-devel
Cc: qemu-trivial, Michael S. Tsirkin, Paolo Bonzini
Hi Daniel,
On 19/11/23 00:11, Daniel Hoffman wrote:
> This conversion is pretty straight-forward. Standardized some formatting
> so the +0 and +4 offset cases can recycle the same message.
>
> Signed-off-by: Daniel Hoffman <dhoff749@gmail.com>
> ---
> hw/timer/hpet.c | 55 +++++++++++++++++--------------------------
> hw/timer/trace-events | 16 +++++++++++++
> 2 files changed, 38 insertions(+), 33 deletions(-)
> @@ -643,24 +636,20 @@ static void hpet_ram_write(void *opaque, hwaddr addr,
> break;
> case HPET_COUNTER:
> if (hpet_enabled(s)) {
> - DPRINTF("qemu: Writing counter while HPET enabled!\n");
> + trace_hpet_ram_write_counter_write_while_enabled();
Better would be to call qemu_log_mask(LOG_GUEST_ERROR) here IMO.
> }
> s->hpet_counter =
> (s->hpet_counter & 0xffffffff00000000ULL) | value;
> - DPRINTF("qemu: HPET counter written. ctr = 0x%" PRIx64 " -> "
> - "%" PRIx64 "\n", value, s->hpet_counter);
> + trace_hpet_ram_write_counter_written(0, value, s->hpet_counter);
> break;
> case HPET_COUNTER + 4:
> - if (hpet_enabled(s)) {
> - DPRINTF("qemu: Writing counter while HPET enabled!\n");
> - }
> + trace_hpet_ram_write_counter_write_while_enabled();
Ditto.
Can be done on top in another patch, so meanwhile:
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
And patch queued, thanks!
> s->hpet_counter =
> (s->hpet_counter & 0xffffffffULL) | (((uint64_t)value) << 32);
> - DPRINTF("qemu: HPET counter + 4 written. ctr = 0x%" PRIx64 " -> "
> - "%" PRIx64 "\n", value, s->hpet_counter);
> + trace_hpet_ram_write_counter_written(4, value, s->hpet_counter);
> break;
> default:
> - DPRINTF("qemu: invalid hpet_ram_writel\n");
> + trace_hpet_ram_write_invalid();
> break;
> }
> }
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-01-17 8:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-18 23:11 [PATCH] hw/timer/hpet: Convert DPRINTF to trace events Daniel Hoffman
2023-11-22 1:42 ` Dan Hoffman
2024-01-17 8:26 ` Philippe Mathieu-Daudé
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).