1 /* SPDX-License-Identifier: GPL-2.0 */
3 * HD-Audio helpers to sync with i915 driver
5 #ifndef __SOUND_HDA_I915_H
6 #define __SOUND_HDA_I915_H
8 #include <drm/i915_component.h>
10 #ifdef CONFIG_SND_HDA_I915
11 int snd_hdac_set_codec_wakeup(struct hdac_bus
*bus
, bool enable
);
12 int snd_hdac_display_power(struct hdac_bus
*bus
, bool enable
);
13 void snd_hdac_i915_set_bclk(struct hdac_bus
*bus
);
14 int snd_hdac_sync_audio_rate(struct hdac_device
*codec
, hda_nid_t nid
,
15 int dev_id
, int rate
);
16 int snd_hdac_acomp_get_eld(struct hdac_device
*codec
, hda_nid_t nid
, int dev_id
,
17 bool *audio_enabled
, char *buffer
, int max_bytes
);
18 int snd_hdac_i915_init(struct hdac_bus
*bus
);
19 int snd_hdac_i915_exit(struct hdac_bus
*bus
);
20 int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops
*);
22 static inline int snd_hdac_set_codec_wakeup(struct hdac_bus
*bus
, bool enable
)
26 static inline int snd_hdac_display_power(struct hdac_bus
*bus
, bool enable
)
30 static inline void snd_hdac_i915_set_bclk(struct hdac_bus
*bus
)
33 static inline int snd_hdac_sync_audio_rate(struct hdac_device
*codec
,
34 hda_nid_t nid
, int dev_id
, int rate
)
38 static inline int snd_hdac_acomp_get_eld(struct hdac_device
*codec
, hda_nid_t nid
,
39 int dev_id
, bool *audio_enabled
,
40 char *buffer
, int max_bytes
)
44 static inline int snd_hdac_i915_init(struct hdac_bus
*bus
)
48 static inline int snd_hdac_i915_exit(struct hdac_bus
*bus
)
52 static inline int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops
*ops
)
58 #endif /* __SOUND_HDA_I915_H */