GNU Linux-libre 6.8.7-gnu
[releases.git] / drivers / usb / gadget / function / u_midi.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * u_midi.h
4  *
5  * Utility definitions for the midi function
6  *
7  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
8  *              http://www.samsung.com
9  *
10  * Author: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
11  */
12
13 #ifndef U_MIDI_H
14 #define U_MIDI_H
15
16 #include <linux/usb/composite.h>
17
18 struct f_midi_opts {
19         struct usb_function_instance    func_inst;
20         int                             index;
21         char                            *id;
22         bool                            id_allocated;
23         unsigned int                    in_ports;
24         unsigned int                    out_ports;
25         unsigned int                    buflen;
26         unsigned int                    qlen;
27
28         /*
29          * Protect the data form concurrent access by read/write
30          * and create symlink/remove symlink.
31          */
32         struct mutex                    lock;
33         int                             refcnt;
34 };
35
36 #endif /* U_MIDI_H */
37