Commit | Line | Data |
---|---|---|
5da7f924 TI |
1 | #ifndef __USB_STREAM_H |
2 | #define __USB_STREAM_H | |
030a07e4 | 3 | |
5da7f924 | 4 | #include <uapi/sound/usb_stream.h> |
030a07e4 KW |
5 | |
6 | #define USB_STREAM_NURBS 4 | |
7 | #define USB_STREAM_URBDEPTH 4 | |
8 | ||
9 | struct usb_stream_kernel { | |
10 | struct usb_stream *s; | |
11 | ||
12 | void *write_page; | |
13 | ||
14 | unsigned n_o_ps; | |
15 | ||
16 | struct urb *inurb[USB_STREAM_NURBS]; | |
17 | struct urb *idle_inurb; | |
18 | struct urb *completed_inurb; | |
19 | struct urb *outurb[USB_STREAM_NURBS]; | |
20 | struct urb *idle_outurb; | |
21 | struct urb *completed_outurb; | |
22 | struct urb *i_urb; | |
23 | ||
24 | int iso_frame_balance; | |
25 | ||
26 | wait_queue_head_t sleep; | |
27 | ||
28 | unsigned out_phase; | |
29 | unsigned out_phase_peeked; | |
30 | unsigned freqn; | |
31 | }; | |
32 | ||
33 | struct usb_stream *usb_stream_new(struct usb_stream_kernel *sk, | |
34 | struct usb_device *dev, | |
35 | unsigned in_endpoint, unsigned out_endpoint, | |
36 | unsigned sample_rate, unsigned use_packsize, | |
37 | unsigned period_frames, unsigned frame_size); | |
38 | void usb_stream_free(struct usb_stream_kernel *); | |
39 | int usb_stream_start(struct usb_stream_kernel *); | |
40 | void usb_stream_stop(struct usb_stream_kernel *); | |
41 | ||
5da7f924 | 42 | #endif /* __USB_STREAM_H */ |