| .. | .. |
|---|
| 12 | 12 | #define SNDRV_FIREWIRE_EVENT_EFW_RESPONSE 0x4e617475 |
|---|
| 13 | 13 | #define SNDRV_FIREWIRE_EVENT_DIGI00X_MESSAGE 0x746e736c |
|---|
| 14 | 14 | #define SNDRV_FIREWIRE_EVENT_MOTU_NOTIFICATION 0x64776479 |
|---|
| 15 | +#define SNDRV_FIREWIRE_EVENT_TASCAM_CONTROL 0x7473636d |
|---|
| 15 | 16 | |
|---|
| 16 | 17 | struct snd_firewire_event_common { |
|---|
| 17 | 18 | unsigned int type; /* SNDRV_FIREWIRE_EVENT_xxx */ |
|---|
| .. | .. |
|---|
| 53 | 54 | __u32 message; /* MOTU-specific bits. */ |
|---|
| 54 | 55 | }; |
|---|
| 55 | 56 | |
|---|
| 57 | +struct snd_firewire_tascam_change { |
|---|
| 58 | + unsigned int index; |
|---|
| 59 | + __be32 before; |
|---|
| 60 | + __be32 after; |
|---|
| 61 | +}; |
|---|
| 62 | + |
|---|
| 63 | +struct snd_firewire_event_tascam_control { |
|---|
| 64 | + unsigned int type; |
|---|
| 65 | + struct snd_firewire_tascam_change changes[0]; |
|---|
| 66 | +}; |
|---|
| 67 | + |
|---|
| 56 | 68 | union snd_firewire_event { |
|---|
| 57 | 69 | struct snd_firewire_event_common common; |
|---|
| 58 | 70 | struct snd_firewire_event_lock_status lock_status; |
|---|
| 59 | 71 | struct snd_firewire_event_dice_notification dice_notification; |
|---|
| 60 | 72 | struct snd_firewire_event_efw_response efw_response; |
|---|
| 61 | 73 | struct snd_firewire_event_digi00x_message digi00x_message; |
|---|
| 74 | + struct snd_firewire_event_tascam_control tascam_control; |
|---|
| 62 | 75 | struct snd_firewire_event_motu_notification motu_notification; |
|---|
| 63 | 76 | }; |
|---|
| 64 | 77 | |
|---|
| .. | .. |
|---|
| 66 | 79 | #define SNDRV_FIREWIRE_IOCTL_GET_INFO _IOR('H', 0xf8, struct snd_firewire_get_info) |
|---|
| 67 | 80 | #define SNDRV_FIREWIRE_IOCTL_LOCK _IO('H', 0xf9) |
|---|
| 68 | 81 | #define SNDRV_FIREWIRE_IOCTL_UNLOCK _IO('H', 0xfa) |
|---|
| 82 | +#define SNDRV_FIREWIRE_IOCTL_TASCAM_STATE _IOR('H', 0xfb, struct snd_firewire_tascam_state) |
|---|
| 69 | 83 | |
|---|
| 70 | 84 | #define SNDRV_FIREWIRE_TYPE_DICE 1 |
|---|
| 71 | 85 | #define SNDRV_FIREWIRE_TYPE_FIREWORKS 2 |
|---|
| .. | .. |
|---|
| 88 | 102 | * Returns -EBUSY if the driver is already streaming. |
|---|
| 89 | 103 | */ |
|---|
| 90 | 104 | |
|---|
| 105 | +#define SNDRV_FIREWIRE_TASCAM_STATE_COUNT 64 |
|---|
| 106 | + |
|---|
| 107 | +struct snd_firewire_tascam_state { |
|---|
| 108 | + __be32 data[SNDRV_FIREWIRE_TASCAM_STATE_COUNT]; |
|---|
| 109 | +}; |
|---|
| 110 | + |
|---|
| 91 | 111 | #endif /* _UAPI_SOUND_FIREWIRE_H_INCLUDED */ |
|---|