1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2b7bbf876STakashi Iwai /* 3b7bbf876STakashi Iwai * Timer handling 4b7bbf876STakashi Iwai */ 5b7bbf876STakashi Iwai 6b7bbf876STakashi Iwai #ifndef __CTTIMER_H 7b7bbf876STakashi Iwai #define __CTTIMER_H 8b7bbf876STakashi Iwai 9b7bbf876STakashi Iwai #include <linux/spinlock.h> 10b7bbf876STakashi Iwai #include <linux/timer.h> 11b7bbf876STakashi Iwai #include <linux/list.h> 12b7bbf876STakashi Iwai 13b7bbf876STakashi Iwai struct snd_pcm_substream; 14b7bbf876STakashi Iwai struct ct_atc; 15b7bbf876STakashi Iwai struct ct_atc_pcm; 16b7bbf876STakashi Iwai 17b7bbf876STakashi Iwai struct ct_timer; 18b7bbf876STakashi Iwai struct ct_timer_instance; 19b7bbf876STakashi Iwai 20b7bbf876STakashi Iwai struct ct_timer *ct_timer_new(struct ct_atc *atc); 21b7bbf876STakashi Iwai void ct_timer_free(struct ct_timer *atimer); 22b7bbf876STakashi Iwai 23b7bbf876STakashi Iwai struct ct_timer_instance * 24b7bbf876STakashi Iwai ct_timer_instance_new(struct ct_timer *atimer, struct ct_atc_pcm *apcm); 25b7bbf876STakashi Iwai void ct_timer_instance_free(struct ct_timer_instance *ti); 26b7bbf876STakashi Iwai void ct_timer_start(struct ct_timer_instance *ti); 27b7bbf876STakashi Iwai void ct_timer_stop(struct ct_timer_instance *ti); 28b7bbf876STakashi Iwai void ct_timer_prepare(struct ct_timer_instance *ti); 29b7bbf876STakashi Iwai 30b7bbf876STakashi Iwai #endif /* __CTTIMER_H */ 31