Lines Matching refs:ev
866 struct snd_seq_event tmpev, *ev; in snd_seq_dispatch_event() local
878 ev = &cell->event; in snd_seq_dispatch_event()
879 ev->type = SNDRV_SEQ_EVENT_NOTEOFF; in snd_seq_dispatch_event()
880 ev->flags |= SNDRV_SEQ_PRIORITY_HIGH; in snd_seq_dispatch_event()
883 switch (ev->flags & SNDRV_SEQ_TIME_STAMP_MASK) { in snd_seq_dispatch_event()
885 ev->time.tick += ev->data.note.duration; in snd_seq_dispatch_event()
889 ev->time.time.tv_nsec += 1000000 * (ev->data.note.duration % 1000); in snd_seq_dispatch_event()
890 ev->time.time.tv_sec += ev->data.note.duration / 1000 + in snd_seq_dispatch_event()
891 ev->time.time.tv_nsec / 1000000000; in snd_seq_dispatch_event()
892 ev->time.time.tv_nsec %= 1000000000; in snd_seq_dispatch_event()
895 ev->data.note.velocity = ev->data.note.off_velocity; in snd_seq_dispatch_event()
978 static int check_event_type_and_length(struct snd_seq_event *ev) in check_event_type_and_length() argument
980 switch (snd_seq_ev_length_type(ev)) { in check_event_type_and_length()
982 if (snd_seq_ev_is_variable_type(ev)) in check_event_type_and_length()
986 if (! snd_seq_ev_is_variable_type(ev) || in check_event_type_and_length()
987 (ev->data.ext.len & ~SNDRV_SEQ_EXT_MASK) >= SNDRV_SEQ_MAX_EVENT_LEN) in check_event_type_and_length()
991 if (! snd_seq_ev_is_direct(ev)) in check_event_type_and_length()
2324 static int kernel_client_enqueue(int client, struct snd_seq_event *ev, in kernel_client_enqueue() argument
2331 if (snd_BUG_ON(!ev)) in kernel_client_enqueue()
2334 if (ev->type == SNDRV_SEQ_EVENT_NONE) in kernel_client_enqueue()
2336 if (ev->type == SNDRV_SEQ_EVENT_KERNEL_ERROR) in kernel_client_enqueue()
2340 ev->source.client = client; in kernel_client_enqueue()
2342 if (check_event_type_and_length(ev)) in kernel_client_enqueue()
2352 result = snd_seq_client_enqueue_event(cptr, ev, file, blocking, atomic, hop); in kernel_client_enqueue()
2363 int snd_seq_kernel_client_enqueue(int client, struct snd_seq_event * ev, in snd_seq_kernel_client_enqueue() argument
2366 return kernel_client_enqueue(client, ev, NULL, 0, atomic, hop); in snd_seq_kernel_client_enqueue()
2376 int snd_seq_kernel_client_enqueue_blocking(int client, struct snd_seq_event * ev, in snd_seq_kernel_client_enqueue_blocking() argument
2380 return kernel_client_enqueue(client, ev, file, 1, atomic, hop); in snd_seq_kernel_client_enqueue_blocking()
2392 int snd_seq_kernel_client_dispatch(int client, struct snd_seq_event * ev, in snd_seq_kernel_client_dispatch() argument
2398 if (snd_BUG_ON(!ev)) in snd_seq_kernel_client_dispatch()
2402 ev->queue = SNDRV_SEQ_QUEUE_DIRECT; in snd_seq_kernel_client_dispatch()
2403 ev->source.client = client; in snd_seq_kernel_client_dispatch()
2405 if (check_event_type_and_length(ev)) in snd_seq_kernel_client_dispatch()
2415 result = snd_seq_deliver_event(cptr, ev, atomic, hop); in snd_seq_kernel_client_dispatch()