xref: /linux/drivers/usb/gadget/function/u_printer.h (revision 5fd54ace4721fc5ce2bb5aef6318fcf17f421460)
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * u_printer.h
4  *
5  * Utility definitions for the printer function
6  *
7  * Copyright (c) 2015 Samsung Electronics Co., Ltd.
8  *		http://www.samsung.com
9  *
10  * Author: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License version 2 as
14  * published by the Free Software Foundation.
15  */
16 
17 #ifndef U_PRINTER_H
18 #define U_PRINTER_H
19 
20 #include <linux/usb/composite.h>
21 
22 struct f_printer_opts {
23 	struct usb_function_instance	func_inst;
24 	int				minor;
25 	char				*pnp_string;
26 	bool				pnp_string_allocated;
27 	unsigned			q_len;
28 
29 	/*
30 	 * Protect the data from concurrent access by read/write
31 	 * and create symlink/remove symlink
32 	 */
33 	struct mutex			lock;
34 	int				refcnt;
35 };
36 
37 #endif /* U_PRINTER_H */
38