1 /*
2  * u_midi.h
3  *
4  * Utility definitions for the midi function
5  *
6  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
7  *		http://www.samsung.com
8  *
9  * Author: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
10  *
11  * This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License version 2 as
13  * published by the Free Software Foundation.
14  */
15 
16 #ifndef U_MIDI_H
17 #define U_MIDI_H
18 
19 #include <linux/usb/composite.h>
20 
21 struct f_midi_opts {
22 	struct usb_function_instance	func_inst;
23 	int				index;
24 	char				*id;
25 	bool				id_allocated;
26 	unsigned int			in_ports;
27 	unsigned int			out_ports;
28 	unsigned int			buflen;
29 	unsigned int			qlen;
30 
31 	/*
32 	 * Protect the data form concurrent access by read/write
33 	 * and create symlink/remove symlink.
34 	 */
35 	 struct mutex			lock;
36 	 int				refcnt;
37 };
38 
39 #endif /* U_MIDI_H */
40 
41