|
@@ -95,6 +95,7 @@ int snd_hda_delete_codec_preset(struct hda_codec_preset_list *preset)
|
|
|
EXPORT_SYMBOL_HDA(snd_hda_delete_codec_preset);
|
|
|
|
|
|
#ifdef CONFIG_PM
|
|
|
+#define codec_in_pm(codec) ((codec)->in_pm)
|
|
|
static void hda_power_work(struct work_struct *work);
|
|
|
static void hda_keep_power_on(struct hda_codec *codec);
|
|
|
#define hda_codec_is_power_on(codec) ((codec)->power_on)
|
|
@@ -104,6 +105,7 @@ static inline void hda_call_pm_notify(struct hda_bus *bus, bool power_up)
|
|
|
bus->ops.pm_notify(bus, power_up);
|
|
|
}
|
|
|
#else
|
|
|
+#define codec_in_pm(codec) 0
|
|
|
static inline void hda_keep_power_on(struct hda_codec *codec) {}
|
|
|
#define hda_codec_is_power_on(codec) 1
|
|
|
#define hda_call_pm_notify(bus, state) {}
|
|
@@ -228,7 +230,7 @@ static int codec_exec_verb(struct hda_codec *codec, unsigned int cmd,
|
|
|
}
|
|
|
mutex_unlock(&bus->cmd_mutex);
|
|
|
snd_hda_power_down(codec);
|
|
|
- if (!codec->in_pm && res && *res == -1 && bus->rirb_error) {
|
|
|
+ if (!codec_in_pm(codec) && res && *res == -1 && bus->rirb_error) {
|
|
|
if (bus->response_reset) {
|
|
|
snd_printd("hda_codec: resetting BUS due to "
|
|
|
"fatal communication error\n");
|
|
@@ -238,7 +240,7 @@ static int codec_exec_verb(struct hda_codec *codec, unsigned int cmd,
|
|
|
goto again;
|
|
|
}
|
|
|
/* clear reset-flag when the communication gets recovered */
|
|
|
- if (!err || codec->in_pm)
|
|
|
+ if (!err || codec_in_pm(codec))
|
|
|
bus->response_reset = 0;
|
|
|
return err;
|
|
|
}
|