diff options
| author | Gerd Hoffmann <kraxel@redhat.com> | 2009-09-10 10:58:35 +0200 |
|---|---|---|
| committer | Anthony Liguori <aliguori@us.ibm.com> | 2009-09-11 10:19:47 -0500 |
| commit | 191bc01bc970bd1e86f34ddeab896b2b27fd5124 (patch) | |
| tree | 2e88485ef5ca527010d714964bb441020f0df0b1 /qemu-char.h | |
| parent | 9d868d4517be12226991b2cc55d11bc0f83ea7b2 (diff) | |
| download | focaccia-qemu-191bc01bc970bd1e86f34ddeab896b2b27fd5124.tar.gz focaccia-qemu-191bc01bc970bd1e86f34ddeab896b2b27fd5124.zip | |
switch chardev to QemuOpts: infrastructure, null device
start switching chardevs to QemuOpts. This patch adds the infrastructure and converts the null device. The patch brings two new functions: qemu_chr_open_opts() same as qemu_chr_open(), but uses QemuOpts instead of a option char string. qemu_chr_parse_compat() accepts a traditional chardev option string, returns the corresponding QemuOpts instance, to handle backward compatibility. The patch also adds a new -chardev switch which can be used to create named+unconnected chardevs, like this: -chardev null,id=test This uses the new qemu_chr_open_opts. Thus with this patch alone only the null device works. The other devices will follow ... Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'qemu-char.h')
| -rw-r--r-- | qemu-char.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/qemu-char.h b/qemu-char.h index df620bc7db..9bff0c7f11 100644 --- a/qemu-char.h +++ b/qemu-char.h @@ -3,6 +3,8 @@ #include "qemu-common.h" #include "sys-queue.h" +#include "qemu-option.h" +#include "qemu-config.h" /* character device */ @@ -68,6 +70,8 @@ struct CharDriverState { TAILQ_ENTRY(CharDriverState) next; }; +CharDriverState *qemu_chr_open_opts(QemuOpts *opts, + void (*init)(struct CharDriverState *s)); CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*init)(struct CharDriverState *s)); void qemu_chr_close(CharDriverState *chr); void qemu_chr_printf(CharDriverState *s, const char *fmt, ...); |