ALSA: hda - Introduce hda_call_check_power_status() helper
Replace the explicit ifdef check and call of check_power_status ops with a new helper function, hda_call_check_power_status(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
9396d3174b
commit
9e5341b92d
@ -2228,10 +2228,7 @@ int snd_hda_mixer_amp_switch_put(struct snd_kcontrol *kcontrol,
|
|||||||
change |= snd_hda_codec_amp_update(codec, nid, 1, dir, idx,
|
change |= snd_hda_codec_amp_update(codec, nid, 1, dir, idx,
|
||||||
HDA_AMP_MUTE,
|
HDA_AMP_MUTE,
|
||||||
*valp ? 0 : HDA_AMP_MUTE);
|
*valp ? 0 : HDA_AMP_MUTE);
|
||||||
#ifdef CONFIG_SND_HDA_POWER_SAVE
|
hda_call_check_power_status(codec, nid);
|
||||||
if (codec->patch_ops.check_power_status)
|
|
||||||
codec->patch_ops.check_power_status(codec, nid);
|
|
||||||
#endif
|
|
||||||
snd_hda_power_down(codec);
|
snd_hda_power_down(codec);
|
||||||
return change;
|
return change;
|
||||||
}
|
}
|
||||||
|
@ -989,6 +989,18 @@ int snd_hda_suspend(struct hda_bus *bus);
|
|||||||
int snd_hda_resume(struct hda_bus *bus);
|
int snd_hda_resume(struct hda_bus *bus);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef CONFIG_SND_HDA_POWER_SAVE
|
||||||
|
static inline
|
||||||
|
int hda_call_check_power_status(struct hda_codec *codec, hda_nid_t nid)
|
||||||
|
{
|
||||||
|
if (codec->patch_ops.check_power_status)
|
||||||
|
return codec->patch_ops.check_power_status(codec, nid);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
#define hda_call_check_power_status(codec, nid) 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* get widget information
|
* get widget information
|
||||||
*/
|
*/
|
||||||
|
@ -3729,10 +3729,7 @@ static int alc_init(struct hda_codec *codec)
|
|||||||
if (spec->init_hook)
|
if (spec->init_hook)
|
||||||
spec->init_hook(codec);
|
spec->init_hook(codec);
|
||||||
|
|
||||||
#ifdef CONFIG_SND_HDA_POWER_SAVE
|
hda_call_check_power_status(codec, 0x01);
|
||||||
if (codec->patch_ops.check_power_status)
|
|
||||||
codec->patch_ops.check_power_status(codec, 0x01);
|
|
||||||
#endif
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4128,8 +4125,7 @@ static int alc_resume(struct hda_codec *codec)
|
|||||||
codec->patch_ops.init(codec);
|
codec->patch_ops.init(codec);
|
||||||
snd_hda_codec_resume_amp(codec);
|
snd_hda_codec_resume_amp(codec);
|
||||||
snd_hda_codec_resume_cache(codec);
|
snd_hda_codec_resume_cache(codec);
|
||||||
if (codec->patch_ops.check_power_status)
|
hda_call_check_power_status(codec, 0x01);
|
||||||
codec->patch_ops.check_power_status(codec, 0x01);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -14703,8 +14699,7 @@ static int alc269_resume(struct hda_codec *codec)
|
|||||||
|
|
||||||
snd_hda_codec_resume_amp(codec);
|
snd_hda_codec_resume_amp(codec);
|
||||||
snd_hda_codec_resume_cache(codec);
|
snd_hda_codec_resume_cache(codec);
|
||||||
if (codec->patch_ops.check_power_status)
|
hda_call_check_power_status(codec, 0x01);
|
||||||
codec->patch_ops.check_power_status(codec, 0x01);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif /* SND_HDA_NEEDS_RESUME */
|
#endif /* SND_HDA_NEEDS_RESUME */
|
||||||
|
@ -4372,11 +4372,9 @@ static int stac92xx_init(struct hda_codec *codec)
|
|||||||
stac_issue_unsol_event(codec, nid);
|
stac_issue_unsol_event(codec, nid);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SND_HDA_POWER_SAVE
|
|
||||||
/* sync mute LED */
|
/* sync mute LED */
|
||||||
if (spec->gpio_led && codec->patch_ops.check_power_status)
|
if (spec->gpio_led)
|
||||||
codec->patch_ops.check_power_status(codec, 0x01);
|
hda_call_check_power_status(codec, 0x01);
|
||||||
#endif
|
|
||||||
if (spec->dac_list)
|
if (spec->dac_list)
|
||||||
stac92xx_power_down(codec);
|
stac92xx_power_down(codec);
|
||||||
return 0;
|
return 0;
|
||||||
@ -4958,11 +4956,9 @@ static int stac92xx_resume(struct hda_codec *codec)
|
|||||||
stac_issue_unsol_event(codec,
|
stac_issue_unsol_event(codec,
|
||||||
spec->autocfg.line_out_pins[0]);
|
spec->autocfg.line_out_pins[0]);
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_SND_HDA_POWER_SAVE
|
|
||||||
/* sync mute LED */
|
/* sync mute LED */
|
||||||
if (spec->gpio_led && codec->patch_ops.check_power_status)
|
if (spec->gpio_led)
|
||||||
codec->patch_ops.check_power_status(codec, 0x01);
|
hda_call_check_power_status(codec, 0x01);
|
||||||
#endif
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user