u_rndis.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /*
  2. * u_rndis.h
  3. *
  4. * Utility definitions for the subset 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. #ifndef U_RNDIS_H
  16. #define U_RNDIS_H
  17. #include <linux/usb/composite.h>
  18. struct f_rndis_opts {
  19. struct usb_function_instance func_inst;
  20. u32 vendor_id;
  21. const char *manufacturer;
  22. struct net_device *net;
  23. bool bound;
  24. bool borrowed_net;
  25. struct usb_os_desc rndis_os_desc;
  26. char rndis_ext_compat_id[16];
  27. /*
  28. * Read/write access to configfs attributes is handled by configfs.
  29. *
  30. * This is to 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. void rndis_borrow_net(struct usb_function_instance *f, struct net_device *net);
  37. #endif /* U_RNDIS_H */