| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 1 | /* | 
 | 2 |  * HD-Audio helpers to sync with i915 driver | 
 | 3 |  */ | 
 | 4 | #ifndef __SOUND_HDA_I915_H | 
 | 5 | #define __SOUND_HDA_I915_H | 
 | 6 |  | 
| David Henningsson | 45c053d | 2015-08-19 10:48:57 +0200 | [diff] [blame] | 7 | #include <drm/i915_component.h> | 
 | 8 |  | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 9 | #ifdef CONFIG_SND_HDA_I915 | 
 | 10 | int snd_hdac_set_codec_wakeup(struct hdac_bus *bus, bool enable); | 
 | 11 | int snd_hdac_display_power(struct hdac_bus *bus, bool enable); | 
 | 12 | int snd_hdac_get_display_clk(struct hdac_bus *bus); | 
| Takashi Iwai | e2dc7d7 | 2015-12-01 12:39:38 +0100 | [diff] [blame] | 13 | int snd_hdac_sync_audio_rate(struct hdac_bus *bus, hda_nid_t nid, int rate); | 
 | 14 | int snd_hdac_acomp_get_eld(struct hdac_bus *bus, hda_nid_t nid, | 
 | 15 | 			   bool *audio_enabled, char *buffer, int max_bytes); | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 16 | int snd_hdac_i915_init(struct hdac_bus *bus); | 
 | 17 | int snd_hdac_i915_exit(struct hdac_bus *bus); | 
| David Henningsson | 45c053d | 2015-08-19 10:48:57 +0200 | [diff] [blame] | 18 | int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *); | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 19 | #else | 
| Takashi Iwai | 6869de3 | 2015-09-02 12:24:55 +0200 | [diff] [blame] | 20 | static inline int snd_hdac_set_codec_wakeup(struct hdac_bus *bus, bool enable) | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 21 | { | 
 | 22 | 	return 0; | 
 | 23 | } | 
 | 24 | static inline int snd_hdac_display_power(struct hdac_bus *bus, bool enable) | 
 | 25 | { | 
 | 26 | 	return 0; | 
 | 27 | } | 
 | 28 | static inline int snd_hdac_get_display_clk(struct hdac_bus *bus) | 
 | 29 | { | 
 | 30 | 	return 0; | 
 | 31 | } | 
| Takashi Iwai | e2dc7d7 | 2015-12-01 12:39:38 +0100 | [diff] [blame] | 32 | static inline int snd_hdac_sync_audio_rate(struct hdac_bus *bus, hda_nid_t nid, | 
 | 33 | 					   int rate) | 
 | 34 | { | 
 | 35 | 	return 0; | 
 | 36 | } | 
 | 37 | static inline int snd_hdac_acomp_get_eld(struct hdac_bus *bus, hda_nid_t nid, | 
 | 38 | 					 bool *audio_enabled, char *buffer, | 
 | 39 | 					 int max_bytes) | 
 | 40 | { | 
 | 41 | 	return -ENODEV; | 
 | 42 | } | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 43 | static inline int snd_hdac_i915_init(struct hdac_bus *bus) | 
 | 44 | { | 
 | 45 | 	return -ENODEV; | 
 | 46 | } | 
 | 47 | static inline int snd_hdac_i915_exit(struct hdac_bus *bus) | 
 | 48 | { | 
 | 49 | 	return 0; | 
 | 50 | } | 
| David Henningsson | 45c053d | 2015-08-19 10:48:57 +0200 | [diff] [blame] | 51 | static inline int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *ops) | 
 | 52 | { | 
 | 53 | 	return -ENODEV; | 
 | 54 | } | 
| Mengdong Lin | 98d8fc6 | 2015-05-19 22:29:30 +0800 | [diff] [blame] | 55 | #endif | 
 | 56 |  | 
 | 57 | #endif /* __SOUND_HDA_I915_H */ |