GNU Linux-libre 4.19.304-gnu1
[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 <andrzej.p@samsung.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