1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __USBAUDIO_POWER_H 3 #define __USBAUDIO_POWER_H 4 5 struct snd_usb_power_domain { 6 int pd_id; /* UAC3 Power Domain ID */ 7 int pd_d1d0_rec; /* D1 to D0 recovery time */ 8 int pd_d2d0_rec; /* D2 to D0 recovery time */ 9 }; 10 11 enum { 12 UAC3_PD_STATE_D0, 13 UAC3_PD_STATE_D1, 14 UAC3_PD_STATE_D2, 15 }; 16 17 int snd_usb_power_domain_set(struct snd_usb_audio *chip, 18 struct snd_usb_power_domain *pd, 19 unsigned char state); 20 struct snd_usb_power_domain * 21 snd_usb_find_power_domain(struct usb_host_interface *ctrl_iface, 22 unsigned char id); 23 24 int snd_usb_autoresume(struct snd_usb_audio *chip); 25 void snd_usb_autosuspend(struct snd_usb_audio *chip); 26 27 #endif /* __USBAUDIO_POWER_H */ 28