[alsa-devel] [PATCH 2/2] ALSA: hda - reduce msleep time if EPSS power states supported

Wang Xingchao wangxingchao2011 at gmail.com
Thu Jun 7 09:26:18 CEST 2012


Hi David,


2012/6/7 David Henningsson <david.henningsson at canonical.com>:
> On 06/06/2012 04:02 PM, Wang Xingchao wrote:
>>
>> if EPSS supported, transition from D3 state to D0 state in less
>> than 10ms
>>
>> Signed-off-by: Wang Xingchao<xingchao.wang at intel.com>
>> ---
>>  sound/pci/hda/hda_codec.c |    6 +++++-
>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
>> index b89c8ec..5298ba1 100644
>> --- a/sound/pci/hda/hda_codec.c
>> +++ b/sound/pci/hda/hda_codec.c
>> @@ -3526,14 +3526,18 @@ static bool snd_hda_codec_get_supported_ps(struct
>> hda_codec *codec, hda_nid_t fg
>>  static void hda_set_power_state(struct hda_codec *codec, hda_nid_t fg,
>>                                unsigned int power_state)
>>  {
>> +       bool epss;
>>        if (codec->patch_ops.set_power_state) {
>>                codec->patch_ops.set_power_state(codec, fg, power_state);
>>                return;
>>        }
>>
>> +       epss = snd_hda_codec_get_supported_ps(codec, fg, AC_PWRST_EPSS);
>>        /* this delay seems necessary to avoid click noise at power-down */
>> -       if (power_state == AC_PWRST_D3)
>> +       if ((power_state == AC_PWRST_D3)&&  !epss)
>>
>>                msleep(100);
>> +       else
>> +               msleep(10);
>
>
> Hi Wang,
>
> You seem to have increased the delay from 0 to 10 ms on all cases when
> power_state != AC_PWRST_D3, is this intentional?

Thanks for clarification, it's a mistake here. Only transition from D0
to D3 need the delay to avoid click noise, there's no limitation
during power up.
i will update the patch based on your suggestion.

thanks
--xingchao

>
> Or did you mean to write like this:
>
>        if (power_state == AC_PWRST_D3) {
>                bool epss = snd_hda_codec_get_supported_ps(codec, fg,
> AC_PWRST_EPSS);
>                msleep(epss ? 10 : 100);
>        }
>
>
> --
> David Henningsson, Canonical Ltd.
> https://launchpad.net/~diwic


More information about the Alsa-devel mailing list