* [PATCH] hda: make a STAC_DELL_EQ option
@ 2008-11-03 13:12 Matthew Ranostay
2008-11-03 13:17 ` Takashi Iwai
0 siblings, 1 reply; 4+ messages in thread
From: Matthew Ranostay @ 2008-11-03 13:12 UTC (permalink / raw)
To: alsa-devel; +Cc: Takashi Iwai, Tellman, Steven, tim.gardner, Mario Limonciello
Add support for explicitly enabling the EQ distortion hack for
systems without software biquad support.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
---
diff --git a/pci/hda/patch_sigmatel.c b/pci/hda/patch_sigmatel.c
index c2f900f..2c0f37f 100644
--- a/pci/hda/patch_sigmatel.c
+++ b/pci/hda/patch_sigmatel.c
@@ -70,6 +70,7 @@ enum {
enum {
STAC_92HD73XX_REF,
STAC_DELL_M6,
+ STAC_DELL_EQ,
STAC_92HD73XX_MODELS
};
@@ -792,9 +793,7 @@ static struct hda_verb dell_eq_core_init[] = {
};
static struct hda_verb dell_m6_core_init[] = {
- /* set master volume to max value without distortion
- * and direct control */
- { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xec},
+ { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
/* setup audio connections */
{ 0x0d, AC_VERB_SET_CONNECT_SEL, 0x00},
{ 0x0a, AC_VERB_SET_CONNECT_SEL, 0x01},
@@ -1622,11 +1621,13 @@ static unsigned int dell_m6_pin_configs[13] = {
static unsigned int *stac92hd73xx_brd_tbl[STAC_92HD73XX_MODELS] = {
[STAC_92HD73XX_REF] = ref92hd73xx_pin_configs,
[STAC_DELL_M6] = dell_m6_pin_configs,
+ [STAC_DELL_EQ] = dell_m6_pin_configs,
};
static const char *stac92hd73xx_models[STAC_92HD73XX_MODELS] = {
[STAC_92HD73XX_REF] = "ref",
[STAC_DELL_M6] = "dell-m6",
+ [STAC_DELL_EQ] = "dell-eq",
};
static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
@@ -4274,12 +4275,17 @@ again:
sizeof(stac92hd73xx_dmux));
switch (spec->board_config) {
- case STAC_DELL_M6:
+ case STAC_DELL_EQ:
spec->init = dell_eq_core_init;
+ /* fallthru */
+ case STAC_DELL_M6:
spec->num_smuxes = 0;
spec->mixer = &stac92hd73xx_6ch_mixer[DELL_M6_MIXER];
spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP];
spec->num_amps = 1;
+
+ if (!spec->init)
+ spec->init = dell_m6_core_init;
switch (codec->subsystem_id) {
case 0x1028025e: /* Analog Mics */
case 0x1028025f:
@@ -4289,8 +4295,6 @@ again:
break;
case 0x10280271: /* Digital Mics */
case 0x10280272:
- spec->init = dell_m6_core_init;
- /* fall-through */
case 0x10280254:
case 0x10280255:
stac92xx_set_config_reg(codec, 0x13, 0x90A60160);
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] hda: make a STAC_DELL_EQ option
2008-11-03 13:12 [PATCH] hda: make a STAC_DELL_EQ option Matthew Ranostay
@ 2008-11-03 13:17 ` Takashi Iwai
2008-11-03 13:26 ` Matthew Ranostay
0 siblings, 1 reply; 4+ messages in thread
From: Takashi Iwai @ 2008-11-03 13:17 UTC (permalink / raw)
To: Matthew Ranostay
Cc: alsa-devel, tim.gardner, Tellman, Steven, Mario Limonciello
At Mon, 03 Nov 2008 08:12:43 -0500,
Matthew Ranostay wrote:
>
> Add support for explicitly enabling the EQ distortion hack for
> systems without software biquad support.
>
> Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Is it to be merged to 2.6.28, right?
How about the older kernels? To be sent to stable@kernel as well?
thanks,
Takashi
> ---
>
> diff --git a/pci/hda/patch_sigmatel.c b/pci/hda/patch_sigmatel.c
> index c2f900f..2c0f37f 100644
> --- a/pci/hda/patch_sigmatel.c
> +++ b/pci/hda/patch_sigmatel.c
> @@ -70,6 +70,7 @@ enum {
> enum {
> STAC_92HD73XX_REF,
> STAC_DELL_M6,
> + STAC_DELL_EQ,
> STAC_92HD73XX_MODELS
> };
>
> @@ -792,9 +793,7 @@ static struct hda_verb dell_eq_core_init[] = {
> };
>
> static struct hda_verb dell_m6_core_init[] = {
> - /* set master volume to max value without distortion
> - * and direct control */
> - { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xec},
> + { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
> /* setup audio connections */
> { 0x0d, AC_VERB_SET_CONNECT_SEL, 0x00},
> { 0x0a, AC_VERB_SET_CONNECT_SEL, 0x01},
> @@ -1622,11 +1621,13 @@ static unsigned int dell_m6_pin_configs[13] = {
> static unsigned int *stac92hd73xx_brd_tbl[STAC_92HD73XX_MODELS] = {
> [STAC_92HD73XX_REF] = ref92hd73xx_pin_configs,
> [STAC_DELL_M6] = dell_m6_pin_configs,
> + [STAC_DELL_EQ] = dell_m6_pin_configs,
> };
>
> static const char *stac92hd73xx_models[STAC_92HD73XX_MODELS] = {
> [STAC_92HD73XX_REF] = "ref",
> [STAC_DELL_M6] = "dell-m6",
> + [STAC_DELL_EQ] = "dell-eq",
> };
>
> static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
> @@ -4274,12 +4275,17 @@ again:
> sizeof(stac92hd73xx_dmux));
>
> switch (spec->board_config) {
> - case STAC_DELL_M6:
> + case STAC_DELL_EQ:
> spec->init = dell_eq_core_init;
> + /* fallthru */
> + case STAC_DELL_M6:
> spec->num_smuxes = 0;
> spec->mixer = &stac92hd73xx_6ch_mixer[DELL_M6_MIXER];
> spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP];
> spec->num_amps = 1;
> +
> + if (!spec->init)
> + spec->init = dell_m6_core_init;
> switch (codec->subsystem_id) {
> case 0x1028025e: /* Analog Mics */
> case 0x1028025f:
> @@ -4289,8 +4295,6 @@ again:
> break;
> case 0x10280271: /* Digital Mics */
> case 0x10280272:
> - spec->init = dell_m6_core_init;
> - /* fall-through */
> case 0x10280254:
> case 0x10280255:
> stac92xx_set_config_reg(codec, 0x13, 0x90A60160);
>
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] hda: make a STAC_DELL_EQ option
2008-11-03 13:17 ` Takashi Iwai
@ 2008-11-03 13:26 ` Matthew Ranostay
2008-11-03 13:28 ` Takashi Iwai
0 siblings, 1 reply; 4+ messages in thread
From: Matthew Ranostay @ 2008-11-03 13:26 UTC (permalink / raw)
To: Takashi Iwai; +Cc: alsa-devel, tim.gardner, Tellman, Steven, Mario Limonciello
Takashi Iwai wrote:
> At Mon, 03 Nov 2008 08:12:43 -0500,
> Matthew Ranostay wrote:
>> Add support for explicitly enabling the EQ distortion hack for
>> systems without software biquad support.
>>
>> Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
>
> Is it to be merged to 2.6.28, right?
That be best if we are still in that time window.
> How about the older kernels? To be sent to stable@kernel as well?
>
Yeah this would good as well. Should I forward it?
>
> thanks,
>
> Takashi
>
>> ---
>>
>> diff --git a/pci/hda/patch_sigmatel.c b/pci/hda/patch_sigmatel.c
>> index c2f900f..2c0f37f 100644
>> --- a/pci/hda/patch_sigmatel.c
>> +++ b/pci/hda/patch_sigmatel.c
>> @@ -70,6 +70,7 @@ enum {
>> enum {
>> STAC_92HD73XX_REF,
>> STAC_DELL_M6,
>> + STAC_DELL_EQ,
>> STAC_92HD73XX_MODELS
>> };
>>
>> @@ -792,9 +793,7 @@ static struct hda_verb dell_eq_core_init[] = {
>> };
>>
>> static struct hda_verb dell_m6_core_init[] = {
>> - /* set master volume to max value without distortion
>> - * and direct control */
>> - { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xec},
>> + { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
>> /* setup audio connections */
>> { 0x0d, AC_VERB_SET_CONNECT_SEL, 0x00},
>> { 0x0a, AC_VERB_SET_CONNECT_SEL, 0x01},
>> @@ -1622,11 +1621,13 @@ static unsigned int dell_m6_pin_configs[13] = {
>> static unsigned int *stac92hd73xx_brd_tbl[STAC_92HD73XX_MODELS] = {
>> [STAC_92HD73XX_REF] = ref92hd73xx_pin_configs,
>> [STAC_DELL_M6] = dell_m6_pin_configs,
>> + [STAC_DELL_EQ] = dell_m6_pin_configs,
>> };
>>
>> static const char *stac92hd73xx_models[STAC_92HD73XX_MODELS] = {
>> [STAC_92HD73XX_REF] = "ref",
>> [STAC_DELL_M6] = "dell-m6",
>> + [STAC_DELL_EQ] = "dell-eq",
>> };
>>
>> static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
>> @@ -4274,12 +4275,17 @@ again:
>> sizeof(stac92hd73xx_dmux));
>>
>> switch (spec->board_config) {
>> - case STAC_DELL_M6:
>> + case STAC_DELL_EQ:
>> spec->init = dell_eq_core_init;
>> + /* fallthru */
>> + case STAC_DELL_M6:
>> spec->num_smuxes = 0;
>> spec->mixer = &stac92hd73xx_6ch_mixer[DELL_M6_MIXER];
>> spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP];
>> spec->num_amps = 1;
>> +
>> + if (!spec->init)
>> + spec->init = dell_m6_core_init;
>> switch (codec->subsystem_id) {
>> case 0x1028025e: /* Analog Mics */
>> case 0x1028025f:
>> @@ -4289,8 +4295,6 @@ again:
>> break;
>> case 0x10280271: /* Digital Mics */
>> case 0x10280272:
>> - spec->init = dell_m6_core_init;
>> - /* fall-through */
>> case 0x10280254:
>> case 0x10280255:
>> stac92xx_set_config_reg(codec, 0x13, 0x90A60160);
>>
>
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] hda: make a STAC_DELL_EQ option
2008-11-03 13:26 ` Matthew Ranostay
@ 2008-11-03 13:28 ` Takashi Iwai
0 siblings, 0 replies; 4+ messages in thread
From: Takashi Iwai @ 2008-11-03 13:28 UTC (permalink / raw)
To: Matthew Ranostay
Cc: alsa-devel, tim.gardner, Tellman, Steven, Mario Limonciello
At Mon, 03 Nov 2008 08:26:39 -0500,
Matthew Ranostay wrote:
>
> Takashi Iwai wrote:
> > At Mon, 03 Nov 2008 08:12:43 -0500,
> > Matthew Ranostay wrote:
> >> Add support for explicitly enabling the EQ distortion hack for
> >> systems without software biquad support.
> >>
> >> Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
> >
> > Is it to be merged to 2.6.28, right?
> That be best if we are still in that time window.
Sure, such a trivial fix *must* go in.
> > How about the older kernels? To be sent to stable@kernel as well?
> >
> Yeah this would good as well. Should I forward it?
We can just 'Cc: stable@kernel.org' in the patch comment.
Then stable guys will pick it up automatically when committed to the
upstream.
thanks,
Takashi
>
> >
> > thanks,
> >
> > Takashi
> >
> >> ---
> >>
> >> diff --git a/pci/hda/patch_sigmatel.c b/pci/hda/patch_sigmatel.c
> >> index c2f900f..2c0f37f 100644
> >> --- a/pci/hda/patch_sigmatel.c
> >> +++ b/pci/hda/patch_sigmatel.c
> >> @@ -70,6 +70,7 @@ enum {
> >> enum {
> >> STAC_92HD73XX_REF,
> >> STAC_DELL_M6,
> >> + STAC_DELL_EQ,
> >> STAC_92HD73XX_MODELS
> >> };
> >>
> >> @@ -792,9 +793,7 @@ static struct hda_verb dell_eq_core_init[] = {
> >> };
> >>
> >> static struct hda_verb dell_m6_core_init[] = {
> >> - /* set master volume to max value without distortion
> >> - * and direct control */
> >> - { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xec},
> >> + { 0x1f, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
> >> /* setup audio connections */
> >> { 0x0d, AC_VERB_SET_CONNECT_SEL, 0x00},
> >> { 0x0a, AC_VERB_SET_CONNECT_SEL, 0x01},
> >> @@ -1622,11 +1621,13 @@ static unsigned int dell_m6_pin_configs[13] = {
> >> static unsigned int *stac92hd73xx_brd_tbl[STAC_92HD73XX_MODELS] = {
> >> [STAC_92HD73XX_REF] = ref92hd73xx_pin_configs,
> >> [STAC_DELL_M6] = dell_m6_pin_configs,
> >> + [STAC_DELL_EQ] = dell_m6_pin_configs,
> >> };
> >>
> >> static const char *stac92hd73xx_models[STAC_92HD73XX_MODELS] = {
> >> [STAC_92HD73XX_REF] = "ref",
> >> [STAC_DELL_M6] = "dell-m6",
> >> + [STAC_DELL_EQ] = "dell-eq",
> >> };
> >>
> >> static struct snd_pci_quirk stac92hd73xx_cfg_tbl[] = {
> >> @@ -4274,12 +4275,17 @@ again:
> >> sizeof(stac92hd73xx_dmux));
> >>
> >> switch (spec->board_config) {
> >> - case STAC_DELL_M6:
> >> + case STAC_DELL_EQ:
> >> spec->init = dell_eq_core_init;
> >> + /* fallthru */
> >> + case STAC_DELL_M6:
> >> spec->num_smuxes = 0;
> >> spec->mixer = &stac92hd73xx_6ch_mixer[DELL_M6_MIXER];
> >> spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP];
> >> spec->num_amps = 1;
> >> +
> >> + if (!spec->init)
> >> + spec->init = dell_m6_core_init;
> >> switch (codec->subsystem_id) {
> >> case 0x1028025e: /* Analog Mics */
> >> case 0x1028025f:
> >> @@ -4289,8 +4295,6 @@ again:
> >> break;
> >> case 0x10280271: /* Digital Mics */
> >> case 0x10280272:
> >> - spec->init = dell_m6_core_init;
> >> - /* fall-through */
> >> case 0x10280254:
> >> case 0x10280255:
> >> stac92xx_set_config_reg(codec, 0x13, 0x90A60160);
> >>
> >
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-11-03 13:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-03 13:12 [PATCH] hda: make a STAC_DELL_EQ option Matthew Ranostay
2008-11-03 13:17 ` Takashi Iwai
2008-11-03 13:26 ` Matthew Ranostay
2008-11-03 13:28 ` Takashi Iwai
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.