/openbmc/qemu/chardev/ |
H A D | char-socket.c | 42 static void tcp_chr_telnet_init(Chardev *chr); 68 static void qemu_chr_socket_restart_timer(Chardev *chr) in qemu_chr_socket_restart_timer() argument 70 SocketChardev *s = SOCKET_CHARDEV(chr); in qemu_chr_socket_restart_timer() 75 name = g_strdup_printf("chardev-socket-reconnect-%s", chr->label); in qemu_chr_socket_restart_timer() 76 s->reconnect_timer = qemu_chr_timeout_add_ms(chr, in qemu_chr_socket_restart_timer() 79 chr); in qemu_chr_socket_restart_timer() 84 static void check_report_connect_error(Chardev *chr, in check_report_connect_error() argument 87 SocketChardev *s = SOCKET_CHARDEV(chr); in check_report_connect_error() 92 chr->label); in check_report_connect_error() 97 qemu_chr_socket_restart_timer(chr); in check_report_connect_error() [all …]
|
H A D | char-fe.c | 35 Chardev *s = be->chr; in qemu_chr_fe_write() 46 Chardev *s = be->chr; in qemu_chr_fe_write_all() 57 Chardev *s = be->chr; in qemu_chr_fe_read_all() 100 Chardev *s = be->chr; in qemu_chr_fe_ioctl() 114 Chardev *s = be->chr; in qemu_chr_fe_get_msgfd() 127 Chardev *s = be->chr; in qemu_chr_fe_get_msgfds() 139 Chardev *s = be->chr; in qemu_chr_fe_set_msgfds() 151 Chardev *s = be->chr; in qemu_chr_fe_accept_input() 179 return be->chr; in qemu_chr_fe_get_driver() 184 return !!be->chr; in qemu_chr_fe_backend_connected() [all …]
|
H A D | char.c | 249 static void qemu_char_open(Chardev *chr, ChardevBackend *backend, in qemu_char_open() argument 252 ChardevClass *cc = CHARDEV_GET_CLASS(chr); in qemu_char_open() 264 chr->logfd = qemu_create(common->logfile, flags, 0666, errp); in qemu_char_open() 265 if (chr->logfd < 0) { in qemu_char_open() 271 cc->open(chr, backend, be_opened, errp); in qemu_char_open() 277 Chardev *chr = CHARDEV(obj); in char_init() local 279 chr->handover_yank_instance = false; in char_init() 280 chr->logfd = -1; in char_init() 281 qemu_mutex_init(&chr->chr_write_lock); in char_init() 287 if (CHARDEV_GET_CLASS(chr)->chr_update_read_handler) { in char_init() [all …]
|
H A D | char-mux.c | 45 static int mux_chr_write(Chardev *chr, const uint8_t *buf, int len) in mux_chr_write() argument 47 MuxChardev *d = MUX_CHARDEV(chr); in mux_chr_write() 50 ret = qemu_chr_fe_write(&d->chr, buf, len); in mux_chr_write() 75 qemu_chr_fe_write_all(&d->chr, in mux_chr_write() 79 ret += qemu_chr_fe_write(&d->chr, buf + i, 1); in mux_chr_write() 100 static void mux_print_help(Chardev *chr) in mux_print_help() argument 116 qemu_chr_write_all(chr, (uint8_t *)cbuf, strlen(cbuf)); in mux_print_help() 120 qemu_chr_write_all(chr, (uint8_t *)ebuf, strlen(ebuf)); in mux_print_help() 122 qemu_chr_write_all(chr, (uint8_t *)&mux_help[i][j], 1); in mux_print_help() 138 static void mux_chr_be_event(Chardev *chr, QEMUChrEvent event) in mux_chr_be_event() argument [all …]
|
H A D | char-pty.c | 52 static void pty_chr_state(Chardev *chr, int connected); 65 struct Chardev *chr = CHARDEV(opaque); in pty_chr_timer() local 71 qemu_chr_be_update_read_handlers(chr, chr->gcontext); in pty_chr_timer() 76 static void pty_chr_rearm_timer(Chardev *chr, int ms) in pty_chr_rearm_timer() argument 78 PtyChardev *s = PTY_CHARDEV(chr); in pty_chr_rearm_timer() 82 name = g_strdup_printf("pty-timer-%s", chr->label); in pty_chr_rearm_timer() 83 s->timer_src = qemu_chr_timeout_add_ms(chr, ms, pty_chr_timer, chr); in pty_chr_rearm_timer() 88 static void pty_chr_update_read_handler(Chardev *chr) in pty_chr_update_read_handler() argument 90 PtyChardev *s = PTY_CHARDEV(chr); in pty_chr_update_read_handler() 102 pty_chr_state(chr, 0); in pty_chr_update_read_handler() [all …]
|
H A D | char-fd.c | 37 static int fd_chr_write(Chardev *chr, const uint8_t *buf, int len) in fd_chr_write() argument 39 FDChardev *s = FD_CHARDEV(chr); in fd_chr_write() 50 Chardev *chr = CHARDEV(opaque); in fd_chr_read() local 67 remove_fd_in_watch(chr); in fd_chr_read() 68 qemu_chr_be_event(chr, CHR_EVENT_CLOSED); in fd_chr_read() 72 qemu_chr_be_write(chr, buf, ret); in fd_chr_read() 80 Chardev *chr = CHARDEV(opaque); in fd_chr_read_poll() local 83 s->max_size = qemu_chr_be_can_write(chr); in fd_chr_read_poll() 133 static GSource *fd_source_new(FDChardev *chr) in fd_source_new() argument 149 static GSource *fd_chr_add_watch(Chardev *chr, GIOCondition cond) in fd_chr_add_watch() argument [all …]
|
H A D | spice.c | 20 Chardev *chr = CHARDEV(scd); in vmc_write() local 26 int can_write = qemu_chr_be_can_write(chr); in vmc_write() 31 qemu_chr_be_write(chr, p, last_out); in vmc_write() 63 Chardev *chr = CHARDEV(scd); in vmc_event() local 75 qemu_chr_be_event(chr, chr_event); in vmc_event() 81 Chardev *chr = CHARDEV(scd); in vmc_state() local 83 if ((chr->be_open && connected) || in vmc_state() 84 (!chr->be_open && !connected)) { in vmc_state() 88 qemu_chr_be_event(chr, in vmc_state() 129 Chardev *chr = CHARDEV(src->scd); in spice_char_source_prepare() local [all …]
|
H A D | char-ringbuf.c | 48 static size_t ringbuf_count(const Chardev *chr) in DECLARE_INSTANCE_CHECKER() 50 const RingBufChardev *d = RINGBUF_CHARDEV(chr); in DECLARE_INSTANCE_CHECKER() 55 static int ringbuf_chr_write(Chardev *chr, const uint8_t *buf, int len) in ringbuf_chr_write() argument 57 RingBufChardev *d = RINGBUF_CHARDEV(chr); in ringbuf_chr_write() 74 static int ringbuf_chr_read(Chardev *chr, uint8_t *buf, int len) in ringbuf_chr_read() argument 76 RingBufChardev *d = RINGBUF_CHARDEV(chr); in ringbuf_chr_read() 79 qemu_mutex_lock(&chr->chr_write_lock); in ringbuf_chr_read() 83 qemu_mutex_unlock(&chr->chr_write_lock); in ringbuf_chr_read() 95 static void qemu_chr_open_ringbuf(Chardev *chr, in qemu_chr_open_ringbuf() argument 101 RingBufChardev *d = RINGBUF_CHARDEV(chr); in qemu_chr_open_ringbuf() [all …]
|
H A D | char-udp.c | 52 static int udp_chr_write(Chardev *chr, const uint8_t *buf, int len) in DECLARE_INSTANCE_CHECKER() 54 UdpChardev *s = UDP_CHARDEV(chr); in DECLARE_INSTANCE_CHECKER() 62 Chardev *chr = CHARDEV(s); in udp_chr_flush_buffer() local 66 qemu_chr_be_write(chr, &s->buf[s->bufptr], n); in udp_chr_flush_buffer() 68 s->max_size = qemu_chr_be_can_write(chr); in udp_chr_flush_buffer() 74 Chardev *chr = CHARDEV(opaque); in udp_chr_read_poll() local 77 s->max_size = qemu_chr_be_can_write(chr); in udp_chr_read_poll() 89 Chardev *chr = CHARDEV(opaque); in udp_chr_read() local 99 remove_fd_in_watch(chr); in udp_chr_read() 109 static void udp_chr_update_read_handler(Chardev *chr) in udp_chr_update_read_handler() argument [all …]
|
H A D | char-win.c | 31 static void win_chr_read(Chardev *chr, DWORD len) in win_chr_read() argument 33 WinChardev *s = WIN_CHARDEV(chr); in win_chr_read() 34 int max_size = qemu_chr_be_can_write(chr); in win_chr_read() 57 qemu_chr_be_write(chr, buf, size); in win_chr_read() 63 Chardev *chr = CHARDEV(opaque); in win_chr_serial_poll() local 70 win_chr_read(chr, status.cbInQue); in win_chr_serial_poll() 76 int win_chr_serial_init(Chardev *chr, const char *filename, Error **errp) in win_chr_serial_init() argument 78 WinChardev *s = WIN_CHARDEV(chr); in win_chr_serial_init() 135 qemu_add_polling_cb(win_chr_serial_poll, chr); in win_chr_serial_init() 144 Chardev *chr = CHARDEV(opaque); in win_chr_pipe_poll() local [all …]
|
H A D | char-win-stdio.c | 49 Chardev *chr = CHARDEV(opaque); in DECLARE_INSTANCE_CHECKER() local 71 if (qemu_chr_be_can_write(chr)) { in DECLARE_INSTANCE_CHECKER() 73 qemu_chr_be_write(chr, &c, 1); in DECLARE_INSTANCE_CHECKER() 121 Chardev *chr = CHARDEV(opaque); in win_stdio_thread_wait_func() local 124 if (qemu_chr_be_can_write(chr)) { in win_stdio_thread_wait_func() 125 qemu_chr_be_write(chr, &stdio->win_stdio_buf, 1); in win_stdio_thread_wait_func() 131 static void qemu_chr_set_echo_win_stdio(Chardev *chr, bool echo) in qemu_chr_set_echo_win_stdio() argument 133 WinStdioChardev *stdio = WIN_STDIO_CHARDEV(chr); in qemu_chr_set_echo_win_stdio() 145 static void qemu_chr_open_stdio(Chardev *chr, in qemu_chr_open_stdio() argument 152 WinStdioChardev *stdio = WIN_STDIO_CHARDEV(chr); in qemu_chr_open_stdio() [all …]
|
H A D | char-parallel.c | 73 static int pp_ioctl(Chardev *chr, int cmd, void *arg) in pp_ioctl() argument 75 ParallelChardev *drv = PARALLEL_CHARDEV(chr); in pp_ioctl() 160 static void qemu_chr_open_pp_fd(Chardev *chr, in qemu_chr_open_pp_fd() argument 165 ParallelChardev *drv = PARALLEL_CHARDEV(chr); in qemu_chr_open_pp_fd() 188 static int pp_ioctl(Chardev *chr, int cmd, void *arg) in pp_ioctl() argument 190 ParallelChardev *drv = PARALLEL_CHARDEV(chr); in pp_ioctl() 230 static void qemu_chr_open_pp_fd(Chardev *chr, in qemu_chr_open_pp_fd() argument 235 ParallelChardev *drv = PARALLEL_CHARDEV(chr); in qemu_chr_open_pp_fd() 242 static void qmp_chardev_open_parallel(Chardev *chr, in qmp_chardev_open_parallel() argument 254 qemu_chr_open_pp_fd(chr, fd, be_opened, errp); in qmp_chardev_open_parallel() [all …]
|
/openbmc/qemu/system/ |
H A D | qtest.c | 45 Chardev *chr; member 263 void qtest_send_prefix(CharBackend *chr) in qtest_send_prefix() argument 290 CharBackend* chr = (CharBackend *)opaque; in qtest_server_char_be_send() local 291 qemu_chr_fe_write_all(chr, (uint8_t *)str, len); in qtest_server_char_be_send() 297 static void qtest_send(CharBackend *chr, const char *str) in qtest_send() argument 302 void qtest_sendf(CharBackend *chr, const char *fmt, ...) in qtest_sendf() argument 309 qtest_send(chr, buffer); in qtest_sendf() 320 CharBackend *chr = &qtest->qtest_chr; in qtest_irq_handler() local 322 qtest_send_prefix(chr); in qtest_irq_handler() 323 qtest_sendf(chr, "IRQ %s %d\n", in qtest_irq_handler() [all …]
|
/openbmc/qemu/tests/unit/ |
H A D | test-char.c | 85 Chardev *chr; in char_console_test_subprocess() local 91 chr = qemu_chr_new_from_opts(opts, NULL, NULL); in char_console_test_subprocess() 92 g_assert_nonnull(chr); in char_console_test_subprocess() 94 qemu_chr_write_all(chr, (const uint8_t *)"CONSOLE", 7); in char_console_test_subprocess() 97 object_unparent(OBJECT(chr)); in char_console_test_subprocess() 109 Chardev *chr; in char_stdio_test_subprocess() local 113 chr = qemu_chr_new("label", "stdio", NULL); in char_stdio_test_subprocess() 114 g_assert_nonnull(chr); in char_stdio_test_subprocess() 116 qemu_chr_fe_init(&be, chr, &error_abort); in char_stdio_test_subprocess() 134 Chardev *chr; in char_ringbuf_test() local [all …]
|
H A D | test-yank.c | 67 Chardev *chr; in char_change_test() local 137 chr = qemu_chr_find("chardev"); in char_change_test() 138 g_assert_nonnull(chr); in char_change_test() 142 qemu_chr_wait_connected(chr, &error_abort); in char_change_test() 147 qemu_chr_fe_init(&be, chr, &error_abort); in char_change_test() 157 g_assert(be.chr == chr); in char_change_test() 171 g_assert(be.chr != chr); in char_change_test() 175 object_unparent(OBJECT(be.chr)); in char_change_test()
|
/openbmc/qemu/ui/ |
H A D | dbus-chardev.c | 37 dbus_display_chardev_path(DBusChardev *chr) in dbus_display_chardev_path() argument 40 CHARDEV(chr)->label); in dbus_display_chardev_path() 44 dbus_display_chardev_export(DBusDisplay *dpy, DBusChardev *chr) in dbus_display_chardev_export() argument 47 g_autofree char *path = dbus_display_chardev_path(chr); in dbus_display_chardev_export() 49 if (chr->exported) { in dbus_display_chardev_export() 55 sk, G_DBUS_INTERFACE_SKELETON(chr->iface)); in dbus_display_chardev_export() 57 chr->exported = true; in dbus_display_chardev_export() 61 dbus_display_chardev_unexport(DBusDisplay *dpy, DBusChardev *chr) in dbus_display_chardev_unexport() argument 63 g_autofree char *path = dbus_display_chardev_path(chr); in dbus_display_chardev_unexport() 65 if (!chr->exported) { in dbus_display_chardev_unexport() [all …]
|
H A D | curses.c | 240 int chr, enum maybe_keycode maybe_keycode) in curses2foo() argument 244 if (chr < CURSES_CHARS) { in curses2foo() 245 ret = _curses2foo[chr]; in curses2foo() 248 if (chr < CURSES_KEYS) { in curses2foo() 249 ret = _curseskey2foo[chr]; in curses2foo() 252 chr < CURSES_CHARS) { in curses2foo() 253 ret = _curses2foo[chr]; in curses2foo() 259 #define curses2keycode(chr, maybe_keycode) \ argument 260 curses2foo(_curses2keycode, _curseskey2keycode, chr, maybe_keycode) 261 #define curses2keysym(chr, maybe_keycode) \ argument [all …]
|
/openbmc/qemu/include/chardev/ |
H A D | char.h | 57 #define qemu_chr_replay(chr) qemu_chr_has_feature(chr, QEMU_CHAR_FEATURE_REPLAY) argument 220 bool qemu_chr_has_feature(Chardev *chr, 222 void qemu_chr_set_feature(Chardev *chr, 228 int qemu_chr_wait_connected(Chardev *chr, Error **errp); 247 #define CHARDEV_IS_RINGBUF(chr) \ argument 248 object_dynamic_cast(OBJECT(chr), TYPE_CHARDEV_RINGBUF) 249 #define CHARDEV_IS_PTY(chr) \ argument 250 object_dynamic_cast(OBJECT(chr), TYPE_CHARDEV_PTY) 262 void (*open)(Chardev *chr, ChardevBackend *backend, 290 int (*chr_add_client)(Chardev *chr, int fd); [all …]
|
/openbmc/qemu/net/ |
H A D | vhost-user.c | 26 CharBackend chr; /* only queue index 0 */ member 174 qemu_chr_fe_deinit(&s->chr, true); in net_vhost_user_cleanup() 240 qemu_chr_fe_disconnect(&s->chr); in net_vhost_user_watch() 268 qemu_chr_fe_set_handlers(&s->chr, NULL, NULL, net_vhost_user_event, in chr_closed_bh() 281 Chardev *chr; in net_vhost_user_event() local 291 chr = qemu_chr_fe_get_driver(&s->chr); in net_vhost_user_event() 292 trace_vhost_user_event(chr->label, event); in net_vhost_user_event() 296 qemu_chr_fe_disconnect(&s->chr); in net_vhost_user_event() 299 s->watch = qemu_chr_fe_add_watch(&s->chr, G_IO_HUP, in net_vhost_user_event() 315 qemu_chr_fe_set_handlers(&s->chr, NULL, NULL, NULL, NULL, in net_vhost_user_event() [all …]
|
/openbmc/qemu/include/sysemu/ |
H A D | tpm.h | 53 #define TPM_IS_TIS_ISA(chr) \ argument 54 object_dynamic_cast(OBJECT(chr), TYPE_TPM_TIS_ISA) 55 #define TPM_IS_TIS_SYSBUS(chr) \ argument 56 object_dynamic_cast(OBJECT(chr), TYPE_TPM_TIS_SYSBUS) 57 #define TPM_IS_CRB(chr) \ argument 58 object_dynamic_cast(OBJECT(chr), TYPE_TPM_CRB) 59 #define TPM_IS_SPAPR(chr) \ argument 60 object_dynamic_cast(OBJECT(chr), TYPE_TPM_SPAPR) 61 #define TPM_IS_TIS_I2C(chr) \ argument 62 object_dynamic_cast(OBJECT(chr), TYPE_TPM_TIS_I2C)
|
/openbmc/qemu/backends/ |
H A D | rng-egd.c | 27 CharBackend chr; member 46 qemu_chr_fe_write_all(&s->chr, header, sizeof(header)); in rng_egd_request_entropy() 90 Chardev *chr; in rng_egd_opened() local 98 chr = qemu_chr_find(s->chr_name); in rng_egd_opened() 99 if (chr == NULL) { in rng_egd_opened() 104 if (!qemu_chr_fe_init(&s->chr, chr, errp)) { in rng_egd_opened() 109 qemu_chr_fe_set_handlers(&s->chr, rng_egd_chr_can_read, in rng_egd_opened() 129 Chardev *chr = qemu_chr_fe_get_driver(&s->chr); in rng_egd_get_chardev() local 131 if (chr && chr->label) { in rng_egd_get_chardev() 132 return g_strdup(chr->label); in rng_egd_get_chardev() [all …]
|
H A D | vhost-user.c | 31 if (!vhost_user_init(&b->vhost_user, &b->chr, errp)) { in vhost_user_backend_dev_init() 129 Chardev *chr; in set_chardev() local 139 chr = qemu_chr_find(b->chr_name); in set_chardev() 140 if (chr == NULL) { in set_chardev() 146 if (!qemu_chr_fe_init(&b->chr, chr, errp)) { in set_chardev() 157 Chardev *chr = qemu_chr_fe_get_driver(&b->chr); in get_chardev() local 159 if (chr && chr->label) { in get_chardev() 160 return g_strdup(chr->label); in get_chardev() 179 qemu_chr_fe_deinit(&b->chr, true); in vhost_user_backend_finalize()
|
H A D | cryptodev-vhost-user.c | 49 CharBackend chr; member 136 Chardev *chr; in cryptodev_vhost_claim_chardev() local 144 chr = qemu_chr_find(s->chr_name); in cryptodev_vhost_claim_chardev() 145 if (chr == NULL) { in cryptodev_vhost_claim_chardev() 151 return chr; in cryptodev_vhost_claim_chardev() 187 Chardev *chr; in cryptodev_vhost_user_init() local 192 chr = cryptodev_vhost_claim_chardev(s, &local_err); in cryptodev_vhost_user_init() 203 i, chr->label); in cryptodev_vhost_user_init() 210 if (!qemu_chr_fe_init(&s->chr, chr, errp)) { in cryptodev_vhost_user_init() 216 if (!vhost_user_init(&s->vhost_user, &s->chr, errp)) { in cryptodev_vhost_user_init() [all …]
|
/openbmc/qemu/hw/char/ |
H A D | virtio-console.c | 33 CharBackend chr; member 58 if (!qemu_chr_fe_backend_connected(&vcon->chr)) { in flush_buf() 63 ret = qemu_chr_fe_write(&vcon->chr, buf, len); in flush_buf() 101 vcon->watch = qemu_chr_fe_add_watch(&vcon->chr, in flush_buf() 118 qemu_chr_fe_set_open(&vcon->chr, guest_connected); in set_guest_connected() 130 qemu_chr_fe_accept_input(&vcon->chr); in guest_writable() 183 qemu_chr_fe_set_handlers(&vcon->chr, chr_can_read, chr_read, in chr_be_change() 186 qemu_chr_fe_set_handlers(&vcon->chr, chr_can_read, chr_read, in chr_be_change() 192 vcon->watch = qemu_chr_fe_add_watch(&vcon->chr, in chr_be_change() 204 if (!qemu_chr_fe_backend_connected(&vcon->chr)) { in virtconsole_enable_backend() [all …]
|
/openbmc/qemu/semihosting/ |
H A D | console.c | 33 Chardev *chr; member 111 if (console.chr) { in qemu_semihosting_console_write() 112 int r = qemu_chr_write_all(console.chr, (uint8_t *)buf, len); in qemu_semihosting_console_write() 119 void qemu_semihosting_console_init(Chardev *chr) in qemu_semihosting_console_init() argument 121 console.chr = chr; in qemu_semihosting_console_init() 122 if (chr) { in qemu_semihosting_console_init() 124 qemu_chr_fe_init(&console.backend, chr, &error_abort); in qemu_semihosting_console_init()
|