mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
char: replace PROP_CHR with CharBackend
Store the property in a CharBackend instead of CharDriverState*. This also replace systematically chr by chr.chr to access the CharDriverState*. The following patches will replace it with calls to qemu_chr_fe CharBackend functions. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20161022095318.17775-12-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ecb672d14f
commit
becdfa00cf
37 changed files with 302 additions and 265 deletions
|
@ -39,7 +39,7 @@
|
|||
|
||||
typedef struct DebugconState {
|
||||
MemoryRegion io;
|
||||
CharDriverState *chr;
|
||||
CharBackend chr;
|
||||
uint32_t readback;
|
||||
} DebugconState;
|
||||
|
||||
|
@ -62,7 +62,7 @@ static void debugcon_ioport_write(void *opaque, hwaddr addr, uint64_t val,
|
|||
|
||||
/* XXX this blocks entire thread. Rewrite to use
|
||||
* qemu_chr_fe_write and background I/O callbacks */
|
||||
qemu_chr_fe_write_all(s->chr, &ch, 1);
|
||||
qemu_chr_fe_write_all(s->chr.chr, &ch, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -87,12 +87,12 @@ static const MemoryRegionOps debugcon_ops = {
|
|||
|
||||
static void debugcon_realize_core(DebugconState *s, Error **errp)
|
||||
{
|
||||
if (!s->chr) {
|
||||
if (!s->chr.chr) {
|
||||
error_setg(errp, "Can't create debugcon device, empty char device");
|
||||
return;
|
||||
}
|
||||
|
||||
qemu_chr_add_handlers(s->chr, NULL, NULL, NULL, s);
|
||||
qemu_chr_add_handlers(s->chr.chr, NULL, NULL, NULL, s);
|
||||
}
|
||||
|
||||
static void debugcon_isa_realizefn(DeviceState *dev, Error **errp)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue