usb_stream.h revision 05d08e9716b5974d6ed08973f44930804890b902
1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ***   To edit the content of this header, modify the corresponding
11 ***   source file (e.g. under external/kernel-headers/original/) then
12 ***   run bionic/libc/kernel/tools/update_all.py
13 ***
14 ***   Any manual change here will be lost the next time this script will
15 ***   be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI__SOUND_USB_STREAM_H
20#define _UAPI__SOUND_USB_STREAM_H
21#define USB_STREAM_INTERFACE_VERSION 2
22#define SNDRV_USB_STREAM_IOCTL_SET_PARAMS _IOW('H', 0x90, struct usb_stream_config)
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24struct usb_stream_packet {
25  unsigned offset;
26  unsigned length;
27};
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29struct usb_stream_config {
30  unsigned version;
31  unsigned sample_rate;
32  unsigned period_frames;
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34  unsigned frame_size;
35};
36struct usb_stream {
37  struct usb_stream_config cfg;
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  unsigned read_size;
40  unsigned write_size;
41  int period_size;
42  unsigned state;
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44  int idle_insize;
45  int idle_outsize;
46  int sync_packet;
47  unsigned insize_done;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49  unsigned periods_done;
50  unsigned periods_polled;
51  struct usb_stream_packet outpacket[2];
52  unsigned inpackets;
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  unsigned inpacket_head;
55  unsigned inpacket_split;
56  unsigned inpacket_split_at;
57  unsigned next_inpacket_split;
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59  unsigned next_inpacket_split_at;
60  struct usb_stream_packet inpacket[0];
61};
62enum usb_stream_state {
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64  usb_stream_invalid,
65  usb_stream_stopped,
66  usb_stream_sync0,
67  usb_stream_sync1,
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69  usb_stream_ready,
70  usb_stream_running,
71  usb_stream_xrun,
72};
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74#endif
75