[libvirt] PATCH: 25/25: Support ac97 sound card

Pritesh Kothari Pritesh.Kothari at Sun.COM
Tue Mar 10 10:46:13 UTC 2009


Hi All,

Small patch for updating the schema file and testcase for the same:

diff --git a/docs/schemas/domain.rng b/docs/schemas/domain.rng
index 2e2e408..107215c 100644
--- a/docs/schemas/domain.rng
+++ b/docs/schemas/domain.rng
@@ -874,6 +874,7 @@
           <value>sb16</value>
           <value>es1370</value>
           <value>pcspk</value>
+          <value>ac97</value>
         </choice>
       </attribute>
     </element>
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-sound.xml 
b/tests/qemuxml2argvdata/qemuxml2argv-sound.xml
index cc85c53..8c33e6c 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-sound.xml
+++ b/tests/qemuxml2argvdata/qemuxml2argv-sound.xml
@@ -21,5 +21,6 @@
     <sound model='pcspk'/>
     <sound model='es1370'/>
     <sound model='sb16'/>
+    <sound model='ac97'/>
   </devices>
 </domain>

Regards,
-pritesh

On Tuesday 13 January 2009 18:49:02 Daniel P. Berrange wrote:
> QEMU now has support for a sound card of type "ac97", so enable
> that in the XML parser / qemu driver.
>
> Also remove some unused cruft relating to sound in Xen.
>
>  domain_conf.c   |    3 ++-
>  domain_conf.h   |    1 +
>  xend_internal.c |   46 ----------------------------------------------
>  3 files changed, 3 insertions(+), 47 deletions(-)
>
> Daniel
>
> diff --git a/src/domain_conf.c b/src/domain_conf.c
> --- a/src/domain_conf.c
> +++ b/src/domain_conf.c
> @@ -121,7 +121,8 @@ VIR_ENUM_IMPL(virDomainChr, VIR_DOMAIN_C
>  VIR_ENUM_IMPL(virDomainSoundModel, VIR_DOMAIN_SOUND_MODEL_LAST,
>                "sb16",
>                "es1370",
> -              "pcspk")
> +              "pcspk",
> +              "ac97")
>
>  VIR_ENUM_IMPL(virDomainInput, VIR_DOMAIN_INPUT_TYPE_LAST,
>                "mouse",
> diff --git a/src/domain_conf.h b/src/domain_conf.h
> --- a/src/domain_conf.h
> +++ b/src/domain_conf.h
> @@ -236,6 +236,7 @@ enum virDomainSoundModel {
>      VIR_DOMAIN_SOUND_MODEL_SB16,
>      VIR_DOMAIN_SOUND_MODEL_ES1370,
>      VIR_DOMAIN_SOUND_MODEL_PCSPK,
> +    VIR_DOMAIN_SOUND_MODEL_ES97,
>
>      VIR_DOMAIN_SOUND_MODEL_LAST
>  };
> diff --git a/src/xend_internal.c b/src/xend_internal.c
> --- a/src/xend_internal.c
> +++ b/src/xend_internal.c
> @@ -713,52 +713,6 @@ urlencode(const char *string)
>  }
>  #endif /* ! PROXY */
>
> -/* Applicable sound models */
> -static const char *const sound_models[] = { "sb16", "es1370" };
> -
> -/**
> - * is_sound_model_valid:
> - * @model : model string to check against whitelist
> - *
> - * checks passed model string against whitelist of acceptable models
> - *
> - * Returns 0 if invalid, 1 otherwise
> - */
> -int is_sound_model_valid(const char *model) {
> -    int i;
> -
> -    for (i = 0; i < sizeof(sound_models)/sizeof(*sound_models); ++i) {
> -        if (STREQ(model, sound_models[i])) {
> -            return 1;
> -        }
> -    }
> -    return 0;
> -}
> -
> -/**
> - * is_sound_model_conflict:
> - * @model : model string to look for duplicates of
> - * @soundstr : soundhw string for the form m1,m2,m3 ...
> - *
> - * Returns 0 if no conflict, 1 otherwise
> - */
> -int is_sound_model_conflict(const char *model, const char *soundstr) {
> -
> -    char *dupe;
> -    char *cur = (char *) soundstr;
> -    while ((dupe = strstr(cur, model))) {
> -        if (( (dupe == cur) ||                     // (Start of line |
> -              (*(dupe - 1) == ',') ) &&            //  Preceded by comma)
> & -            ( (dupe[strlen(model)] == ',') ||      // (Ends with comma |
> -               (dupe[strlen(model)] == '\0') ))    //  Ends whole string)
> -            return 1;
> -        else
> -            cur = dupe + strlen(model);
> -    }
> -    return 0;
> -}
> -
> -
>  /* PUBLIC FUNCTIONS */
>
>  /**





More information about the libvir-list mailing list