diff options
Diffstat (limited to 'sound/pci/hda/hda_codec.h')
-rw-r--r-- | sound/pci/hda/hda_codec.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h index 99552fb5f756..2d627613aea3 100644 --- a/sound/pci/hda/hda_codec.h +++ b/sound/pci/hda/hda_codec.h | |||
@@ -286,6 +286,10 @@ enum { | |||
286 | #define AC_PWRST_D1SUP (1<<1) | 286 | #define AC_PWRST_D1SUP (1<<1) |
287 | #define AC_PWRST_D2SUP (1<<2) | 287 | #define AC_PWRST_D2SUP (1<<2) |
288 | #define AC_PWRST_D3SUP (1<<3) | 288 | #define AC_PWRST_D3SUP (1<<3) |
289 | #define AC_PWRST_D3COLDSUP (1<<4) | ||
290 | #define AC_PWRST_S3D3COLDSUP (1<<29) | ||
291 | #define AC_PWRST_CLKSTOP (1<<30) | ||
292 | #define AC_PWRST_EPSS (1U<<31) | ||
289 | 293 | ||
290 | /* Power state values */ | 294 | /* Power state values */ |
291 | #define AC_PWRST_SETTING (0xf<<0) | 295 | #define AC_PWRST_SETTING (0xf<<0) |
@@ -674,6 +678,7 @@ struct hda_codec_ops { | |||
674 | #ifdef CONFIG_SND_HDA_POWER_SAVE | 678 | #ifdef CONFIG_SND_HDA_POWER_SAVE |
675 | int (*check_power_status)(struct hda_codec *codec, hda_nid_t nid); | 679 | int (*check_power_status)(struct hda_codec *codec, hda_nid_t nid); |
676 | #endif | 680 | #endif |
681 | void (*reboot_notify)(struct hda_codec *codec); | ||
677 | }; | 682 | }; |
678 | 683 | ||
679 | /* record for amp information cache */ | 684 | /* record for amp information cache */ |
@@ -771,6 +776,7 @@ struct hda_codec { | |||
771 | 776 | ||
772 | /* beep device */ | 777 | /* beep device */ |
773 | struct hda_beep *beep; | 778 | struct hda_beep *beep; |
779 | unsigned int beep_mode; | ||
774 | 780 | ||
775 | /* widget capabilities cache */ | 781 | /* widget capabilities cache */ |
776 | unsigned int num_nodes; | 782 | unsigned int num_nodes; |
@@ -811,6 +817,9 @@ struct hda_codec { | |||
811 | unsigned int power_transition :1; /* power-state in transition */ | 817 | unsigned int power_transition :1; /* power-state in transition */ |
812 | int power_count; /* current (global) power refcount */ | 818 | int power_count; /* current (global) power refcount */ |
813 | struct delayed_work power_work; /* delayed task for powerdown */ | 819 | struct delayed_work power_work; /* delayed task for powerdown */ |
820 | unsigned long power_on_acct; | ||
821 | unsigned long power_off_acct; | ||
822 | unsigned long power_jiffies; | ||
814 | #endif | 823 | #endif |
815 | 824 | ||
816 | /* codec-specific additional proc output */ | 825 | /* codec-specific additional proc output */ |
@@ -910,6 +919,7 @@ int snd_hda_is_supported_format(struct hda_codec *codec, hda_nid_t nid, | |||
910 | * Misc | 919 | * Misc |
911 | */ | 920 | */ |
912 | void snd_hda_get_codec_name(struct hda_codec *codec, char *name, int namelen); | 921 | void snd_hda_get_codec_name(struct hda_codec *codec, char *name, int namelen); |
922 | void snd_hda_bus_reboot_notify(struct hda_bus *bus); | ||
913 | 923 | ||
914 | /* | 924 | /* |
915 | * power management | 925 | * power management |
@@ -933,6 +943,7 @@ const char *snd_hda_get_jack_location(u32 cfg); | |||
933 | void snd_hda_power_up(struct hda_codec *codec); | 943 | void snd_hda_power_up(struct hda_codec *codec); |
934 | void snd_hda_power_down(struct hda_codec *codec); | 944 | void snd_hda_power_down(struct hda_codec *codec); |
935 | #define snd_hda_codec_needs_resume(codec) codec->power_count | 945 | #define snd_hda_codec_needs_resume(codec) codec->power_count |
946 | void snd_hda_update_power_acct(struct hda_codec *codec); | ||
936 | #else | 947 | #else |
937 | static inline void snd_hda_power_up(struct hda_codec *codec) {} | 948 | static inline void snd_hda_power_up(struct hda_codec *codec) {} |
938 | static inline void snd_hda_power_down(struct hda_codec *codec) {} | 949 | static inline void snd_hda_power_down(struct hda_codec *codec) {} |