From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:33143) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UG3z4-0001iu-3Q for qemu-devel@nongnu.org; Thu, 14 Mar 2013 04:58:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UG3ys-00005t-Tt for qemu-devel@nongnu.org; Thu, 14 Mar 2013 04:57:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:18217) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UG3ys-00005N-K6 for qemu-devel@nongnu.org; Thu, 14 Mar 2013 04:57:46 -0400 From: Gerd Hoffmann Date: Thu, 14 Mar 2013 09:57:26 +0100 Message-Id: <1363251462-31498-6-git-send-email-kraxel@redhat.com> In-Reply-To: <1363251462-31498-1-git-send-email-kraxel@redhat.com> References: <1363251462-31498-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH 05/20] chardev: add braille support to qapi List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Anthony Liguori , Gerd Hoffmann This patch adds 'braille' support to qapi and also switches over the braille chardev initialization to the new qapi code path. Signed-off-by: Gerd Hoffmann --- backends/baum.c | 4 ++-- include/char/char.h | 3 +++ qapi-schema.json | 3 ++- qemu-char.c | 5 +++++ 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/backends/baum.c b/backends/baum.c index 9063aea..d7d658c 100644 --- a/backends/baum.c +++ b/backends/baum.c @@ -561,7 +561,7 @@ static void baum_close(struct CharDriverState *chr) g_free(baum); } -static CharDriverState *chr_baum_init(QemuOpts *opts) +CharDriverState *chr_baum_init(void) { BaumDriverState *baum; CharDriverState *chr; @@ -627,7 +627,7 @@ fail_handle: static void register_types(void) { - register_char_driver("braille", chr_baum_init); + register_char_driver_qapi("braille", CHARDEV_BACKEND_KIND_BRAILLE, NULL); } type_init(register_types); diff --git a/include/char/char.h b/include/char/char.h index 80e8e30..d6a0351 100644 --- a/include/char/char.h +++ b/include/char/char.h @@ -264,4 +264,7 @@ CharDriverState *qemu_char_get_next_serial(void); /* msmouse */ CharDriverState *qemu_chr_open_msmouse(void); +/* baum.c */ +CharDriverState *chr_baum_init(void); + #endif diff --git a/qapi-schema.json b/qapi-schema.json index 86c04dc..3c5c0fb 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -3211,7 +3211,8 @@ 'pty' : 'ChardevDummy', 'null' : 'ChardevDummy', 'mux' : 'ChardevMux', - 'msmouse': 'ChardevDummy' } } + 'msmouse': 'ChardevDummy', + 'braille': 'ChardevDummy' } } ## # @ChardevReturn: diff --git a/qemu-char.c b/qemu-char.c index e860ba3..1692aa8 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -3722,6 +3722,11 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend, case CHARDEV_BACKEND_KIND_MSMOUSE: chr = qemu_chr_open_msmouse(); break; +#ifdef CONFIG_BRLAPI + case CHARDEV_BACKEND_KIND_BRAILLE: + chr = chr_baum_init(); + break; +#endif default: error_setg(errp, "unknown chardev backend (%d)", backend->kind); break; -- 1.7.9.7