ALSA: hda - minor optimization in hda_set_power_state()
Check the target power-state before checking EAPD exception to reduce unneeded verb executions. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
b97bedcded
commit
a3b48c88f2
|
@ -2348,7 +2348,8 @@ static void hda_set_power_state(struct hda_codec *codec, hda_nid_t fg,
|
|||
if (wcaps & AC_WCAP_POWER) {
|
||||
unsigned int wid_type = (wcaps & AC_WCAP_TYPE) >>
|
||||
AC_WCAP_TYPE_SHIFT;
|
||||
if (wid_type == AC_WID_PIN) {
|
||||
if (power_state == AC_PWRST_D3 &&
|
||||
wid_type == AC_WID_PIN) {
|
||||
unsigned int pincap;
|
||||
/*
|
||||
* don't power down the widget if it controls
|
||||
|
@ -2360,7 +2361,7 @@ static void hda_set_power_state(struct hda_codec *codec, hda_nid_t fg,
|
|||
nid, 0,
|
||||
AC_VERB_GET_EAPD_BTLENABLE, 0);
|
||||
eapd &= 0x02;
|
||||
if (power_state == AC_PWRST_D3 && eapd)
|
||||
if (eapd)
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue