Patchwork [REBASE/RESEND,2/4] virtio-serial: Add description fields for qdev properties

login
register
mail settings
Submitter Amit Shah
Date Feb. 4, 2011, 6:18 a.m.
Message ID <2b49a1453925f808405eb380cab2f45f10fb6a5f.1296800130.git.amit.shah@redhat.com>
Download mbox | patch
Permalink /patch/81808/
State New
Headers show

Comments

Amit Shah - Feb. 4, 2011, 6:18 a.m.
Document the parameters for the virtserialport and virtioconsole
devices.

Example:

$ ./x86_64-softmmu/qemu-system-x86_64 -device virtserialport,?
virtserialport.nr=uint32, The 'number' for the port for \
predictable port numbers. Use this to spawn ports if you \
plan to migrate the guest.

virtserialport.chardev=chr, The chardev to associate this port with.

virtserialport.name=string, Name for the port that's exposed to \
the guest for port discovery.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
---
 hw/virtio-console.c |   17 ++++++++++-------
 hw/virtio-serial.h  |   13 +++++++++++++
 2 files changed, 23 insertions(+), 7 deletions(-)
Anthony Liguori - Feb. 15, 2011, 4:10 p.m.
On 02/04/2011 12:18 AM, Amit Shah wrote:
> Document the parameters for the virtserialport and virtioconsole
> devices.
>
> Example:
>
> $ ./x86_64-softmmu/qemu-system-x86_64 -device virtserialport,?
> virtserialport.nr=uint32, The 'number' for the port for \
> predictable port numbers. Use this to spawn ports if you \
> plan to migrate the guest.
>
> virtserialport.chardev=chr, The chardev to associate this port with.
>
> virtserialport.name=string, Name for the port that's exposed to \
> the guest for port discovery.
>
> Signed-off-by: Amit Shah<amit.shah@redhat.com>
> Acked-by: Markus Armbruster<armbru@redhat.com>
> ---
>   hw/virtio-console.c |   17 ++++++++++-------
>   hw/virtio-serial.h  |   13 +++++++++++++
>   2 files changed, 23 insertions(+), 7 deletions(-)
>
> diff --git a/hw/virtio-console.c b/hw/virtio-console.c
> index a32e628..29e5600 100644
> --- a/hw/virtio-console.c
> +++ b/hw/virtio-console.c
> @@ -98,11 +98,13 @@ static VirtIOSerialPortInfo virtconsole_info = {
>       .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, 1,
> +                          PROP_VIRTSERIAL_IS_CONSOLE_DESC),
>           DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
> -                           ""),
> -        DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
> -        DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
> +                           PROP_VIRTSERIAL_NR_DESC),
> +        DEFINE_PROP_CHR("chardev", VirtConsole, chr, PROP_VIRTSERIAL_CHR_DESC),
> +        DEFINE_PROP_STRING("name", VirtConsole, port.name,
> +                           PROP_VIRTSERIAL_NAME_DESC),
>           DEFINE_PROP_END_OF_LIST(),
>       },
>   };
> @@ -129,9 +131,10 @@ static VirtIOSerialPortInfo virtserialport_info = {
>       .exit          = virtconsole_exitfn,
>       .qdev.props = (Property[]) {
>           DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
> -                           ""),
> -        DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
> -        DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
> +                           PROP_VIRTSERIAL_NR_DESC),
> +        DEFINE_PROP_CHR("chardev", VirtConsole, chr, PROP_VIRTSERIAL_CHR_DESC),
> +        DEFINE_PROP_STRING("name", VirtConsole, port.name,
> +                           PROP_VIRTSERIAL_NAME_DESC),
>           DEFINE_PROP_END_OF_LIST(),
>       },
>   };
> diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
> index a308196..2c5e336 100644
> --- a/hw/virtio-serial.h
> +++ b/hw/virtio-serial.h
> @@ -57,6 +57,19 @@ struct virtio_console_control {
>
>   /* == In-qemu interface == */
>
> +#define PROP_VIRTSERIAL_IS_CONSOLE_DESC                                 \
> +    "An hvc console will be spawned in the guest if this is set."
> +
> +#define PROP_VIRTSERIAL_NR_DESC                                         \
> +    "The 'number' for the port for predictable port numbers. Use this to " \
> +    "spawn ports if you plan to migrate the guest."
> +
> +#define PROP_VIRTSERIAL_CHR_DESC                \
> +    "The chardev to associate this port with."
> +
> +#define PROP_VIRTSERIAL_NAME_DESC                \
> +    "Name for the port that's exposed to the guest for port discovery."
> +
>    

Why are you using a #define instead of inlining the docs?

Regards,

Anthony Liguori

>   typedef struct VirtIOSerial VirtIOSerial;
>   typedef struct VirtIOSerialBus VirtIOSerialBus;
>   typedef struct VirtIOSerialPort VirtIOSerialPort;
>
Amit Shah - Feb. 17, 2011, 1:03 p.m.
On (Tue) 15 Feb 2011 [10:10:23], Anthony Liguori wrote:

> >diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
> >index a308196..2c5e336 100644
> >--- a/hw/virtio-serial.h
> >+++ b/hw/virtio-serial.h
> >@@ -57,6 +57,19 @@ struct virtio_console_control {
> >
> >  /* == In-qemu interface == */
> >
> >+#define PROP_VIRTSERIAL_IS_CONSOLE_DESC                                 \
> >+    "An hvc console will be spawned in the guest if this is set."
> >+
> >+#define PROP_VIRTSERIAL_NR_DESC                                         \
> >+    "The 'number' for the port for predictable port numbers. Use this to " \
> >+    "spawn ports if you plan to migrate the guest."
> >+
> >+#define PROP_VIRTSERIAL_CHR_DESC                \
> >+    "The chardev to associate this port with."
> >+
> >+#define PROP_VIRTSERIAL_NAME_DESC                \
> >+    "Name for the port that's exposed to the guest for port discovery."
> >+
> 
> Why are you using a #define instead of inlining the docs?

These are shared by the generic and console ports.

		Amit
Anthony Liguori - Feb. 17, 2011, 1:11 p.m.
On 02/17/2011 07:03 AM, Amit Shah wrote:
> On (Tue) 15 Feb 2011 [10:10:23], Anthony Liguori wrote:
>
>    
>>> diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
>>> index a308196..2c5e336 100644
>>> --- a/hw/virtio-serial.h
>>> +++ b/hw/virtio-serial.h
>>> @@ -57,6 +57,19 @@ struct virtio_console_control {
>>>
>>>   /* == In-qemu interface == */
>>>
>>> +#define PROP_VIRTSERIAL_IS_CONSOLE_DESC                                 \
>>> +    "An hvc console will be spawned in the guest if this is set."
>>> +
>>> +#define PROP_VIRTSERIAL_NR_DESC                                         \
>>> +    "The 'number' for the port for predictable port numbers. Use this to " \
>>> +    "spawn ports if you plan to migrate the guest."
>>> +
>>> +#define PROP_VIRTSERIAL_CHR_DESC                \
>>> +    "The chardev to associate this port with."
>>> +
>>> +#define PROP_VIRTSERIAL_NAME_DESC                \
>>> +    "Name for the port that's exposed to the guest for port discovery."
>>> +
>>>        
>> Why are you using a #define instead of inlining the docs?
>>      
> These are shared by the generic and console ports.
>    

Are the properties the same?  Should a common properties define be used 
like with network and disk devices?

Regards,

Anthony Liguori

> 		Amit
>
>
Amit Shah - Feb. 17, 2011, 1:39 p.m.
On (Thu) 17 Feb 2011 [07:11:44], Anthony Liguori wrote:
> On 02/17/2011 07:03 AM, Amit Shah wrote:
> >On (Tue) 15 Feb 2011 [10:10:23], Anthony Liguori wrote:
> >
> >>>diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
> >>>index a308196..2c5e336 100644
> >>>--- a/hw/virtio-serial.h
> >>>+++ b/hw/virtio-serial.h
> >>>@@ -57,6 +57,19 @@ struct virtio_console_control {
> >>>
> >>>  /* == In-qemu interface == */
> >>>
> >>>+#define PROP_VIRTSERIAL_IS_CONSOLE_DESC                                 \
> >>>+    "An hvc console will be spawned in the guest if this is set."
> >>>+
> >>>+#define PROP_VIRTSERIAL_NR_DESC                                         \
> >>>+    "The 'number' for the port for predictable port numbers. Use this to " \
> >>>+    "spawn ports if you plan to migrate the guest."
> >>>+
> >>>+#define PROP_VIRTSERIAL_CHR_DESC                \
> >>>+    "The chardev to associate this port with."
> >>>+
> >>>+#define PROP_VIRTSERIAL_NAME_DESC                \
> >>>+    "Name for the port that's exposed to the guest for port discovery."
> >>>+
> >>Why are you using a #define instead of inlining the docs?
> >These are shared by the generic and console ports.
> 
> Are the properties the same?  Should a common properties define be
> used like with network and disk devices?

Yes, that's something that needs to be done, at least for NR and NAME
properties.

		Amit

Patch

diff --git a/hw/virtio-console.c b/hw/virtio-console.c
index a32e628..29e5600 100644
--- a/hw/virtio-console.c
+++ b/hw/virtio-console.c
@@ -98,11 +98,13 @@  static VirtIOSerialPortInfo virtconsole_info = {
     .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, 1,
+                          PROP_VIRTSERIAL_IS_CONSOLE_DESC),
         DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
-                           ""),
-        DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
-        DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
+                           PROP_VIRTSERIAL_NR_DESC),
+        DEFINE_PROP_CHR("chardev", VirtConsole, chr, PROP_VIRTSERIAL_CHR_DESC),
+        DEFINE_PROP_STRING("name", VirtConsole, port.name,
+                           PROP_VIRTSERIAL_NAME_DESC),
         DEFINE_PROP_END_OF_LIST(),
     },
 };
@@ -129,9 +131,10 @@  static VirtIOSerialPortInfo virtserialport_info = {
     .exit          = virtconsole_exitfn,
     .qdev.props = (Property[]) {
         DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
-                           ""),
-        DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
-        DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
+                           PROP_VIRTSERIAL_NR_DESC),
+        DEFINE_PROP_CHR("chardev", VirtConsole, chr, PROP_VIRTSERIAL_CHR_DESC),
+        DEFINE_PROP_STRING("name", VirtConsole, port.name,
+                           PROP_VIRTSERIAL_NAME_DESC),
         DEFINE_PROP_END_OF_LIST(),
     },
 };
diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
index a308196..2c5e336 100644
--- a/hw/virtio-serial.h
+++ b/hw/virtio-serial.h
@@ -57,6 +57,19 @@  struct virtio_console_control {
 
 /* == In-qemu interface == */
 
+#define PROP_VIRTSERIAL_IS_CONSOLE_DESC                                 \
+    "An hvc console will be spawned in the guest if this is set."
+
+#define PROP_VIRTSERIAL_NR_DESC                                         \
+    "The 'number' for the port for predictable port numbers. Use this to " \
+    "spawn ports if you plan to migrate the guest."
+
+#define PROP_VIRTSERIAL_CHR_DESC                \
+    "The chardev to associate this port with."
+
+#define PROP_VIRTSERIAL_NAME_DESC                \
+    "Name for the port that's exposed to the guest for port discovery."
+
 typedef struct VirtIOSerial VirtIOSerial;
 typedef struct VirtIOSerialBus VirtIOSerialBus;
 typedef struct VirtIOSerialPort VirtIOSerialPort;