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

David Henningsson
2015-03-18T19:34:37Z

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.

Cool. Could you elaborate on how the power_mgmt flag interacts with the
power_save module parameter (which, on Ubuntu, is set dynamically based
on AC power or not)? I e, does it make sense to test this both with and
without power_save enabled?

Also I assume power_save_controller should not matter, right?

>
> 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.
>
>
> 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(-)
>