]> git.karo-electronics.de Git - karo-tx-linux.git/blob - include/uapi/sound/firewire.h
Merge remote-tracking branch 'md/for-next'
[karo-tx-linux.git] / include / uapi / sound / firewire.h
1 #ifndef UAPI_SOUND_FIREWIRE_H_INCLUDED
2 #define UAPI_SOUND_FIREWIRE_H_INCLUDED
3
4 #include <linux/ioctl.h>
5
6 /* events can be read() from the hwdep device */
7
8 #define SNDRV_FIREWIRE_EVENT_LOCK_STATUS        0x000010cc
9 #define SNDRV_FIREWIRE_EVENT_DICE_NOTIFICATION  0xd1ce004e
10
11 struct snd_firewire_event_common {
12         unsigned int type; /* SNDRV_FIREWIRE_EVENT_xxx */
13 };
14
15 struct snd_firewire_event_lock_status {
16         unsigned int type;
17         unsigned int status; /* 0/1 = unlocked/locked */
18 };
19
20 struct snd_firewire_event_dice_notification {
21         unsigned int type;
22         unsigned int notification; /* DICE-specific bits */
23 };
24
25 union snd_firewire_event {
26         struct snd_firewire_event_common            common;
27         struct snd_firewire_event_lock_status       lock_status;
28         struct snd_firewire_event_dice_notification dice_notification;
29 };
30
31
32 #define SNDRV_FIREWIRE_IOCTL_GET_INFO _IOR('H', 0xf8, struct snd_firewire_get_info)
33 #define SNDRV_FIREWIRE_IOCTL_LOCK      _IO('H', 0xf9)
34 #define SNDRV_FIREWIRE_IOCTL_UNLOCK    _IO('H', 0xfa)
35
36 #define SNDRV_FIREWIRE_TYPE_DICE        1
37 /* Fireworks, AV/C, RME, MOTU, ... */
38
39 struct snd_firewire_get_info {
40         unsigned int type; /* SNDRV_FIREWIRE_TYPE_xxx */
41         unsigned int card; /* same as fw_cdev_get_info.card */
42         unsigned char guid[8];
43         char device_name[16]; /* device node in /dev */
44 };
45
46 /*
47  * SNDRV_FIREWIRE_IOCTL_LOCK prevents the driver from streaming.
48  * Returns -EBUSY if the driver is already streaming.
49  */
50
51 #endif