Re: [PATCH]Add VT1613 AC97 codec support

2015-03-06 Thread Takashi Iwai
At Fri, 06 Mar 2015 16:59:00 +0100,
Maciej S. Szmigiero wrote:
> 
> Patch to add an VT1613 AC97 codec support.
> 
> This codec has additional DC offset removal control,
> headphone output and no video input.
> 
> Signed-off-by: Maciej Szmigiero 

Applied, thanks.


Takashi

> 
> diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
> index 5ee2f17..5bca1a3 100644
> --- a/sound/pci/ac97/ac97_codec.c
> +++ b/sound/pci/ac97/ac97_codec.c
> @@ -177,6 +177,7 @@ static const struct ac97_codec_id snd_ac97_codec_ids[] = {
>  { 0x54524123, 0x, "TR28602", NULL,   NULL }, // only 
> guess --jk [TR28023 = eMicro EM28023 (new CT1297)]
>  { 0x54584e03, 0x, "TLV320AIC27", NULL,   NULL },
>  { 0x54584e20, 0x, "TLC320AD9xC", NULL,   NULL },
> +{ 0x56494120, 0xfff0, "VIA1613", patch_vt1613,   NULL },
>  { 0x56494161, 0x, "VIA1612A",NULL,   NULL }, 
> // modified ICE1232 with S/PDIF
>  { 0x56494170, 0x, "VIA1617A",patch_vt1617a,  NULL }, 
> // modified VT1616 with S/PDIF
>  { 0x56494182, 0x, "VIA1618", patch_vt1618,   NULL },
> diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c
> index ceaac1c..eca2210 100644
> --- a/sound/pci/ac97/ac97_patch.c
> +++ b/sound/pci/ac97/ac97_patch.c
> @@ -3352,6 +3352,39 @@ static int patch_cm9780(struct snd_ac97 *ac97)
>  }
>  
>  /*
> + * VIA VT1613 codec
> + */
> +static const struct snd_kcontrol_new snd_ac97_controls_vt1613[] = {
> +AC97_SINGLE("DC Offset removal", 0x5a, 10, 1, 0),
> +};
> +
> +static int patch_vt1613_specific(struct snd_ac97 *ac97)
> +{
> + int err;
> +
> + err = patch_build_controls(ac97, _ac97_controls_vt1613[0],
> + ARRAY_SIZE(snd_ac97_controls_vt1613));
> + if (err)
> + return err;
> +
> + return 0;
> +};
> +
> +static const struct snd_ac97_build_ops patch_vt1613_ops = {
> + .build_specific = patch_vt1613_specific
> +};
> +
> +static int patch_vt1613(struct snd_ac97 *ac97)
> +{
> + ac97->build_ops = _vt1613_ops;
> +
> + ac97->flags |= AC97_HAS_NO_VIDEO;
> + ac97->caps |= AC97_BC_HEADPHONE;
> +
> + return 0;
> +}
> +
> +/*
>   * VIA VT1616 codec
>   */
>  static const struct snd_kcontrol_new snd_ac97_controls_vt1616[] = {
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH]Add VT1613 AC97 codec support

2015-03-06 Thread Maciej S. Szmigiero
Patch to add an VT1613 AC97 codec support.

This codec has additional DC offset removal control,
headphone output and no video input.

Signed-off-by: Maciej Szmigiero 

diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
index 5ee2f17..5bca1a3 100644
--- a/sound/pci/ac97/ac97_codec.c
+++ b/sound/pci/ac97/ac97_codec.c
@@ -177,6 +177,7 @@ static const struct ac97_codec_id snd_ac97_codec_ids[] = {
 { 0x54524123, 0x, "TR28602",   NULL,   NULL }, // only 
guess --jk [TR28023 = eMicro EM28023 (new CT1297)]
 { 0x54584e03, 0x, "TLV320AIC27",   NULL,   NULL },
 { 0x54584e20, 0x, "TLC320AD9xC",   NULL,   NULL },
+{ 0x56494120, 0xfff0, "VIA1613",   patch_vt1613,   NULL },
 { 0x56494161, 0x, "VIA1612A",  NULL,   NULL }, // 
modified ICE1232 with S/PDIF
 { 0x56494170, 0x, "VIA1617A",  patch_vt1617a,  NULL }, // 
modified VT1616 with S/PDIF
 { 0x56494182, 0x, "VIA1618",   patch_vt1618,   NULL },
diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c
index ceaac1c..eca2210 100644
--- a/sound/pci/ac97/ac97_patch.c
+++ b/sound/pci/ac97/ac97_patch.c
@@ -3352,6 +3352,39 @@ static int patch_cm9780(struct snd_ac97 *ac97)
 }
 
 /*
+ * VIA VT1613 codec
+ */
+static const struct snd_kcontrol_new snd_ac97_controls_vt1613[] = {
+AC97_SINGLE("DC Offset removal", 0x5a, 10, 1, 0),
+};
+
+static int patch_vt1613_specific(struct snd_ac97 *ac97)
+{
+   int err;
+
+   err = patch_build_controls(ac97, _ac97_controls_vt1613[0],
+   ARRAY_SIZE(snd_ac97_controls_vt1613));
+   if (err)
+   return err;
+
+   return 0;
+};
+
+static const struct snd_ac97_build_ops patch_vt1613_ops = {
+   .build_specific = patch_vt1613_specific
+};
+
+static int patch_vt1613(struct snd_ac97 *ac97)
+{
+   ac97->build_ops = _vt1613_ops;
+
+   ac97->flags |= AC97_HAS_NO_VIDEO;
+   ac97->caps |= AC97_BC_HEADPHONE;
+
+   return 0;
+}
+
+/*
  * VIA VT1616 codec
  */
 static const struct snd_kcontrol_new snd_ac97_controls_vt1616[] = {

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH]Add VT1613 AC97 codec support

2015-03-06 Thread Maciej S. Szmigiero
Patch to add an VT1613 AC97 codec support.

This codec has additional DC offset removal control,
headphone output and no video input.

Signed-off-by: Maciej Szmigiero m...@maciej.szmigiero.name

diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
index 5ee2f17..5bca1a3 100644
--- a/sound/pci/ac97/ac97_codec.c
+++ b/sound/pci/ac97/ac97_codec.c
@@ -177,6 +177,7 @@ static const struct ac97_codec_id snd_ac97_codec_ids[] = {
 { 0x54524123, 0x, TR28602,   NULL,   NULL }, // only 
guess --jk [TR28023 = eMicro EM28023 (new CT1297)]
 { 0x54584e03, 0x, TLV320AIC27,   NULL,   NULL },
 { 0x54584e20, 0x, TLC320AD9xC,   NULL,   NULL },
+{ 0x56494120, 0xfff0, VIA1613,   patch_vt1613,   NULL },
 { 0x56494161, 0x, VIA1612A,  NULL,   NULL }, // 
modified ICE1232 with S/PDIF
 { 0x56494170, 0x, VIA1617A,  patch_vt1617a,  NULL }, // 
modified VT1616 with S/PDIF
 { 0x56494182, 0x, VIA1618,   patch_vt1618,   NULL },
diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c
index ceaac1c..eca2210 100644
--- a/sound/pci/ac97/ac97_patch.c
+++ b/sound/pci/ac97/ac97_patch.c
@@ -3352,6 +3352,39 @@ static int patch_cm9780(struct snd_ac97 *ac97)
 }
 
 /*
+ * VIA VT1613 codec
+ */
+static const struct snd_kcontrol_new snd_ac97_controls_vt1613[] = {
+AC97_SINGLE(DC Offset removal, 0x5a, 10, 1, 0),
+};
+
+static int patch_vt1613_specific(struct snd_ac97 *ac97)
+{
+   int err;
+
+   err = patch_build_controls(ac97, snd_ac97_controls_vt1613[0],
+   ARRAY_SIZE(snd_ac97_controls_vt1613));
+   if (err)
+   return err;
+
+   return 0;
+};
+
+static const struct snd_ac97_build_ops patch_vt1613_ops = {
+   .build_specific = patch_vt1613_specific
+};
+
+static int patch_vt1613(struct snd_ac97 *ac97)
+{
+   ac97-build_ops = patch_vt1613_ops;
+
+   ac97-flags |= AC97_HAS_NO_VIDEO;
+   ac97-caps |= AC97_BC_HEADPHONE;
+
+   return 0;
+}
+
+/*
  * VIA VT1616 codec
  */
 static const struct snd_kcontrol_new snd_ac97_controls_vt1616[] = {

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH]Add VT1613 AC97 codec support

2015-03-06 Thread Takashi Iwai
At Fri, 06 Mar 2015 16:59:00 +0100,
Maciej S. Szmigiero wrote:
 
 Patch to add an VT1613 AC97 codec support.
 
 This codec has additional DC offset removal control,
 headphone output and no video input.
 
 Signed-off-by: Maciej Szmigiero m...@maciej.szmigiero.name

Applied, thanks.


Takashi

 
 diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
 index 5ee2f17..5bca1a3 100644
 --- a/sound/pci/ac97/ac97_codec.c
 +++ b/sound/pci/ac97/ac97_codec.c
 @@ -177,6 +177,7 @@ static const struct ac97_codec_id snd_ac97_codec_ids[] = {
  { 0x54524123, 0x, TR28602, NULL,   NULL }, // only 
 guess --jk [TR28023 = eMicro EM28023 (new CT1297)]
  { 0x54584e03, 0x, TLV320AIC27, NULL,   NULL },
  { 0x54584e20, 0x, TLC320AD9xC, NULL,   NULL },
 +{ 0x56494120, 0xfff0, VIA1613, patch_vt1613,   NULL },
  { 0x56494161, 0x, VIA1612A,NULL,   NULL }, 
 // modified ICE1232 with S/PDIF
  { 0x56494170, 0x, VIA1617A,patch_vt1617a,  NULL }, 
 // modified VT1616 with S/PDIF
  { 0x56494182, 0x, VIA1618, patch_vt1618,   NULL },
 diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c
 index ceaac1c..eca2210 100644
 --- a/sound/pci/ac97/ac97_patch.c
 +++ b/sound/pci/ac97/ac97_patch.c
 @@ -3352,6 +3352,39 @@ static int patch_cm9780(struct snd_ac97 *ac97)
  }
  
  /*
 + * VIA VT1613 codec
 + */
 +static const struct snd_kcontrol_new snd_ac97_controls_vt1613[] = {
 +AC97_SINGLE(DC Offset removal, 0x5a, 10, 1, 0),
 +};
 +
 +static int patch_vt1613_specific(struct snd_ac97 *ac97)
 +{
 + int err;
 +
 + err = patch_build_controls(ac97, snd_ac97_controls_vt1613[0],
 + ARRAY_SIZE(snd_ac97_controls_vt1613));
 + if (err)
 + return err;
 +
 + return 0;
 +};
 +
 +static const struct snd_ac97_build_ops patch_vt1613_ops = {
 + .build_specific = patch_vt1613_specific
 +};
 +
 +static int patch_vt1613(struct snd_ac97 *ac97)
 +{
 + ac97-build_ops = patch_vt1613_ops;
 +
 + ac97-flags |= AC97_HAS_NO_VIDEO;
 + ac97-caps |= AC97_BC_HEADPHONE;
 +
 + return 0;
 +}
 +
 +/*
   * VIA VT1616 codec
   */
  static const struct snd_kcontrol_new snd_ac97_controls_vt1616[] = {
 
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/