diff options
Diffstat (limited to 'include/uapi/sound/firewire.h')
-rw-r--r-- | include/uapi/sound/firewire.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/include/uapi/sound/firewire.h b/include/uapi/sound/firewire.h index 59f5961302bf..af4bd136c75d 100644 --- a/include/uapi/sound/firewire.h +++ b/include/uapi/sound/firewire.h | |||
@@ -2,11 +2,13 @@ | |||
2 | #define _UAPI_SOUND_FIREWIRE_H_INCLUDED | 2 | #define _UAPI_SOUND_FIREWIRE_H_INCLUDED |
3 | 3 | ||
4 | #include <linux/ioctl.h> | 4 | #include <linux/ioctl.h> |
5 | #include <linux/types.h> | ||
5 | 6 | ||
6 | /* events can be read() from the hwdep device */ | 7 | /* events can be read() from the hwdep device */ |
7 | 8 | ||
8 | #define SNDRV_FIREWIRE_EVENT_LOCK_STATUS 0x000010cc | 9 | #define SNDRV_FIREWIRE_EVENT_LOCK_STATUS 0x000010cc |
9 | #define SNDRV_FIREWIRE_EVENT_DICE_NOTIFICATION 0xd1ce004e | 10 | #define SNDRV_FIREWIRE_EVENT_DICE_NOTIFICATION 0xd1ce004e |
11 | #define SNDRV_FIREWIRE_EVENT_EFW_RESPONSE 0x4e617475 | ||
10 | 12 | ||
11 | struct snd_firewire_event_common { | 13 | struct snd_firewire_event_common { |
12 | unsigned int type; /* SNDRV_FIREWIRE_EVENT_xxx */ | 14 | unsigned int type; /* SNDRV_FIREWIRE_EVENT_xxx */ |
@@ -22,10 +24,27 @@ struct snd_firewire_event_dice_notification { | |||
22 | unsigned int notification; /* DICE-specific bits */ | 24 | unsigned int notification; /* DICE-specific bits */ |
23 | }; | 25 | }; |
24 | 26 | ||
27 | #define SND_EFW_TRANSACTION_USER_SEQNUM_MAX ((__u32)((__u16)~0) - 1) | ||
28 | /* each field should be in big endian */ | ||
29 | struct snd_efw_transaction { | ||
30 | __be32 length; | ||
31 | __be32 version; | ||
32 | __be32 seqnum; | ||
33 | __be32 category; | ||
34 | __be32 command; | ||
35 | __be32 status; | ||
36 | __be32 params[0]; | ||
37 | }; | ||
38 | struct snd_firewire_event_efw_response { | ||
39 | unsigned int type; | ||
40 | __be32 response[0]; /* some responses */ | ||
41 | }; | ||
42 | |||
25 | union snd_firewire_event { | 43 | union snd_firewire_event { |
26 | struct snd_firewire_event_common common; | 44 | struct snd_firewire_event_common common; |
27 | struct snd_firewire_event_lock_status lock_status; | 45 | struct snd_firewire_event_lock_status lock_status; |
28 | struct snd_firewire_event_dice_notification dice_notification; | 46 | struct snd_firewire_event_dice_notification dice_notification; |
47 | struct snd_firewire_event_efw_response efw_response; | ||
29 | }; | 48 | }; |
30 | 49 | ||
31 | 50 | ||
@@ -34,7 +53,9 @@ union snd_firewire_event { | |||
34 | #define SNDRV_FIREWIRE_IOCTL_UNLOCK _IO('H', 0xfa) | 53 | #define SNDRV_FIREWIRE_IOCTL_UNLOCK _IO('H', 0xfa) |
35 | 54 | ||
36 | #define SNDRV_FIREWIRE_TYPE_DICE 1 | 55 | #define SNDRV_FIREWIRE_TYPE_DICE 1 |
37 | /* Fireworks, AV/C, RME, MOTU, ... */ | 56 | #define SNDRV_FIREWIRE_TYPE_FIREWORKS 2 |
57 | #define SNDRV_FIREWIRE_TYPE_BEBOB 3 | ||
58 | /* AV/C, RME, MOTU, ... */ | ||
38 | 59 | ||
39 | struct snd_firewire_get_info { | 60 | struct snd_firewire_get_info { |
40 | unsigned int type; /* SNDRV_FIREWIRE_TYPE_xxx */ | 61 | unsigned int type; /* SNDRV_FIREWIRE_TYPE_xxx */ |