staging: comedi: 8255_pci: fix possible NULL deref during detach
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / staging / line6 / midibuf.h
CommitLineData
705ececd 1/*
e1a164d7 2 * Line6 Linux USB driver - 0.9.1beta
705ececd 3 *
1027f476 4 * Copyright (C) 2004-2010 Markus Grabner (grabner@icg.tugraz.at)
705ececd
MG
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License as
8 * published by the Free Software Foundation, version 2.
9 *
10 */
11
12#ifndef MIDIBUF_H
13#define MIDIBUF_H
14
a49e4838 15struct MidiBuffer {
705ececd
MG
16 unsigned char *buf;
17 int size;
18 int split;
19 int pos_read, pos_write;
20 int full;
21 int command_prev;
22};
23
1027f476
MG
24extern int line6_midibuf_bytes_used(struct MidiBuffer *mb);
25extern int line6_midibuf_bytes_free(struct MidiBuffer *mb);
26extern void line6_midibuf_destroy(struct MidiBuffer *mb);
27extern int line6_midibuf_ignore(struct MidiBuffer *mb, int length);
28extern int line6_midibuf_init(struct MidiBuffer *mb, int size, int split);
e1a164d7
MG
29extern int line6_midibuf_read(struct MidiBuffer *mb, unsigned char *data,
30 int length);
1027f476 31extern void line6_midibuf_reset(struct MidiBuffer *mb);
e1a164d7
MG
32extern int line6_midibuf_skip_message(struct MidiBuffer *mb,
33 unsigned short mask);
1027f476
MG
34extern void line6_midibuf_status(struct MidiBuffer *mb);
35extern int line6_midibuf_write(struct MidiBuffer *mb, unsigned char *data,
36 int length);
705ececd 37
705ececd 38#endif