u_midi.h 856 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * u_midi.h
  3. *
  4. * Utility definitions for the midi function
  5. *
  6. * Copyright (c) 2014 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_MIDI_H
  16. #define U_MIDI_H
  17. #include <linux/usb/composite.h>
  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. * Protect the data form concurrent access by read/write
  29. * and create symlink/remove symlink.
  30. */
  31. struct mutex lock;
  32. int refcnt;
  33. };
  34. #endif /* U_MIDI_H */