mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-26 20:25:28 +07:00
7934092923
To be able to use the default USB class drivers available in Microsoft Windows, we need to add OS descriptors to the exported USB gadget to tell the OS that we are compatible with the built-in drivers. Copy the OS descriptor support from f_rndis into f_ncm. As a result, using the WINNCM compatible ID, the UsbNcm driver is loaded on enumeration without the need for a custom driver or inf file. Signed-off-by: Romain Izard <romain.izard.pro@gmail.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
37 lines
777 B
C
37 lines
777 B
C
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* u_ncm.h
|
|
*
|
|
* Utility definitions for the ncm function
|
|
*
|
|
* Copyright (c) 2013 Samsung Electronics Co., Ltd.
|
|
* http://www.samsung.com
|
|
*
|
|
* Author: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
|
|
*/
|
|
|
|
#ifndef U_NCM_H
|
|
#define U_NCM_H
|
|
|
|
#include <linux/usb/composite.h>
|
|
|
|
struct f_ncm_opts {
|
|
struct usb_function_instance func_inst;
|
|
struct net_device *net;
|
|
bool bound;
|
|
|
|
struct config_group *ncm_interf_group;
|
|
struct usb_os_desc ncm_os_desc;
|
|
char ncm_ext_compat_id[16];
|
|
/*
|
|
* Read/write access to configfs attributes is handled by configfs.
|
|
*
|
|
* This is to protect the data from concurrent access by read/write
|
|
* and create symlink/remove symlink.
|
|
*/
|
|
struct mutex lock;
|
|
int refcnt;
|
|
};
|
|
|
|
#endif /* U_NCM_H */
|