cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

seq_midi_event.h (1356B)


      1/* SPDX-License-Identifier: GPL-2.0-or-later */
      2#ifndef __SOUND_SEQ_MIDI_EVENT_H
      3#define __SOUND_SEQ_MIDI_EVENT_H
      4
      5/*
      6 *  MIDI byte <-> sequencer event coder
      7 *
      8 *  Copyright (C) 1998,99 Takashi Iwai <tiwai@suse.de>,
      9 *                        Jaroslav Kysela <perex@perex.cz>
     10 */
     11
     12#include <sound/asequencer.h>
     13
     14#define MAX_MIDI_EVENT_BUF	256
     15
     16/* midi status */
     17struct snd_midi_event {
     18	int qlen;		/* queue length */
     19	int read;		/* chars read */
     20	int type;		/* current event type */
     21	unsigned char lastcmd;	/* last command (for MIDI state handling) */
     22	unsigned char nostat;	/* no state flag */
     23	int bufsize;		/* allocated buffer size */
     24	unsigned char *buf;	/* input buffer */
     25	spinlock_t lock;
     26};
     27
     28int snd_midi_event_new(int bufsize, struct snd_midi_event **rdev);
     29void snd_midi_event_free(struct snd_midi_event *dev);
     30void snd_midi_event_reset_encode(struct snd_midi_event *dev);
     31void snd_midi_event_reset_decode(struct snd_midi_event *dev);
     32void snd_midi_event_no_status(struct snd_midi_event *dev, int on);
     33bool snd_midi_event_encode_byte(struct snd_midi_event *dev, unsigned char c,
     34				struct snd_seq_event *ev);
     35/* decode from event to bytes - return number of written bytes if success */
     36long snd_midi_event_decode(struct snd_midi_event *dev, unsigned char *buf, long count,
     37			   struct snd_seq_event *ev);
     38
     39#endif /* __SOUND_SEQ_MIDI_EVENT_H */