1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/****************************************************************************
2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   This header was automatically generated from a Linux kernel header
5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   of the same name, to make information necessary for userspace to
6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   call into the kernel available to libc.  It contains only constants,
7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   structures, and macros generated from the original header, and thus,
8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   contains no copyrightable information.
9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   To edit the content of this header, modify the corresponding
11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   source file (e.g. under external/kernel-headers/original/) then
12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   run bionic/libc/kernel/tools/update_all.py
13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   Any manual change here will be lost the next time this script will
15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   be run. You've been warned!
16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/
19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef _UAPI__SOUND_ASEQUENCER_H
20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define _UAPI__SOUND_ASEQUENCER_H
2105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#include <sound/asound.h>
22106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define SNDRV_SEQ_VERSION SNDRV_PROTOCOL_VERSION(1, 0, 2)
23655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_SYSTEM 0
25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_RESULT 1
26655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_NOTE 5
27655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_NOTEON 6
28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
2905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_NOTEOFF 7
30655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_KEYPRESS 8
31655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_CONTROLLER 10
32655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PGMCHANGE 11
33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_CHANPRESS 12
35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PITCHBEND 13
36655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_CONTROL14 14
37655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_NONREGPARAM 15
38655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_REGPARAM 16
40655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SONGPOS 20
41655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SONGSEL 21
42655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_QFRAME 22
43655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_TIMESIGN 23
45655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_KEYSIGN 24
46655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_START 30
47655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_CONTINUE 31
48655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_STOP 32
50655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SETPOS_TICK 33
51655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SETPOS_TIME 34
52655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_TEMPO 35
53655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_CLOCK 36
55655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_TICK 37
56655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_QUEUE_SKEW 38
57655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_TUNE_REQUEST 40
58655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_RESET 41
60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SENSING 42
61655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_ECHO 50
62655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_OSS 51
63655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
6405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_CLIENT_START 60
65655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_CLIENT_EXIT 61
66655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_CLIENT_CHANGE 62
67655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PORT_START 63
68655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
6905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_PORT_EXIT 64
70655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PORT_CHANGE 65
71655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PORT_SUBSCRIBED 66
72655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_PORT_UNSUBSCRIBED 67
73655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
7405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_USR0 90
75655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR1 91
76655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR2 92
77655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR3 93
78655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
7905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_USR4 94
80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR5 95
81655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR6 96
82655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR7 97
83655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
8405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_USR8 98
85655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR9 99
86655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_SYSEX 130
87655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_BOUNCE 131
88655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
8905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_USR_VAR0 135
90655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR_VAR1 136
91655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR_VAR2 137
92655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_USR_VAR3 138
93655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
9405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_USR_VAR4 139
95655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_KERNEL_ERROR 150
96655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_KERNEL_QUOTE 151
97655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_EVENT_NONE 255
98655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
9905d08e9716b5974d6ed08973f44930804890b902Christopher Ferristypedef unsigned char snd_seq_event_type_t;
100655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_addr {
101d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char client;
102d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char port;
103655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
10405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
105655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_connect {
106d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr sender;
107d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr dest;
108655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
10905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
110655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_ADDRESS_UNKNOWN 253
111655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_ADDRESS_SUBSCRIBERS 254
112655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_ADDRESS_BROADCAST 255
113655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
11405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_QUEUE_DIRECT 253
115d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_TIME_STAMP_TICK (0 << 0)
116d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_TIME_STAMP_REAL (1 << 0)
117d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_TIME_STAMP_MASK (1 << 0)
118655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
11905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_TIME_MODE_ABS (0 << 1)
120d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_TIME_MODE_REL (1 << 1)
121d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_TIME_MODE_MASK (1 << 1)
122d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_EVENT_LENGTH_FIXED (0 << 2)
123655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
12405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_EVENT_LENGTH_VARIABLE (1 << 2)
125d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_EVENT_LENGTH_VARUSR (2 << 2)
126d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_EVENT_LENGTH_MASK (3 << 2)
127d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PRIORITY_NORMAL (0 << 4)
128655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
12905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PRIORITY_HIGH (1 << 4)
130d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PRIORITY_MASK (1 << 4)
131655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_note {
132d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char channel;
133655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
13405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned char note;
135d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char velocity;
136d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char off_velocity;
137d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int duration;
138655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
13905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
140655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_ctrl {
141d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char channel;
142d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char unused1, unused2, unused3;
143655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
14405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned int param;
145d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  signed int value;
146655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
147655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_raw8 {
148655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
14905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned char d[12];
150655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
151655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_raw32 {
152d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int d[3];
153655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
15405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
155655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_ext {
156d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int len;
157d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  void * ptr;
158655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
15905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris} __attribute__((packed));
160655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_result {
161d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int event;
162d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int result;
163655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
16405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
165655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_real_time {
166d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int tv_sec;
167d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int tv_nsec;
168655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
16905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
170655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengtypedef unsigned int snd_seq_tick_time_t;
171655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengunion snd_seq_timestamp {
172d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  snd_seq_tick_time_t tick;
173655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
17405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  struct snd_seq_real_time time;
175655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
176655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_queue_skew {
177d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int value;
178655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
17905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned int base;
180655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
181655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_queue_control {
182d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char queue;
183655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
18405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned char pad[3];
185d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  union {
186d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    signed int value;
187d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    union snd_seq_timestamp time;
188655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
18905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris    unsigned int position;
190d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_queue_skew skew;
191d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    unsigned int d32[2];
192d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    unsigned char d8[8];
193655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
19405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  } param;
195655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
196655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_ev_quote {
197d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr origin;
198655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
19905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned short value;
200d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_event * event;
201655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __attribute__((packed));
202655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_event {
203d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
20405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  snd_seq_event_type_t type;
205d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char flags;
206d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char tag;
207d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char queue;
208d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
20905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  union snd_seq_timestamp time;
210d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr source;
211d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr dest;
212d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  union {
213d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
21405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris    struct snd_seq_ev_note note;
215d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_ev_ctrl control;
216d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_ev_raw8 raw8;
217d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_ev_raw32 raw32;
218d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
21905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris    struct snd_seq_ev_ext ext;
220d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_ev_queue_control queue;
221d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    union snd_seq_timestamp time;
222d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_addr addr;
223d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
22405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris    struct snd_seq_connect connect;
225d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_result result;
226d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    struct snd_seq_ev_quote quote;
227d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  } data;
228655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
22905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
230655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_event_bounce {
231d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int err;
232d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_event event;
233655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
23405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
235655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_system_info {
236d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int queues;
237d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int clients;
238655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
23905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int ports;
240d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int channels;
241d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int cur_clients;
242d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int cur_queues;
243655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  char reserved[24];
245655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
246655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_running_info {
247d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char client;
248655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned char big_endian;
250d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char cpu_mode;
251d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char pad;
252d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char reserved[12];
253655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
25405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
255655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_CLIENT_SYSTEM 0
256655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_CLIENT_DUMMY 14
257655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_CLIENT_OSS 15
258655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
25905d08e9716b5974d6ed08973f44930804890b902Christopher Ferristypedef int __bitwise snd_seq_client_type_t;
260655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NO_CLIENT ((__force snd_seq_client_type_t) 0)
261655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define USER_CLIENT ((__force snd_seq_client_type_t) 1)
262655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define KERNEL_CLIENT ((__force snd_seq_client_type_t) 2)
263655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
26405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_FILTER_BROADCAST (1 << 0)
265d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_FILTER_MULTICAST (1 << 1)
266d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_FILTER_BOUNCE (1 << 2)
267d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_FILTER_USE_EVENT (1 << 31)
268655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
26905d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_client_info {
270d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int client;
271d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  snd_seq_client_type_t type;
272d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char name[64];
273655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
27405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned int filter;
275d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char multicast_filter[8];
276d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char event_filter[32];
277d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int num_ports;
278655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
27905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int event_lost;
280106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris  int card;
281106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris  int pid;
282106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris  char reserved[56];
283106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
285655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_client_pool {
28605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int client;
287d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int output_pool;
288106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int input_pool;
290d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int output_room;
29105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int output_free;
292d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int input_free;
293106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
295655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
29605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_REMOVE_INPUT (1 << 0)
297d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_OUTPUT (1 << 1)
298106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_DEST (1 << 2)
300d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_DEST_CHANNEL (1 << 3)
30105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_REMOVE_TIME_BEFORE (1 << 4)
302d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_TIME_AFTER (1 << 5)
303106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_TIME_TICK (1 << 6)
305d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_EVENT_TYPE (1 << 7)
30605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_REMOVE_IGNORE_OFF (1 << 8)
307d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_REMOVE_TAG_MATCH (1 << 9)
308106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_remove_events {
310d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int remove_mode;
31105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  union snd_seq_timestamp time;
312d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char queue;
313106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr dest;
315d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char channel;
31605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int type;
317d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char tag;
318106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int reserved[10];
320655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
32105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_SYSTEM_TIMER 0
322655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_PORT_SYSTEM_ANNOUNCE 1
323106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_READ (1 << 0)
325d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_WRITE (1 << 1)
32605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_CAP_SYNC_READ (1 << 2)
327d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_SYNC_WRITE (1 << 3)
328106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_DUPLEX (1 << 4)
330d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_SUBS_READ (1 << 5)
33105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_CAP_SUBS_WRITE (1 << 6)
332d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_CAP_NO_EXPORT (1 << 7)
333106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_SPECIFIC (1 << 0)
335d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_MIDI_GENERIC (1 << 1)
33605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_TYPE_MIDI_GM (1 << 2)
337d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_MIDI_GS (1 << 3)
338106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_MIDI_XG (1 << 4)
340d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_MIDI_MT32 (1 << 5)
34105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_TYPE_MIDI_GM2 (1 << 6)
342d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_SYNTH (1 << 10)
343106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_DIRECT_SAMPLE (1 << 11)
345d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_SAMPLE (1 << 12)
34605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_TYPE_HARDWARE (1 << 16)
347d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_SOFTWARE (1 << 17)
348106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_SYNTHESIZER (1 << 18)
350d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_TYPE_PORT (1 << 19)
35105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_PORT_TYPE_APPLICATION (1 << 20)
352d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_FLG_GIVEN_PORT (1 << 0)
353106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_FLG_TIMESTAMP (1 << 1)
355d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_FLG_TIME_REAL (1 << 2)
35605d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_port_info {
357d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr addr;
358106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char name[64];
360d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int capability;
36105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned int type;
362d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int midi_channels;
363106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int midi_voices;
365d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int synth_voices;
36605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int read_use;
367d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int write_use;
368106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  void * kernel;
370d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int flags;
37105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned char time_queue;
372d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[59];
373106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
375d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_QUEUE_FLG_SYNC (1 << 0)
37605d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_queue_info {
377d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int queue;
378106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int owner;
380d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned locked : 1;
38105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  char name[64];
382d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int flags;
383106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[60];
385655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
38605d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_queue_status {
387d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int queue;
388106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int events;
390d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  snd_seq_tick_time_t tick;
39105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  struct snd_seq_real_time time;
392d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int running;
393106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int flags;
395d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
39605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
397655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_queue_tempo {
398106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int queue;
400d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int tempo;
40105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int ppq;
402d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int skew_value;
403106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int skew_base;
405d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[24];
40605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
407655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_TIMER_ALSA 0
408106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_TIMER_MIDI_CLOCK 1
410655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_TIMER_MIDI_TICK 2
41105d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_queue_timer {
412d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int queue;
413106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int type;
415d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  union {
41605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris    struct {
417d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao      struct snd_timer_id id;
418106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao      unsigned int resolution;
420d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao    } alsa;
42105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  } u;
422d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
423106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
425655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_queue_client {
42605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  int queue;
427d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int client;
428106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
429d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int used;
430d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
43105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
432d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_SUBS_EXCLUSIVE (1 << 0)
433106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
434d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_SUBS_TIMESTAMP (1 << 1)
435d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_PORT_SUBS_TIME_REAL (1 << 2)
43605d08e9716b5974d6ed08973f44930804890b902Christopher Ferrisstruct snd_seq_port_subscribe {
437d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr sender;
438106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct snd_seq_addr dest;
440d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int voices;
44105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  unsigned int flags;
442d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char queue;
443106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char pad[3];
445d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
44605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
447655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_QUERY_SUBS_READ 0
448106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_QUERY_SUBS_WRITE 1
450655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct snd_seq_query_subs {
45105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  struct snd_seq_addr root;
452d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int type;
453106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int index;
455d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int num_subs;
45605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris  struct snd_seq_addr addr;
457d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char queue;
458106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int flags;
460d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char reserved[64];
46105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris};
462d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_PVERSION _IOR('S', 0x00, int)
463106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_CLIENT_ID _IOR('S', 0x01, int)
465655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_SYSTEM_INFO _IOWR('S', 0x02, struct snd_seq_system_info)
46605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_RUNNING_MODE _IOWR('S', 0x03, struct snd_seq_running_info)
467655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_CLIENT_INFO _IOWR('S', 0x10, struct snd_seq_client_info)
468106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
469d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_SET_CLIENT_INFO _IOW('S', 0x11, struct snd_seq_client_info)
470655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_CREATE_PORT _IOWR('S', 0x20, struct snd_seq_port_info)
47105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_DELETE_PORT _IOW('S', 0x21, struct snd_seq_port_info)
472655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_PORT_INFO _IOWR('S', 0x22, struct snd_seq_port_info)
473106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_SET_PORT_INFO _IOW('S', 0x23, struct snd_seq_port_info)
475d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_SUBSCRIBE_PORT _IOW('S', 0x30, struct snd_seq_port_subscribe)
47605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_UNSUBSCRIBE_PORT _IOW('S', 0x31, struct snd_seq_port_subscribe)
477655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_CREATE_QUEUE _IOWR('S', 0x32, struct snd_seq_queue_info)
478106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
479d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_DELETE_QUEUE _IOW('S', 0x33, struct snd_seq_queue_info)
480655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_QUEUE_INFO _IOWR('S', 0x34, struct snd_seq_queue_info)
48105d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_SET_QUEUE_INFO _IOWR('S', 0x35, struct snd_seq_queue_info)
482655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_NAMED_QUEUE _IOWR('S', 0x36, struct snd_seq_queue_info)
483106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS _IOWR('S', 0x40, struct snd_seq_queue_status)
485655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_QUEUE_TEMPO _IOWR('S', 0x41, struct snd_seq_queue_tempo)
48605d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_SET_QUEUE_TEMPO _IOW('S', 0x42, struct snd_seq_queue_tempo)
487655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_QUEUE_TIMER _IOWR('S', 0x45, struct snd_seq_queue_timer)
488655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
48905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_SET_QUEUE_TIMER _IOW('S', 0x46, struct snd_seq_queue_timer)
490655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_QUEUE_CLIENT _IOWR('S', 0x49, struct snd_seq_queue_client)
491d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_SET_QUEUE_CLIENT _IOW('S', 0x4a, struct snd_seq_queue_client)
492655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_CLIENT_POOL _IOWR('S', 0x4b, struct snd_seq_client_pool)
493655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49405d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_SET_CLIENT_POOL _IOW('S', 0x4c, struct snd_seq_client_pool)
495d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define SNDRV_SEQ_IOCTL_REMOVE_EVENTS _IOW('S', 0x4e, struct snd_seq_remove_events)
496655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_QUERY_SUBS _IOWR('S', 0x4f, struct snd_seq_query_subs)
497655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_GET_SUBSCRIPTION _IOWR('S', 0x50, struct snd_seq_port_subscribe)
498655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49905d08e9716b5974d6ed08973f44930804890b902Christopher Ferris#define SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT _IOWR('S', 0x51, struct snd_seq_client_info)
500655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define SNDRV_SEQ_IOCTL_QUERY_NEXT_PORT _IOWR('S', 0x52, struct snd_seq_port_info)
501655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif
502