mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
Implement "info chardev" command. (Gerd Hoffmann)
This patch makes qemu keep track of the character devices in use and implements a "info chardev" monitor command to print a list. qemu_chr_open() sticks the devices into a linked list now. It got a new argument (label), so there is a name for each device. It also assigns a filename to each character device. By default it just copyes the filename passed in. Individual drivers can fill in something else though. qemu_chr_open_pty() sets the filename to name of the pseudo tty allocated. Output looks like this: (qemu) info chardev monitor: filename=unix:/tmp/run.sh-26827/monitor,server,nowait serial0: filename=unix:/tmp/run.sh-26827/console,server serial1: filename=pty:/dev/pts/5 parallel0: filename=vc:640x480 Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5575 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
1490791f61
commit
5ccfae10a7
5 changed files with 78 additions and 36 deletions
|
@ -521,6 +521,8 @@ USBDevice *usb_serial_init(const char *filename)
|
|||
USBSerialState *s;
|
||||
CharDriverState *cdrv;
|
||||
unsigned short vendorid = 0x0403, productid = 0x6001;
|
||||
char label[32];
|
||||
static int index;
|
||||
|
||||
while (*filename && *filename != ':') {
|
||||
const char *p;
|
||||
|
@ -555,7 +557,8 @@ USBDevice *usb_serial_init(const char *filename)
|
|||
if (!s)
|
||||
return NULL;
|
||||
|
||||
cdrv = qemu_chr_open(filename);
|
||||
snprintf(label, sizeof(label), "usbserial%d", index++);
|
||||
cdrv = qemu_chr_open(label, filename);
|
||||
if (!cdrv)
|
||||
goto fail;
|
||||
s->cs = cdrv;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue