xref: /linux/drivers/usb/gadget/function/u_ecm.h (revision 5b49ab3e03f68eb49db4bce6290e5707b7f6c6f3)
1 /*
2  * u_ecm.h
3  *
4  * Utility definitions for the ecm function
5  *
6  * Copyright (c) 2013 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_ECM_H
17 #define U_ECM_H
18 
19 #include <linux/usb/composite.h>
20 
21 struct f_ecm_opts {
22 	struct usb_function_instance	func_inst;
23 	struct net_device		*net;
24 	bool				bound;
25 
26 	/*
27 	 * Read/write access to configfs attributes is handled by configfs.
28 	 *
29 	 * This is to protect the data from concurrent access by read/write
30 	 * and create symlink/remove symlink.
31 	 */
32 	struct mutex			lock;
33 	int				refcnt;
34 };
35 
36 #endif /* U_ECM_H */
37