target/arm: Restrict 'qapi-commands-machine.h' to system emulation
Since commita0e61807a3
("qapi: Remove QMP events and commands from user-mode builds") we don't generate the "qapi-commands-machine.h" header in a user-emulation-only build. Move the QMP functions from helper.c (which is always compiled) to monitor.c (which is only compiled when system-emulation is selected). Rename monitor.c to arm-qmp-cmds.c. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20230223155540.30370-2-philmd@linaro.org> Signed-off-by: Markus Armbruster <armbru@redhat.com> [Straightforward conflict with commit9def656e7a
resolved]
This commit is contained in:
parent
76f5801a83
commit
3362f04dbc
|
@ -227,3 +227,31 @@ CpuModelExpansionInfo *qmp_query_cpu_model_expansion(CpuModelExpansionType type,
|
||||||
|
|
||||||
return expansion_info;
|
return expansion_info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void arm_cpu_add_definition(gpointer data, gpointer user_data)
|
||||||
|
{
|
||||||
|
ObjectClass *oc = data;
|
||||||
|
CpuDefinitionInfoList **cpu_list = user_data;
|
||||||
|
CpuDefinitionInfo *info;
|
||||||
|
const char *typename;
|
||||||
|
|
||||||
|
typename = object_class_get_name(oc);
|
||||||
|
info = g_malloc0(sizeof(*info));
|
||||||
|
info->name = g_strndup(typename,
|
||||||
|
strlen(typename) - strlen("-" TYPE_ARM_CPU));
|
||||||
|
info->q_typename = g_strdup(typename);
|
||||||
|
|
||||||
|
QAPI_LIST_PREPEND(*cpu_list, info);
|
||||||
|
}
|
||||||
|
|
||||||
|
CpuDefinitionInfoList *qmp_query_cpu_definitions(Error **errp)
|
||||||
|
{
|
||||||
|
CpuDefinitionInfoList *cpu_list = NULL;
|
||||||
|
GSList *list;
|
||||||
|
|
||||||
|
list = object_class_get_list(TYPE_ARM_CPU, false);
|
||||||
|
g_slist_foreach(list, arm_cpu_add_definition, &cpu_list);
|
||||||
|
g_slist_free(list);
|
||||||
|
|
||||||
|
return cpu_list;
|
||||||
|
}
|
|
@ -23,7 +23,6 @@
|
||||||
#include "sysemu/cpu-timers.h"
|
#include "sysemu/cpu-timers.h"
|
||||||
#include "sysemu/kvm.h"
|
#include "sysemu/kvm.h"
|
||||||
#include "sysemu/tcg.h"
|
#include "sysemu/tcg.h"
|
||||||
#include "qapi/qapi-commands-machine-target.h"
|
|
||||||
#include "qapi/error.h"
|
#include "qapi/error.h"
|
||||||
#include "qemu/guest-random.h"
|
#include "qemu/guest-random.h"
|
||||||
#ifdef CONFIG_TCG
|
#ifdef CONFIG_TCG
|
||||||
|
@ -9188,34 +9187,6 @@ void arm_cpu_list(void)
|
||||||
g_slist_free(list);
|
g_slist_free(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void arm_cpu_add_definition(gpointer data, gpointer user_data)
|
|
||||||
{
|
|
||||||
ObjectClass *oc = data;
|
|
||||||
CpuDefinitionInfoList **cpu_list = user_data;
|
|
||||||
CpuDefinitionInfo *info;
|
|
||||||
const char *typename;
|
|
||||||
|
|
||||||
typename = object_class_get_name(oc);
|
|
||||||
info = g_malloc0(sizeof(*info));
|
|
||||||
info->name = g_strndup(typename,
|
|
||||||
strlen(typename) - strlen("-" TYPE_ARM_CPU));
|
|
||||||
info->q_typename = g_strdup(typename);
|
|
||||||
|
|
||||||
QAPI_LIST_PREPEND(*cpu_list, info);
|
|
||||||
}
|
|
||||||
|
|
||||||
CpuDefinitionInfoList *qmp_query_cpu_definitions(Error **errp)
|
|
||||||
{
|
|
||||||
CpuDefinitionInfoList *cpu_list = NULL;
|
|
||||||
GSList *list;
|
|
||||||
|
|
||||||
list = object_class_get_list(TYPE_ARM_CPU, false);
|
|
||||||
g_slist_foreach(list, arm_cpu_add_definition, &cpu_list);
|
|
||||||
g_slist_free(list);
|
|
||||||
|
|
||||||
return cpu_list;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Private utility function for define_one_arm_cp_reg_with_opaque():
|
* Private utility function for define_one_arm_cp_reg_with_opaque():
|
||||||
* add a single reginfo struct to the hash table.
|
* add a single reginfo struct to the hash table.
|
||||||
|
|
|
@ -20,8 +20,8 @@ arm_softmmu_ss = ss.source_set()
|
||||||
arm_softmmu_ss.add(files(
|
arm_softmmu_ss.add(files(
|
||||||
'arch_dump.c',
|
'arch_dump.c',
|
||||||
'arm-powerctl.c',
|
'arm-powerctl.c',
|
||||||
|
'arm-qmp-cmds.c',
|
||||||
'machine.c',
|
'machine.c',
|
||||||
'monitor.c',
|
|
||||||
'ptw.c',
|
'ptw.c',
|
||||||
))
|
))
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue