Re: [PATCH 0/4] More aggressive PM for HD-audio

David Henningsson
2015-03-20T16:20:51Z

On 2015-03-18 09:50, Takashi Iwai wrote:
> Hi,
>
> here is a patchset for supporting more aggressive PM for HD-audio.
> This allows to change the power state of each widget more dynamically
> with jack and stream states. It's activated only when the codec
> driver (or via sysfs or f/w patch) sets codec->power_mgmt flag.
>
> In theory, this should work for the recent Realtek codecs, but
> currently I have no machine for test.
>
> David, could you or your team check whether this works for ALC282 or
> such? Just add like:
>
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -5415,6 +5415,7 @@ static int patch_alc269(struct hda_codec *codec)
>
> spec = codec->spec;
> spec->gen.shared_mic_vref_pin = 0x18;
> + codec->power_mgmt = 1;
>
> snd_hda_pick_fixup(codec, alc269_fixup_models,
> alc269_fixup_tbl, alc269_fixups);
>
>
> The patchset is for for-next branch of sound git tree, but they might
> be applicable to 4.0-rc (or even older), too. The current patches are
> found in topic/hda-power branch.

So I hoped to be able to look at this today, but it turns out the
machine I was thinking of using for testing has an ALC262 codec, which
hardly counts as "new".

Hui, is this something you feel like taking on? Otherwise I'll try to
talk to someone in Taipei.

Anyhow, after reading through the code, I have a question about LEDs. It
could be that if vref is used for controlling a LED, maybe that pin
needs to stay in D0 for the LED to stay lit. Is this correctly handled?
I couldn't find any code specific to that issue, but maybe I just missed it.

Also, I find the power_mgmt name easy to confuse with the existing
power_save parameter, perhaps power_save_pin, power_save_node or
power_save_widget is better?

>
>
> thanks,
>
> Takashi
>
> ===
>
> Takashi Iwai (4):
> ALSA: hda - Simplify PCM setup overrides
> ALSA: hda - Support advanced power state controls
> ALSA: hda - Use the new power control for VIA codecs
> ALSA: hda - Adjust power of beep widget and outputs
>
> sound/pci/hda/hda_beep.c | 29 +-
> sound/pci/hda/hda_beep.h | 1 +
> sound/pci/hda/hda_codec.c | 4 +
> sound/pci/hda/hda_codec.h | 2 +
> sound/pci/hda/hda_generic.c | 480 ++++++++++++++++++++++++------
> sound/pci/hda/hda_generic.h | 5 +-
> sound/pci/hda/patch_realtek.c | 41 ---
> sound/pci/hda/patch_sigmatel.c | 5 +
> sound/pci/hda/patch_via.c | 662 +----------------------------------------
> 9 files changed, 427 insertions(+), 802 deletions(-)
>

--
David Henningsson, Canonical Ltd.