Lines Matching +full:per +full:- +full:port +full:- +full:set

1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
4 * Copyright (c) 1998-1999 by Frank van de Pol <fvdpol@coil.demon.nl>
5 * (c) 1998-1999 by Jaroslav Kysela <perex@perex.cz>
39 #define SNDRV_SEQ_EVENT_PITCHBEND 13 /**< from -8192 to 8191 */
59 #define SNDRV_SEQ_EVENT_SETPOS_TICK 33 /* set tick queue position */
60 #define SNDRV_SEQ_EVENT_SETPOS_TIME 34 /* set realtime queue position */
70 #define SNDRV_SEQ_EVENT_RESET 41 /* reset to power-on state */
85 #define SNDRV_SEQ_EVENT_PORT_START 63 /* new port was created */
86 #define SNDRV_SEQ_EVENT_PORT_EXIT 64 /* port was deleted from system */
87 #define SNDRV_SEQ_EVENT_PORT_CHANGE 65 /* port status/info has changed */
89 /** port connection changes
95 /* 70-89: synthesizer events - obsoleted */
97 /** user-defined events with fixed length
111 /* 100-118: instrument layer - obsoleted */
112 /* 119-129: reserved */
114 /* 130-139: variable length events
116 * (SNDRV_SEQ_EVENT_LENGTH_VARIABLE must be set)
120 /* 132-134: reserved */
127 /* 150-151: kernel events with quote - DO NOT use in user clients */
131 /* 152-191: reserved */
133 /* 192-254: hardware specific events */
144 unsigned char port; /**< Port within client: 0..255, 255 = broadcast to all ports */ member
147 /** port connection */
159 /* event mode flag - NOTE: only 8 bits available! */
170 #define SNDRV_SEQ_EVENT_LENGTH_VARUSR (2<<2) /* variable event size - user memory space */
196 /* generic set of bytes (12x8 bit) */
201 /* generic set of integers (3x32 bit) */
209 void *ptr; /* pointer to data (note: maybe 64-bit) */
249 /* quoted event - inside the kernel only */
285 /* (compatible) event for UMP-capable clients */
302 * bounce event - stored as variable size data
315 int ports; /* maximum ports per client */
316 int channels; /* maximum channels per port */
326 unsigned char big_endian; /* 1 = big-endian */
367 * bit 1-16 = messages for groups 1-16)
393 #define SNDRV_SEQ_REMOVE_DEST (1<<2) /* Restrict by destination q:client:port */
419 /* known port numbers */
423 /* port capabilities (32 bits) */
424 #define SNDRV_SEQ_PORT_CAP_READ (1<<0) /* readable from this port */
425 #define SNDRV_SEQ_PORT_CAP_WRITE (1<<1) /* writable to this port */
435 #define SNDRV_SEQ_PORT_CAP_INACTIVE (1<<8) /* inactive port */
436 #define SNDRV_SEQ_PORT_CAP_UMP_ENDPOINT (1<<9) /* MIDI 2.0 UMP Endpoint port */
438 /* port type */
444 #define SNDRV_SEQ_PORT_TYPE_MIDI_MT32 (1<<5) /* MT-32 compatible device */
449 #define SNDRV_SEQ_PORT_TYPE_SYNTH (1<<10) /* Synth device (no MIDI compatible - direct wavetable) */
466 /* port direction */
473 struct snd_seq_addr addr; /* client/port numbers */
474 char name[64]; /* port name */
476 unsigned int capability; /* port capability bits */
477 unsigned int type; /* port type bits */
478 int midi_channels; /* channels per MIDI port */
479 int midi_voices; /* voices per MIDI port */
480 int synth_voices; /* voices per SYNTH port */
482 int read_use; /* R/O: subscribers for output (from this port) */
483 int write_use; /* R/O: subscribers for input (to this port) */
488 unsigned char direction; /* port usage direction (r/w/bidir) */
489 unsigned char ump_group; /* 0 = UMP EP (no conversion), 1-16 = UMP group number */
516 int events; /* read-only - queue size */
528 unsigned int tempo; /* current tempo, us/tick (or different time-base below) */
560 (must be set for accepting events) */
561 /* per client watermarks */
575 unsigned char queue; /* input time-stamp queue (optional) */
585 struct snd_seq_addr root; /* client/port id to be searched */
587 int index; /* 0..N-1 */
588 int num_subs; /* R/O: number of subscriptions on this port */
596 * UMP-specific information
603 int client; /* client number to inquire/set */
604 int type; /* type to inquire/set */