* [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
@ 2009-01-21 22:39 Matthew Ranostay
2009-01-22 6:43 ` Takashi Iwai
0 siblings, 1 reply; 6+ messages in thread
From: Matthew Ranostay @ 2009-01-21 22:39 UTC (permalink / raw)
To: alsa-devel; +Cc: Takashi Iwai
Some revisions of the 92hd8xxx codec's not supporting port power
downs in which the using of it causes capture and also randomly playback streams
to not function at all. Thus by disabling it by default and adding a
option to enable it manually will fix all issue on current and future revisions.
Signed-by-off: Matthew Ranostay <mranostay@embeddedalley.com>
---
diff --git a/Documentation/sound/alsa/HD-Audio-Models.txt b/Documentation/sound/alsa/HD-Audio-Models.txt
index 75914bc..2119175 100644
--- a/Documentation/sound/alsa/HD-Audio-Models.txt
+++ b/Documentation/sound/alsa/HD-Audio-Models.txt
@@ -349,6 +349,7 @@ STAC92HD73*
STAC92HD83*
===========
ref Reference board
+ mic-ref Reference board with power managment for ports
STAC9872
========
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index dbe8b12..a961c51 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -81,6 +81,7 @@ enum {
enum {
STAC_92HD83XXX_REF,
+ STAC_92HD83XXX_PWR_REF,
STAC_92HD83XXX_MODELS
};
@@ -334,7 +335,7 @@ static hda_nid_t stac92hd83xxx_slave_dig_outs[2] = {
};
static unsigned int stac92hd83xxx_pwr_mapping[4] = {
- 0x03, 0x0c, 0x20, 0x80,
+ 0x03, 0x0c, 0x20, 0x40,
};
static hda_nid_t stac92hd83xxx_amp_nids[1] = {
@@ -1734,10 +1735,12 @@ static unsigned int ref92hd83xxx_pin_configs[14] = {
static unsigned int *stac92hd83xxx_brd_tbl[STAC_92HD83XXX_MODELS] = {
[STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs,
+ [STAC_92HD83XXX_PWR_REF] = ref92hd83xxx_pin_configs,
};
static const char *stac92hd83xxx_models[STAC_92HD83XXX_MODELS] = {
[STAC_92HD83XXX_REF] = "ref",
+ [STAC_92HD83XXX_PWR_REF] = "mic-ref",
};
static struct snd_pci_quirk stac92hd83xxx_cfg_tbl[] = {
@@ -4781,13 +4784,6 @@ static int patch_stac92hd83xxx(struct hda_codec *codec)
AC_VERB_SET_CONNECT_SEL, num_dacs);
spec->init = stac92hd83xxx_core_init;
- switch (codec->vendor_id) {
- case 0x111d7605:
- break;
- default:
- spec->num_pwrs--;
- }
-
spec->mixer = stac92hd83xxx_mixer;
spec->num_pins = ARRAY_SIZE(stac92hd83xxx_pin_nids);
spec->num_dmuxes = ARRAY_SIZE(stac92hd83xxx_dmux_nids);
@@ -4813,6 +4809,15 @@ again:
return err;
}
+ switch (codec->vendor_id) {
+ case 0x111d7604:
+ case 0x111d7605:
+ if (spec->board_config == STAC_92HD83XXX_PWR_REF)
+ break;
+ spec->num_pwrs = 0;
+ break;
+ }
+
err = stac92xx_parse_auto_config(codec, 0x1d, 0);
if (!err) {
if (spec->board_config < 0) {
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
2009-01-21 22:39 [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk Matthew Ranostay
@ 2009-01-22 6:43 ` Takashi Iwai
2009-01-22 13:23 ` Matthew Ranostay
0 siblings, 1 reply; 6+ messages in thread
From: Takashi Iwai @ 2009-01-22 6:43 UTC (permalink / raw)
To: Matthew Ranostay; +Cc: alsa-devel
At Wed, 21 Jan 2009 17:39:43 -0500,
Matthew Ranostay wrote:
>
> @@ -334,7 +335,7 @@ static hda_nid_t stac92hd83xxx_slave_dig_outs[2] = {
> };
>
> static unsigned int stac92hd83xxx_pwr_mapping[4] = {
> - 0x03, 0x0c, 0x20, 0x80,
> + 0x03, 0x0c, 0x20, 0x40,
> };
What is this change?
thanks,
Takashi
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
2009-01-22 6:43 ` Takashi Iwai
@ 2009-01-22 13:23 ` Matthew Ranostay
2009-01-22 13:27 ` Takashi Iwai
0 siblings, 1 reply; 6+ messages in thread
From: Matthew Ranostay @ 2009-01-22 13:23 UTC (permalink / raw)
To: Takashi Iwai; +Cc: alsa-devel
Takashi Iwai wrote:
> At Wed, 21 Jan 2009 17:39:43 -0500,
> Matthew Ranostay wrote:
>> @@ -334,7 +335,7 @@ static hda_nid_t stac92hd83xxx_slave_dig_outs[2] = {
>> };
>>
>> static unsigned int stac92hd83xxx_pwr_mapping[4] = {
>> - 0x03, 0x0c, 0x20, 0x80,
>> + 0x03, 0x0c, 0x20, 0x40,
>> };
>
> What is this change?
>
>
>From my patch before I made a mistake, somehow I thought port 0xe was 0xf in that
change. Sorry for the inconvenience.
Thanks,
Matt
> thanks,
>
> Takashi
>
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
2009-01-22 13:23 ` Matthew Ranostay
@ 2009-01-22 13:27 ` Takashi Iwai
0 siblings, 0 replies; 6+ messages in thread
From: Takashi Iwai @ 2009-01-22 13:27 UTC (permalink / raw)
To: Matthew Ranostay; +Cc: alsa-devel
At Thu, 22 Jan 2009 08:23:03 -0500,
Matthew Ranostay wrote:
>
> Takashi Iwai wrote:
> > At Wed, 21 Jan 2009 17:39:43 -0500,
> > Matthew Ranostay wrote:
> >> @@ -334,7 +335,7 @@ static hda_nid_t stac92hd83xxx_slave_dig_outs[2] = {
> >> };
> >>
> >> static unsigned int stac92hd83xxx_pwr_mapping[4] = {
> >> - 0x03, 0x0c, 0x20, 0x80,
> >> + 0x03, 0x0c, 0x20, 0x40,
> >> };
> >
> > What is this change?
> >
> >
> From my patch before I made a mistake, somehow I thought port 0xe was 0xf in that
> change. Sorry for the inconvenience.
Well, if it's needed to be fixed, please create another patch, since
this change is basically independent from PWR_REF quirk.
Or, at least, include some proper description in changelog.
thanks,
Takashi
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
@ 2009-01-23 1:53 Matthew Ranostay
2009-01-23 7:45 ` Takashi Iwai
0 siblings, 1 reply; 6+ messages in thread
From: Matthew Ranostay @ 2009-01-23 1:53 UTC (permalink / raw)
To: alsa-devel; +Cc: Takashi Iwai
Some revisions of the 92hd8xxx codec's not supporting port power
downs in which the using of it causes capture and also randomly playback streams
to not function at all. Thus by disabling it by default and adding a
option to enable it manually will fix all issue on current and future revisions.
Signed-by-off: Matthew Ranostay <mranostay@embeddedalley.com>
---
diff --git a/Documentation/sound/alsa/HD-Audio-Models.txt b/Documentation/sound/alsa/HD-Audio-Models.txt
index 75914bc..2119175 100644
--- a/Documentation/sound/alsa/HD-Audio-Models.txt
+++ b/Documentation/sound/alsa/HD-Audio-Models.txt
@@ -349,6 +349,7 @@ STAC92HD73*
STAC92HD83*
===========
ref Reference board
+ mic-ref Reference board with power managment for ports
STAC9872
========
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index dbe8b12..156f6fa 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -81,6 +81,7 @@ enum {
enum {
STAC_92HD83XXX_REF,
+ STAC_92HD83XXX_PWR_REF,
STAC_92HD83XXX_MODELS
};
@@ -1734,10 +1735,12 @@ static unsigned int ref92hd83xxx_pin_configs[14] = {
static unsigned int *stac92hd83xxx_brd_tbl[STAC_92HD83XXX_MODELS] = {
[STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs,
+ [STAC_92HD83XXX_PWR_REF] = ref92hd83xxx_pin_configs,
};
static const char *stac92hd83xxx_models[STAC_92HD83XXX_MODELS] = {
[STAC_92HD83XXX_REF] = "ref",
+ [STAC_92HD83XXX_PWR_REF] = "mic-ref",
};
static struct snd_pci_quirk stac92hd83xxx_cfg_tbl[] = {
@@ -4781,13 +4784,6 @@ static int patch_stac92hd83xxx(struct hda_codec *codec)
AC_VERB_SET_CONNECT_SEL, num_dacs);
spec->init = stac92hd83xxx_core_init;
- switch (codec->vendor_id) {
- case 0x111d7605:
- break;
- default:
- spec->num_pwrs--;
- }
-
spec->mixer = stac92hd83xxx_mixer;
spec->num_pins = ARRAY_SIZE(stac92hd83xxx_pin_nids);
spec->num_dmuxes = ARRAY_SIZE(stac92hd83xxx_dmux_nids);
@@ -4813,6 +4809,15 @@ again:
return err;
}
+ switch (codec->vendor_id) {
+ case 0x111d7604:
+ case 0x111d7605:
+ if (spec->board_config == STAC_92HD83XXX_PWR_REF)
+ break;
+ spec->num_pwrs = 0;
+ break;
+ }
+
err = stac92xx_parse_auto_config(codec, 0x1d, 0);
if (!err) {
if (spec->board_config < 0) {
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk
2009-01-23 1:53 Matthew Ranostay
@ 2009-01-23 7:45 ` Takashi Iwai
0 siblings, 0 replies; 6+ messages in thread
From: Takashi Iwai @ 2009-01-23 7:45 UTC (permalink / raw)
To: Matthew Ranostay; +Cc: alsa-devel
At Thu, 22 Jan 2009 20:53:29 -0500,
Matthew Ranostay wrote:
>
> Some revisions of the 92hd8xxx codec's not supporting port power
> downs in which the using of it causes capture and also randomly playback streams
> to not function at all. Thus by disabling it by default and adding a
> option to enable it manually will fix all issue on current and future revisions.
>
> Signed-by-off: Matthew Ranostay <mranostay@embeddedalley.com>
A typo here :)
If you're using, you'd better to commit your change once to your local
tree via git commit -s, and make a patch via git format-patch or git
show --pretty=email.
Anyway applied with a fix. Thanks.
Takashi
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2009-01-23 7:45 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-21 22:39 [PATCH] hda: Add STAC92HD83XXX_PWR_REF quirk Matthew Ranostay
2009-01-22 6:43 ` Takashi Iwai
2009-01-22 13:23 ` Matthew Ranostay
2009-01-22 13:27 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2009-01-23 1:53 Matthew Ranostay
2009-01-23 7:45 ` 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.