hw/ppc: Avoid using Monitor in ics_pic_print_info()

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-5-philmd@linaro.org>
This commit is contained in:
Philippe Mathieu-Daudé 2024-06-07 13:23:47 +02:00
parent f163e2707e
commit dd77c49e74
4 changed files with 19 additions and 19 deletions

View File

@ -35,7 +35,6 @@
#include "qemu/module.h"
#include "qapi/visitor.h"
#include "migration/vmstate.h"
#include "monitor/monitor.h"
#include "hw/intc/intc.h"
#include "hw/irq.h"
#include "sysemu/kvm.h"
@ -68,12 +67,12 @@ void icp_pic_print_info(ICPState *icp, GString *buf)
icp->pending_priority, icp->mfrr);
}
void ics_pic_print_info(ICSState *ics, Monitor *mon)
void ics_pic_print_info(ICSState *ics, GString *buf)
{
uint32_t i;
monitor_printf(mon, "ICS %4x..%4x %p\n",
ics->offset, ics->offset + ics->nr_irqs - 1, ics);
g_string_append_printf(buf, "ICS %4x..%4x %p\n",
ics->offset, ics->offset + ics->nr_irqs - 1, ics);
if (!ics->irqs) {
return;
@ -89,11 +88,11 @@ void ics_pic_print_info(ICSState *ics, Monitor *mon)
if (!(irq->flags & XICS_FLAGS_IRQ_MASK)) {
continue;
}
monitor_printf(mon, " %4x %s %02x %02x\n",
ics->offset + i,
(irq->flags & XICS_FLAGS_IRQ_LSI) ?
"LSI" : "MSI",
irq->priority, irq->status);
g_string_append_printf(buf, " %4x %s %02x %02x\n",
ics->offset + i,
(irq->flags & XICS_FLAGS_IRQ_LSI) ?
"LSI" : "MSI",
irq->priority, irq->status);
}
}

View File

@ -409,10 +409,10 @@ static void xics_spapr_print_info(SpaprInterruptController *intc, Monitor *mon)
icp_pic_print_info(spapr_cpu_state(cpu)->icp, buf);
}
ics_pic_print_info(ics, buf);
info = human_readable_text_from_str(buf);
monitor_puts(mon, info->human_readable_text);
ics_pic_print_info(ics, mon);
}
static int xics_spapr_post_load(SpaprInterruptController *intc, int version_id)

View File

@ -770,20 +770,21 @@ static void pnv_chip_power8_pic_print_info(PnvChip *chip, Monitor *mon)
Pnv8Chip *chip8 = PNV8_CHIP(chip);
int i;
ics_pic_print_info(&chip8->psi.ics, mon);
g_autoptr(GString) buf = g_string_new("");
g_autoptr(HumanReadableText) info = NULL;
ics_pic_print_info(&chip8->psi.ics, buf);
for (i = 0; i < chip8->num_phbs; i++) {
PnvPHB *phb = chip8->phbs[i];
PnvPHB3 *phb3 = PNV_PHB3(phb->backend);
g_autoptr(GString) buf = g_string_new("");
g_autoptr(HumanReadableText) info = NULL;
pnv_phb3_msi_pic_print_info(&phb3->msis, buf);
info = human_readable_text_from_str(buf);
monitor_puts(mon, info->human_readable_text);
ics_pic_print_info(&phb3->lsis, mon);
ics_pic_print_info(&phb3->lsis, buf);
}
info = human_readable_text_from_str(buf);
monitor_puts(mon, info->human_readable_text);
}
static int pnv_chip_power9_pic_print_info_child(Object *child, void *opaque)

View File

@ -172,7 +172,7 @@ static inline bool ics_irq_free(ICSState *ics, uint32_t srcno)
void ics_set_irq_type(ICSState *ics, int srcno, bool lsi);
void icp_pic_print_info(ICPState *icp, GString *buf);
void ics_pic_print_info(ICSState *ics, Monitor *mon);
void ics_pic_print_info(ICSState *ics, GString *buf);
void ics_resend(ICSState *ics);
void icp_resend(ICPState *ss);