mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
virtio-serial: Clean up virtconsole detection
virtio-serial-bus needs to treat "virtconsole" devices specially. It uses VirtIOSerialPort member is_console to recognize them. It gets its value via property initialization. Cute hack, except it lets users mess with it: "-device virtconsole,is_console=0" isn't plugged into port 0 as it should. Move the flag to VirtIOSerialPortInfo. Keep the property for backward compatibility; its value has no effect. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com>
This commit is contained in:
parent
5e52e5f903
commit
2a3d57ce42
3 changed files with 11 additions and 6 deletions
|
@ -91,7 +91,7 @@ static int virtconsole_initfn(VirtIOSerialPort *port)
|
|||
{
|
||||
VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
|
||||
|
||||
port->is_console = true;
|
||||
port->is_console_dummy = true;
|
||||
return generic_port_init(vcon, port);
|
||||
}
|
||||
|
||||
|
@ -113,10 +113,11 @@ static int virtconsole_exitfn(VirtIOSerialPort *port)
|
|||
static VirtIOSerialPortInfo virtconsole_info = {
|
||||
.qdev.name = "virtconsole",
|
||||
.qdev.size = sizeof(VirtConsole),
|
||||
.is_console = true,
|
||||
.init = virtconsole_initfn,
|
||||
.exit = virtconsole_exitfn,
|
||||
.qdev.props = (Property[]) {
|
||||
DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console, 1),
|
||||
DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console_dummy, 1),
|
||||
DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID),
|
||||
DEFINE_PROP_CHR("chardev", VirtConsole, chr),
|
||||
DEFINE_PROP_STRING("name", VirtConsole, port.name),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue