mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-18 06:15:12 +00:00
tools include UAPI: Sync sound/asound.h copy with the kernel sources
Picking the changes from: 37745918e0e7575b ("ALSA: timer: Introduce virtual userspace-driven timers") Which entails no changes in the tooling side as it only introduces new SNDRV_TIMER_IOCTL_ ioctls, and the ones tracked by scripts in tools/perf/trace/beauty/ are only SNDRV_PCM_IOCTL_ and SNDRV_CTL_IOCTL_, we still need to support SNDRV_TIMER_IOCTL_ ones, but that probably will be one of the first for a BTF enumeration based approach :-) This silences this perf tools build warning: diff -u tools/perf/trace/beauty/include/uapi/sound/asound.h include/uapi/sound/asound.h Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Ian Rogers <irogers@google.com> Cc: Ivan Orlov <ivan.orlov0322@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Takashi Iwai <tiwai@suse.de> Link: https://lore.kernel.org/lkml/ZvrB-g_E7g2ArlYW@x1 Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
424aafb61a
commit
c850897b6c
@ -869,7 +869,7 @@ struct snd_ump_block_info {
|
|||||||
* Timer section - /dev/snd/timer
|
* Timer section - /dev/snd/timer
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 7)
|
#define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 8)
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
SNDRV_TIMER_CLASS_NONE = -1,
|
SNDRV_TIMER_CLASS_NONE = -1,
|
||||||
@ -894,6 +894,7 @@ enum {
|
|||||||
#define SNDRV_TIMER_GLOBAL_RTC 1 /* unused */
|
#define SNDRV_TIMER_GLOBAL_RTC 1 /* unused */
|
||||||
#define SNDRV_TIMER_GLOBAL_HPET 2
|
#define SNDRV_TIMER_GLOBAL_HPET 2
|
||||||
#define SNDRV_TIMER_GLOBAL_HRTIMER 3
|
#define SNDRV_TIMER_GLOBAL_HRTIMER 3
|
||||||
|
#define SNDRV_TIMER_GLOBAL_UDRIVEN 4
|
||||||
|
|
||||||
/* info flags */
|
/* info flags */
|
||||||
#define SNDRV_TIMER_FLG_SLAVE (1<<0) /* cannot be controlled */
|
#define SNDRV_TIMER_FLG_SLAVE (1<<0) /* cannot be controlled */
|
||||||
@ -974,6 +975,18 @@ struct snd_timer_status {
|
|||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This structure describes the userspace-driven timer. Such timers are purely virtual,
|
||||||
|
* and can only be triggered from software (for instance, by userspace application).
|
||||||
|
*/
|
||||||
|
struct snd_timer_uinfo {
|
||||||
|
/* To pretend being a normal timer, we need to know the resolution in ns. */
|
||||||
|
__u64 resolution;
|
||||||
|
int fd;
|
||||||
|
unsigned int id;
|
||||||
|
unsigned char reserved[16];
|
||||||
|
};
|
||||||
|
|
||||||
#define SNDRV_TIMER_IOCTL_PVERSION _IOR('T', 0x00, int)
|
#define SNDRV_TIMER_IOCTL_PVERSION _IOR('T', 0x00, int)
|
||||||
#define SNDRV_TIMER_IOCTL_NEXT_DEVICE _IOWR('T', 0x01, struct snd_timer_id)
|
#define SNDRV_TIMER_IOCTL_NEXT_DEVICE _IOWR('T', 0x01, struct snd_timer_id)
|
||||||
#define SNDRV_TIMER_IOCTL_TREAD_OLD _IOW('T', 0x02, int)
|
#define SNDRV_TIMER_IOCTL_TREAD_OLD _IOW('T', 0x02, int)
|
||||||
@ -990,6 +1003,8 @@ struct snd_timer_status {
|
|||||||
#define SNDRV_TIMER_IOCTL_CONTINUE _IO('T', 0xa2)
|
#define SNDRV_TIMER_IOCTL_CONTINUE _IO('T', 0xa2)
|
||||||
#define SNDRV_TIMER_IOCTL_PAUSE _IO('T', 0xa3)
|
#define SNDRV_TIMER_IOCTL_PAUSE _IO('T', 0xa3)
|
||||||
#define SNDRV_TIMER_IOCTL_TREAD64 _IOW('T', 0xa4, int)
|
#define SNDRV_TIMER_IOCTL_TREAD64 _IOW('T', 0xa4, int)
|
||||||
|
#define SNDRV_TIMER_IOCTL_CREATE _IOWR('T', 0xa5, struct snd_timer_uinfo)
|
||||||
|
#define SNDRV_TIMER_IOCTL_TRIGGER _IO('T', 0xa6)
|
||||||
|
|
||||||
#if __BITS_PER_LONG == 64
|
#if __BITS_PER_LONG == 64
|
||||||
#define SNDRV_TIMER_IOCTL_TREAD SNDRV_TIMER_IOCTL_TREAD_OLD
|
#define SNDRV_TIMER_IOCTL_TREAD SNDRV_TIMER_IOCTL_TREAD_OLD
|
||||||
|
Loading…
x
Reference in New Issue
Block a user