tm6000-usb-isoc.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * tm6000-buf.c - driver for TM5600/TM6000/TM6010 USB video capture devices
  3. *
  4. * Copyright (C) 2006-2007 Mauro Carvalho Chehab <mchehab@infradead.org>
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License as published by
  8. * the Free Software Foundation version 2
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. */
  15. #include <linux/videodev2.h>
  16. #define TM6000_URB_MSG_LEN 180
  17. struct usb_isoc_ctl {
  18. /* max packet size of isoc transaction */
  19. int max_pkt_size;
  20. /* number of allocated urbs */
  21. int num_bufs;
  22. /* urb for isoc transfers */
  23. struct urb **urb;
  24. /* transfer buffers for isoc transfer */
  25. char **transfer_buffer;
  26. /* Last buffer command and region */
  27. u8 cmd;
  28. int pos, size, pktsize;
  29. /* Last field: ODD or EVEN? */
  30. int vfield, field;
  31. /* Stores incomplete commands */
  32. u32 tmp_buf;
  33. int tmp_buf_len;
  34. /* Stores already requested buffers */
  35. struct tm6000_buffer *buf;
  36. };