xref: /openbmc/qemu/include/monitor/hmp.h (revision b6d32a06fc0984e537091cba08f2e1ed9f775d74)
1275307aaSMarkus Armbruster /*
2275307aaSMarkus Armbruster  * Human Monitor Interface
3275307aaSMarkus Armbruster  *
4275307aaSMarkus Armbruster  * Copyright IBM, Corp. 2011
5275307aaSMarkus Armbruster  *
6275307aaSMarkus Armbruster  * Authors:
7275307aaSMarkus Armbruster  *  Anthony Liguori   <aliguori@us.ibm.com>
8275307aaSMarkus Armbruster  *
9275307aaSMarkus Armbruster  * This work is licensed under the terms of the GNU GPL, version 2.  See
10275307aaSMarkus Armbruster  * the COPYING file in the top-level directory.
11275307aaSMarkus Armbruster  *
12275307aaSMarkus Armbruster  */
13275307aaSMarkus Armbruster 
14275307aaSMarkus Armbruster #ifndef HMP_H
15275307aaSMarkus Armbruster #define HMP_H
16275307aaSMarkus Armbruster 
17275307aaSMarkus Armbruster #include "qemu/readline.h"
18f9429c67SDaniel P. Berrangé #include "qapi/qapi-types-common.h"
19275307aaSMarkus Armbruster 
200ca117a7SDaniel P. Berrangé bool hmp_handle_error(Monitor *mon, Error *err);
215ec92f2dSMarkus Armbruster void hmp_help_cmd(Monitor *mon, const char *name);
220d79271bSMarkus Armbruster strList *hmp_split_at_comma(const char *str);
233950a377SMarkus Armbruster 
24275307aaSMarkus Armbruster void hmp_info_name(Monitor *mon, const QDict *qdict);
25275307aaSMarkus Armbruster void hmp_info_version(Monitor *mon, const QDict *qdict);
26275307aaSMarkus Armbruster void hmp_info_kvm(Monitor *mon, const QDict *qdict);
27275307aaSMarkus Armbruster void hmp_info_status(Monitor *mon, const QDict *qdict);
28275307aaSMarkus Armbruster void hmp_info_uuid(Monitor *mon, const QDict *qdict);
29275307aaSMarkus Armbruster void hmp_info_chardev(Monitor *mon, const QDict *qdict);
30275307aaSMarkus Armbruster void hmp_info_mice(Monitor *mon, const QDict *qdict);
31275307aaSMarkus Armbruster void hmp_info_migrate(Monitor *mon, const QDict *qdict);
32275307aaSMarkus Armbruster void hmp_info_migrate_capabilities(Monitor *mon, const QDict *qdict);
33275307aaSMarkus Armbruster void hmp_info_migrate_parameters(Monitor *mon, const QDict *qdict);
34275307aaSMarkus Armbruster void hmp_info_cpus(Monitor *mon, const QDict *qdict);
35275307aaSMarkus Armbruster void hmp_info_vnc(Monitor *mon, const QDict *qdict);
36275307aaSMarkus Armbruster void hmp_info_spice(Monitor *mon, const QDict *qdict);
37275307aaSMarkus Armbruster void hmp_info_balloon(Monitor *mon, const QDict *qdict);
38275307aaSMarkus Armbruster void hmp_info_pic(Monitor *mon, const QDict *qdict);
39275307aaSMarkus Armbruster void hmp_info_pci(Monitor *mon, const QDict *qdict);
40275307aaSMarkus Armbruster void hmp_info_tpm(Monitor *mon, const QDict *qdict);
41275307aaSMarkus Armbruster void hmp_info_iothreads(Monitor *mon, const QDict *qdict);
42275307aaSMarkus Armbruster void hmp_quit(Monitor *mon, const QDict *qdict);
43275307aaSMarkus Armbruster void hmp_stop(Monitor *mon, const QDict *qdict);
44275307aaSMarkus Armbruster void hmp_sync_profile(Monitor *mon, const QDict *qdict);
45275307aaSMarkus Armbruster void hmp_system_reset(Monitor *mon, const QDict *qdict);
46275307aaSMarkus Armbruster void hmp_system_powerdown(Monitor *mon, const QDict *qdict);
47275307aaSMarkus Armbruster void hmp_exit_preconfig(Monitor *mon, const QDict *qdict);
48275307aaSMarkus Armbruster void hmp_announce_self(Monitor *mon, const QDict *qdict);
49275307aaSMarkus Armbruster void hmp_cpu(Monitor *mon, const QDict *qdict);
50275307aaSMarkus Armbruster void hmp_memsave(Monitor *mon, const QDict *qdict);
51275307aaSMarkus Armbruster void hmp_pmemsave(Monitor *mon, const QDict *qdict);
52275307aaSMarkus Armbruster void hmp_ringbuf_write(Monitor *mon, const QDict *qdict);
53275307aaSMarkus Armbruster void hmp_ringbuf_read(Monitor *mon, const QDict *qdict);
54275307aaSMarkus Armbruster void hmp_cont(Monitor *mon, const QDict *qdict);
55275307aaSMarkus Armbruster void hmp_system_wakeup(Monitor *mon, const QDict *qdict);
56275307aaSMarkus Armbruster void hmp_nmi(Monitor *mon, const QDict *qdict);
57ae71d13dSMarkus Armbruster void hmp_info_network(Monitor *mon, const QDict *qdict);
58275307aaSMarkus Armbruster void hmp_set_link(Monitor *mon, const QDict *qdict);
59275307aaSMarkus Armbruster void hmp_balloon(Monitor *mon, const QDict *qdict);
60275307aaSMarkus Armbruster void hmp_loadvm(Monitor *mon, const QDict *qdict);
61275307aaSMarkus Armbruster void hmp_savevm(Monitor *mon, const QDict *qdict);
62275307aaSMarkus Armbruster void hmp_delvm(Monitor *mon, const QDict *qdict);
63275307aaSMarkus Armbruster void hmp_migrate_cancel(Monitor *mon, const QDict *qdict);
64275307aaSMarkus Armbruster void hmp_migrate_continue(Monitor *mon, const QDict *qdict);
65275307aaSMarkus Armbruster void hmp_migrate_incoming(Monitor *mon, const QDict *qdict);
66275307aaSMarkus Armbruster void hmp_migrate_recover(Monitor *mon, const QDict *qdict);
67275307aaSMarkus Armbruster void hmp_migrate_pause(Monitor *mon, const QDict *qdict);
68275307aaSMarkus Armbruster void hmp_migrate_set_capability(Monitor *mon, const QDict *qdict);
69275307aaSMarkus Armbruster void hmp_migrate_set_parameter(Monitor *mon, const QDict *qdict);
70275307aaSMarkus Armbruster void hmp_client_migrate_info(Monitor *mon, const QDict *qdict);
71275307aaSMarkus Armbruster void hmp_migrate_start_postcopy(Monitor *mon, const QDict *qdict);
72275307aaSMarkus Armbruster void hmp_x_colo_lost_heartbeat(Monitor *mon, const QDict *qdict);
73275307aaSMarkus Armbruster void hmp_set_password(Monitor *mon, const QDict *qdict);
74275307aaSMarkus Armbruster void hmp_expire_password(Monitor *mon, const QDict *qdict);
75275307aaSMarkus Armbruster void hmp_change(Monitor *mon, const QDict *qdict);
76f916a175SMarkus Armbruster #ifdef CONFIG_VNC
77f916a175SMarkus Armbruster void hmp_change_vnc(Monitor *mon, const char *device, const char *target,
78f916a175SMarkus Armbruster                     const char *arg, const char *read_only, bool force,
79f916a175SMarkus Armbruster                     Error **errp);
80f916a175SMarkus Armbruster #endif
81fa1d2f8fSMarkus Armbruster void hmp_change_medium(Monitor *mon, const char *device, const char *target,
82fa1d2f8fSMarkus Armbruster                        const char *arg, const char *read_only, bool force,
83fa1d2f8fSMarkus Armbruster                        Error **errp);
84275307aaSMarkus Armbruster void hmp_migrate(Monitor *mon, const QDict *qdict);
85275307aaSMarkus Armbruster void hmp_device_add(Monitor *mon, const QDict *qdict);
86275307aaSMarkus Armbruster void hmp_device_del(Monitor *mon, const QDict *qdict);
87275307aaSMarkus Armbruster void hmp_dump_guest_memory(Monitor *mon, const QDict *qdict);
88275307aaSMarkus Armbruster void hmp_netdev_add(Monitor *mon, const QDict *qdict);
89275307aaSMarkus Armbruster void hmp_netdev_del(Monitor *mon, const QDict *qdict);
90275307aaSMarkus Armbruster void hmp_getfd(Monitor *mon, const QDict *qdict);
91275307aaSMarkus Armbruster void hmp_closefd(Monitor *mon, const QDict *qdict);
925011d262SMarkus Armbruster void hmp_mouse_move(Monitor *mon, const QDict *qdict);
935011d262SMarkus Armbruster void hmp_mouse_button(Monitor *mon, const QDict *qdict);
94ec843b97SMarkus Armbruster void hmp_mouse_set(Monitor *mon, const QDict *qdict);
95275307aaSMarkus Armbruster void hmp_sendkey(Monitor *mon, const QDict *qdict);
966894ee2bSAlberto Faria void coroutine_fn hmp_screendump(Monitor *mon, const QDict *qdict);
97275307aaSMarkus Armbruster void hmp_chardev_add(Monitor *mon, const QDict *qdict);
98275307aaSMarkus Armbruster void hmp_chardev_change(Monitor *mon, const QDict *qdict);
99275307aaSMarkus Armbruster void hmp_chardev_remove(Monitor *mon, const QDict *qdict);
100275307aaSMarkus Armbruster void hmp_chardev_send_break(Monitor *mon, const QDict *qdict);
101275307aaSMarkus Armbruster void hmp_object_add(Monitor *mon, const QDict *qdict);
102275307aaSMarkus Armbruster void hmp_object_del(Monitor *mon, const QDict *qdict);
103275307aaSMarkus Armbruster void hmp_info_memdev(Monitor *mon, const QDict *qdict);
104275307aaSMarkus Armbruster void hmp_info_memory_devices(Monitor *mon, const QDict *qdict);
105275307aaSMarkus Armbruster void hmp_qom_list(Monitor *mon, const QDict *qdict);
10689cf4fe3SDr. David Alan Gilbert void hmp_qom_get(Monitor *mon, const QDict *qdict);
107275307aaSMarkus Armbruster void hmp_qom_set(Monitor *mon, const QDict *qdict);
1083950a377SMarkus Armbruster void hmp_info_qom_tree(Monitor *mon, const QDict *dict);
1098a828798SLaurent Vivier void hmp_virtio_query(Monitor *mon, const QDict *qdict);
1108a828798SLaurent Vivier void hmp_virtio_status(Monitor *mon, const QDict *qdict);
1118a828798SLaurent Vivier void hmp_virtio_queue_status(Monitor *mon, const QDict *qdict);
1128a828798SLaurent Vivier void hmp_vhost_queue_status(Monitor *mon, const QDict *qdict);
1138a828798SLaurent Vivier void hmp_virtio_queue_element(Monitor *mon, const QDict *qdict);
114507cb64dSJoao Martins void hmp_xen_event_inject(Monitor *mon, const QDict *qdict);
115507cb64dSJoao Martins void hmp_xen_event_list(Monitor *mon, const QDict *qdict);
116275307aaSMarkus Armbruster void object_add_completion(ReadLineState *rs, int nb_args, const char *str);
117275307aaSMarkus Armbruster void object_del_completion(ReadLineState *rs, int nb_args, const char *str);
118275307aaSMarkus Armbruster void device_add_completion(ReadLineState *rs, int nb_args, const char *str);
119275307aaSMarkus Armbruster void device_del_completion(ReadLineState *rs, int nb_args, const char *str);
120275307aaSMarkus Armbruster void sendkey_completion(ReadLineState *rs, int nb_args, const char *str);
121275307aaSMarkus Armbruster void chardev_remove_completion(ReadLineState *rs, int nb_args, const char *str);
122275307aaSMarkus Armbruster void chardev_add_completion(ReadLineState *rs, int nb_args, const char *str);
123275307aaSMarkus Armbruster void set_link_completion(ReadLineState *rs, int nb_args, const char *str);
124275307aaSMarkus Armbruster void netdev_add_completion(ReadLineState *rs, int nb_args, const char *str);
125275307aaSMarkus Armbruster void netdev_del_completion(ReadLineState *rs, int nb_args, const char *str);
126275307aaSMarkus Armbruster void ringbuf_write_completion(ReadLineState *rs, int nb_args, const char *str);
127275307aaSMarkus Armbruster void info_trace_events_completion(ReadLineState *rs, int nb_args, const char *str);
128275307aaSMarkus Armbruster void trace_event_completion(ReadLineState *rs, int nb_args, const char *str);
129275307aaSMarkus Armbruster void watchdog_action_completion(ReadLineState *rs, int nb_args,
130275307aaSMarkus Armbruster                                 const char *str);
131275307aaSMarkus Armbruster void migrate_set_capability_completion(ReadLineState *rs, int nb_args,
132275307aaSMarkus Armbruster                                        const char *str);
133275307aaSMarkus Armbruster void migrate_set_parameter_completion(ReadLineState *rs, int nb_args,
134275307aaSMarkus Armbruster                                       const char *str);
135275307aaSMarkus Armbruster void delvm_completion(ReadLineState *rs, int nb_args, const char *str);
136275307aaSMarkus Armbruster void loadvm_completion(ReadLineState *rs, int nb_args, const char *str);
137275307aaSMarkus Armbruster void hmp_rocker(Monitor *mon, const QDict *qdict);
138275307aaSMarkus Armbruster void hmp_rocker_ports(Monitor *mon, const QDict *qdict);
139275307aaSMarkus Armbruster void hmp_rocker_of_dpa_flows(Monitor *mon, const QDict *qdict);
140275307aaSMarkus Armbruster void hmp_rocker_of_dpa_groups(Monitor *mon, const QDict *qdict);
141275307aaSMarkus Armbruster void hmp_info_dump(Monitor *mon, const QDict *qdict);
142275307aaSMarkus Armbruster void hmp_hotpluggable_cpus(Monitor *mon, const QDict *qdict);
143275307aaSMarkus Armbruster void hmp_info_vm_generation_id(Monitor *mon, const QDict *qdict);
144275307aaSMarkus Armbruster void hmp_info_memory_size_summary(Monitor *mon, const QDict *qdict);
145e3b09ad2SPavel Dovgalyuk void hmp_info_replay(Monitor *mon, const QDict *qdict);
146e7510671SPavel Dovgalyuk void hmp_replay_break(Monitor *mon, const QDict *qdict);
147e7510671SPavel Dovgalyuk void hmp_replay_delete_break(Monitor *mon, const QDict *qdict);
148f6baed3dSPavel Dovgalyuk void hmp_replay_seek(Monitor *mon, const QDict *qdict);
149a4a571d9SPeter Xu void hmp_info_dirty_rate(Monitor *mon, const QDict *qdict);
150a4a571d9SPeter Xu void hmp_calc_dirty_rate(Monitor *mon, const QDict *qdict);
151f3b2e38cSHyman Huang(黄勇) void hmp_set_vcpu_dirty_limit(Monitor *mon, const QDict *qdict);
152f3b2e38cSHyman Huang(黄勇) void hmp_cancel_vcpu_dirty_limit(Monitor *mon, const QDict *qdict);
153f3b2e38cSHyman Huang(黄勇) void hmp_info_vcpu_dirty_limit(Monitor *mon, const QDict *qdict);
154f9429c67SDaniel P. Berrangé void hmp_human_readable_text_helper(Monitor *mon,
155f9429c67SDaniel P. Berrangé                                     HumanReadableText *(*qmp_handler)(Error **));
156433815f5SMark Kanda void hmp_info_stats(Monitor *mon, const QDict *qdict);
157e9ccfdd9SPeter Maydell void hmp_one_insn_per_tb(Monitor *mon, const QDict *qdict);
158bab46b81SMarkus Armbruster void hmp_watchdog_action(Monitor *mon, const QDict *qdict);
159d0e67298SMarkus Armbruster void hmp_pcie_aer_inject_error(Monitor *mon, const QDict *qdict);
16098b5362bSMarkus Armbruster void hmp_info_capture(Monitor *mon, const QDict *qdict);
16198b5362bSMarkus Armbruster void hmp_stopcapture(Monitor *mon, const QDict *qdict);
16298b5362bSMarkus Armbruster void hmp_wavcapture(Monitor *mon, const QDict *qdict);
16329b62a10SMarkus Armbruster void hmp_trace_event(Monitor *mon, const QDict *qdict);
16429b62a10SMarkus Armbruster void hmp_trace_file(Monitor *mon, const QDict *qdict);
16529b62a10SMarkus Armbruster void hmp_info_trace_events(Monitor *mon, const QDict *qdict);
166cbf81997SMarkus Armbruster void hmp_help(Monitor *mon, const QDict *qdict);
167cbf81997SMarkus Armbruster void hmp_info_help(Monitor *mon, const QDict *qdict);
168cbf81997SMarkus Armbruster void hmp_info_sync_profile(Monitor *mon, const QDict *qdict);
169cbf81997SMarkus Armbruster void hmp_info_history(Monitor *mon, const QDict *qdict);
170cbf81997SMarkus Armbruster void hmp_logfile(Monitor *mon, const QDict *qdict);
171cbf81997SMarkus Armbruster void hmp_log(Monitor *mon, const QDict *qdict);
172cbf81997SMarkus Armbruster void hmp_gdbserver(Monitor *mon, const QDict *qdict);
173cbf81997SMarkus Armbruster void hmp_print(Monitor *mon, const QDict *qdict);
174cbf81997SMarkus Armbruster void hmp_sum(Monitor *mon, const QDict *qdict);
175cbf81997SMarkus Armbruster void hmp_ioport_read(Monitor *mon, const QDict *qdict);
176cbf81997SMarkus Armbruster void hmp_ioport_write(Monitor *mon, const QDict *qdict);
177cbf81997SMarkus Armbruster void hmp_boot_set(Monitor *mon, const QDict *qdict);
178cbf81997SMarkus Armbruster void hmp_info_mtree(Monitor *mon, const QDict *qdict);
179ef52091aSzhenwei pi void hmp_info_cryptodev(Monitor *mon, const QDict *qdict);
180*1935b7eaSPaolo Bonzini void hmp_dumpdtb(Monitor *mon, const QDict *qdict);
181275307aaSMarkus Armbruster 
182275307aaSMarkus Armbruster #endif
183