| /* SPDX-License-Identifier: GPL-2.0 */ | 
 | #ifndef __USBAUDIO_POWER_H | 
 | #define __USBAUDIO_POWER_H | 
 |  | 
 | struct snd_usb_power_domain { | 
 | 	int pd_id;              /* UAC3 Power Domain ID */ | 
 | 	int pd_d1d0_rec;        /* D1 to D0 recovery time */ | 
 | 	int pd_d2d0_rec;        /* D2 to D0 recovery time */ | 
 | }; | 
 |  | 
 | enum { | 
 | 	UAC3_PD_STATE_D0, | 
 | 	UAC3_PD_STATE_D1, | 
 | 	UAC3_PD_STATE_D2, | 
 | }; | 
 |  | 
 | int snd_usb_power_domain_set(struct snd_usb_audio *chip, | 
 | 			     struct snd_usb_power_domain *pd, | 
 | 			     unsigned char state); | 
 | struct snd_usb_power_domain * | 
 | snd_usb_find_power_domain(struct usb_host_interface *ctrl_iface, | 
 | 			  unsigned char id); | 
 |  | 
 | #ifdef CONFIG_PM | 
 | int snd_usb_autoresume(struct snd_usb_audio *chip); | 
 | void snd_usb_autosuspend(struct snd_usb_audio *chip); | 
 | #else | 
 | static inline int snd_usb_autoresume(struct snd_usb_audio *chip) | 
 | { | 
 | 	return 0; | 
 | } | 
 | static inline void snd_usb_autosuspend(struct snd_usb_audio *chip) | 
 | { | 
 | } | 
 | #endif | 
 |  | 
 | #endif /* __USBAUDIO_POWER_H */ |