[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 44/76] hw/ppc: Avoid using Monitor in xive2_end_pic_print_info()
From: |
Philippe Mathieu-Daudé |
Subject: |
[PULL 44/76] hw/ppc: Avoid using Monitor in xive2_end_pic_print_info() |
Date: |
Tue, 18 Jun 2024 18:00:06 +0200 |
Replace Monitor API by HumanReadableText one.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Message-Id: <20240610062105.49848-21-philmd@linaro.org>
---
include/hw/ppc/xive2_regs.h | 2 +-
hw/intc/pnv_xive2.c | 8 +++----
hw/intc/xive2.c | 48 ++++++++++++++++---------------------
3 files changed, 26 insertions(+), 32 deletions(-)
diff --git a/include/hw/ppc/xive2_regs.h b/include/hw/ppc/xive2_regs.h
index 4d32703c26..4e5e17cd89 100644
--- a/include/hw/ppc/xive2_regs.h
+++ b/include/hw/ppc/xive2_regs.h
@@ -130,7 +130,7 @@ static inline uint64_t xive2_end_qaddr(Xive2End *end)
(be32_to_cpu(end->w3) & END2_W3_EQ_ADDR_LO);
}
-void xive2_end_pic_print_info(Xive2End *end, uint32_t end_idx, Monitor *mon);
+void xive2_end_pic_print_info(Xive2End *end, uint32_t end_idx, GString *buf);
void xive2_end_queue_pic_print_info(Xive2End *end, uint32_t width,
GString *buf);
void xive2_end_eas_pic_print_info(Xive2End *end, uint32_t end_idx,
diff --git a/hw/intc/pnv_xive2.c b/hw/intc/pnv_xive2.c
index 9535f60828..52505fd1a4 100644
--- a/hw/intc/pnv_xive2.c
+++ b/hw/intc/pnv_xive2.c
@@ -2141,14 +2141,14 @@ void pnv_xive2_pic_print_info(PnvXive2 *xive, Monitor
*mon)
while (!xive2_router_get_end(xrtr, blk, i, &end)) {
xive2_end_eas_pic_print_info(&end, i++, buf);
}
- info = human_readable_text_from_str(buf);
- monitor_puts(mon, info->human_readable_text);
- monitor_printf(mon, "XIVE[%x] #%d ENDT\n", chip_id, blk);
+ g_string_append_printf(buf, "XIVE[%x] #%d ENDT\n", chip_id, blk);
i = 0;
while (!xive2_router_get_end(xrtr, blk, i, &end)) {
- xive2_end_pic_print_info(&end, i++, mon);
+ xive2_end_pic_print_info(&end, i++, buf);
}
+ info = human_readable_text_from_str(buf);
+ monitor_puts(mon, info->human_readable_text);
monitor_printf(mon, "XIVE[%x] #%d NVPT %08x .. %08x\n", chip_id, blk,
0, XIVE2_NVP_COUNT - 1);
diff --git a/hw/intc/xive2.c b/hw/intc/xive2.c
index 6a15b4d1e4..3e7238c663 100644
--- a/hw/intc/xive2.c
+++ b/hw/intc/xive2.c
@@ -11,12 +11,10 @@
#include "qemu/log.h"
#include "qemu/module.h"
#include "qapi/error.h"
-#include "qapi/type-helpers.h"
#include "target/ppc/cpu.h"
#include "sysemu/cpus.h"
#include "sysemu/dma.h"
#include "hw/qdev-properties.h"
-#include "monitor/monitor.h"
#include "hw/ppc/xive.h"
#include "hw/ppc/xive2.h"
#include "hw/ppc/xive2_regs.h"
@@ -71,7 +69,7 @@ void xive2_end_queue_pic_print_info(Xive2End *end, uint32_t
width, GString *buf)
g_string_append_printf(buf, "]");
}
-void xive2_end_pic_print_info(Xive2End *end, uint32_t end_idx, Monitor *mon)
+void xive2_end_pic_print_info(Xive2End *end, uint32_t end_idx, GString *buf)
{
uint64_t qaddr_base = xive2_end_qaddr(end);
uint32_t qindex = xive_get_field32(END2_W1_PAGE_OFF, end->w1);
@@ -90,34 +88,30 @@ void xive2_end_pic_print_info(Xive2End *end, uint32_t
end_idx, Monitor *mon)
pq = xive_get_field32(END2_W1_ESn, end->w1);
- monitor_printf(mon,
- " %08x %c%c %c%c%c%c%c%c%c%c%c%c prio:%d nvp:%02x/%04x",
- end_idx,
- pq & XIVE_ESB_VAL_P ? 'P' : '-',
- pq & XIVE_ESB_VAL_Q ? 'Q' : '-',
- xive2_end_is_valid(end) ? 'v' : '-',
- xive2_end_is_enqueue(end) ? 'q' : '-',
- xive2_end_is_notify(end) ? 'n' : '-',
- xive2_end_is_backlog(end) ? 'b' : '-',
- xive2_end_is_escalate(end) ? 'e' : '-',
- xive2_end_is_escalate_end(end) ? 'N' : '-',
- xive2_end_is_uncond_escalation(end) ? 'u' : '-',
- xive2_end_is_silent_escalation(end) ? 's' : '-',
- xive2_end_is_firmware1(end) ? 'f' : '-',
- xive2_end_is_firmware2(end) ? 'F' : '-',
- priority, nvp_blk, nvp_idx);
+ g_string_append_printf(buf,
+ " %08x %c%c %c%c%c%c%c%c%c%c%c%c "
+ "prio:%d nvp:%02x/%04x",
+ end_idx,
+ pq & XIVE_ESB_VAL_P ? 'P' : '-',
+ pq & XIVE_ESB_VAL_Q ? 'Q' : '-',
+ xive2_end_is_valid(end) ? 'v' : '-',
+ xive2_end_is_enqueue(end) ? 'q' : '-',
+ xive2_end_is_notify(end) ? 'n' : '-',
+ xive2_end_is_backlog(end) ? 'b' : '-',
+ xive2_end_is_escalate(end) ? 'e' : '-',
+ xive2_end_is_escalate_end(end) ? 'N' : '-',
+ xive2_end_is_uncond_escalation(end) ? 'u' : '-',
+ xive2_end_is_silent_escalation(end) ? 's' : '-',
+ xive2_end_is_firmware1(end) ? 'f' : '-',
+ xive2_end_is_firmware2(end) ? 'F' : '-',
+ priority, nvp_blk, nvp_idx);
if (qaddr_base) {
- g_autoptr(GString) buf = g_string_new("");
- g_autoptr(HumanReadableText) info = NULL;
-
- monitor_printf(mon, " eq:@%08"PRIx64"% 6d/%5d ^%d",
- qaddr_base, qindex, qentries, qgen);
+ g_string_append_printf(buf, " eq:@%08"PRIx64"% 6d/%5d ^%d",
+ qaddr_base, qindex, qentries, qgen);
xive2_end_queue_pic_print_info(end, 6, buf);
- info = human_readable_text_from_str(buf);
- monitor_puts(mon, info->human_readable_text);
}
- monitor_printf(mon, "\n");
+ g_string_append_c(buf, '\n');
}
void xive2_end_eas_pic_print_info(Xive2End *end, uint32_t end_idx,
--
2.41.0
- [PULL 34/76] hw/ppc: Avoid using Monitor in pnv_phb4_pic_print_info(), (continued)
- [PULL 34/76] hw/ppc: Avoid using Monitor in pnv_phb4_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 35/76] hw/ppc: Avoid using Monitor in xive_eas_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 36/76] hw/ppc: Avoid using Monitor in xive_end_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 37/76] hw/ppc: Avoid using Monitor in xive_end_eas_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 38/76] hw/ppc: Avoid using Monitor in xive_nvt_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 39/76] hw/ppc: Avoid using Monitor in pnv_xive_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 40/76] hw/ppc: Avoid using Monitor in pnv_psi_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 41/76] hw/ppc: Avoid using Monitor in xive2_eas_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 42/76] hw/ppc: Avoid using Monitor in xive2_end_eas_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 43/76] hw/ppc: Avoid using Monitor in xive2_end_queue_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 44/76] hw/ppc: Avoid using Monitor in xive2_end_pic_print_info(),
Philippe Mathieu-Daudé <=
- [PULL 45/76] hw/ppc: Avoid using Monitor in xive2_nvp_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 46/76] hw/ppc: Avoid using Monitor in pnv_xive2_pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 47/76] hw/ppc: Avoid using Monitor in SpaprInterruptControllerClass::print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 48/76] hw/ppc: Avoid using Monitor in spapr_irq_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 49/76] hw/ppc: Avoid using Monitor in pnv_chip_power9_pic_print_info_child(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 50/76] hw/ppc: Avoid using Monitor in pic_print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 51/76] hw/intc: Avoid using Monitor in INTERRUPT_STATS_PROVIDER::print_info(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 52/76] hw/intc: Introduce x-query-interrupt-controllers QMP command, Philippe Mathieu-Daudé, 2024/06/18
- [PULL 53/76] ppc/pnv: Introduce pnv_chip_foreach_cpu(), Philippe Mathieu-Daudé, 2024/06/18
- [PULL 54/76] target/arm: Set arm_v7m_tcg_ops cpu_exec_halt to arm_cpu_exec_halt(), Philippe Mathieu-Daudé, 2024/06/18