xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/firewire-cdev.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _LINUX_FIREWIRE_CDEV_H
8*8d67ca89SAndroid Build Coastguard Worker #define _LINUX_FIREWIRE_CDEV_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/ioctl.h>
10*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
11*8d67ca89SAndroid Build Coastguard Worker #include <linux/firewire-constants.h>
12*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_BUS_RESET 0x00
13*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_RESPONSE 0x01
14*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_REQUEST 0x02
15*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_ISO_INTERRUPT 0x03
16*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_ISO_RESOURCE_ALLOCATED 0x04
17*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_ISO_RESOURCE_DEALLOCATED 0x05
18*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_REQUEST2 0x06
19*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_PHY_PACKET_SENT 0x07
20*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_PHY_PACKET_RECEIVED 0x08
21*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_ISO_INTERRUPT_MULTICHANNEL 0x09
22*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_REQUEST3 0x0a
23*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_RESPONSE2 0x0b
24*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_PHY_PACKET_SENT2 0x0c
25*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_EVENT_PHY_PACKET_RECEIVED2 0x0d
26*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_common {
27*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
28*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
29*8d67ca89SAndroid Build Coastguard Worker };
30*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_bus_reset {
31*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
32*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
33*8d67ca89SAndroid Build Coastguard Worker   __u32 node_id;
34*8d67ca89SAndroid Build Coastguard Worker   __u32 local_node_id;
35*8d67ca89SAndroid Build Coastguard Worker   __u32 bm_node_id;
36*8d67ca89SAndroid Build Coastguard Worker   __u32 irm_node_id;
37*8d67ca89SAndroid Build Coastguard Worker   __u32 root_node_id;
38*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
39*8d67ca89SAndroid Build Coastguard Worker };
40*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_response {
41*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
42*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
43*8d67ca89SAndroid Build Coastguard Worker   __u32 rcode;
44*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
45*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
46*8d67ca89SAndroid Build Coastguard Worker };
47*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_response2 {
48*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
49*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
50*8d67ca89SAndroid Build Coastguard Worker   __u32 rcode;
51*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
52*8d67ca89SAndroid Build Coastguard Worker   __u32 request_tstamp;
53*8d67ca89SAndroid Build Coastguard Worker   __u32 response_tstamp;
54*8d67ca89SAndroid Build Coastguard Worker   __u32 padding;
55*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
56*8d67ca89SAndroid Build Coastguard Worker };
57*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_request {
58*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
59*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
60*8d67ca89SAndroid Build Coastguard Worker   __u32 tcode;
61*8d67ca89SAndroid Build Coastguard Worker   __u64 offset;
62*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
63*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
64*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
65*8d67ca89SAndroid Build Coastguard Worker };
66*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_request2 {
67*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
68*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
69*8d67ca89SAndroid Build Coastguard Worker   __u32 tcode;
70*8d67ca89SAndroid Build Coastguard Worker   __u64 offset;
71*8d67ca89SAndroid Build Coastguard Worker   __u32 source_node_id;
72*8d67ca89SAndroid Build Coastguard Worker   __u32 destination_node_id;
73*8d67ca89SAndroid Build Coastguard Worker   __u32 card;
74*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
75*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
76*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
77*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
78*8d67ca89SAndroid Build Coastguard Worker };
79*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_request3 {
80*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
81*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
82*8d67ca89SAndroid Build Coastguard Worker   __u32 tcode;
83*8d67ca89SAndroid Build Coastguard Worker   __u64 offset;
84*8d67ca89SAndroid Build Coastguard Worker   __u32 source_node_id;
85*8d67ca89SAndroid Build Coastguard Worker   __u32 destination_node_id;
86*8d67ca89SAndroid Build Coastguard Worker   __u32 card;
87*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
88*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
89*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
90*8d67ca89SAndroid Build Coastguard Worker   __u32 tstamp;
91*8d67ca89SAndroid Build Coastguard Worker   __u32 padding;
92*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
93*8d67ca89SAndroid Build Coastguard Worker };
94*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_iso_interrupt {
95*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
96*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
97*8d67ca89SAndroid Build Coastguard Worker   __u32 cycle;
98*8d67ca89SAndroid Build Coastguard Worker   __u32 header_length;
99*8d67ca89SAndroid Build Coastguard Worker   __u32 header[];
100*8d67ca89SAndroid Build Coastguard Worker };
101*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_iso_interrupt_mc {
102*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
103*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
104*8d67ca89SAndroid Build Coastguard Worker   __u32 completed;
105*8d67ca89SAndroid Build Coastguard Worker };
106*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_iso_resource {
107*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
108*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
109*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
110*8d67ca89SAndroid Build Coastguard Worker   __s32 channel;
111*8d67ca89SAndroid Build Coastguard Worker   __s32 bandwidth;
112*8d67ca89SAndroid Build Coastguard Worker };
113*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_phy_packet {
114*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
115*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
116*8d67ca89SAndroid Build Coastguard Worker   __u32 rcode;
117*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
118*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
119*8d67ca89SAndroid Build Coastguard Worker };
120*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_event_phy_packet2 {
121*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
122*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
123*8d67ca89SAndroid Build Coastguard Worker   __u32 rcode;
124*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
125*8d67ca89SAndroid Build Coastguard Worker   __u32 tstamp;
126*8d67ca89SAndroid Build Coastguard Worker   __u32 data[];
127*8d67ca89SAndroid Build Coastguard Worker };
128*8d67ca89SAndroid Build Coastguard Worker union fw_cdev_event {
129*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_common common;
130*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_bus_reset bus_reset;
131*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_response response;
132*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_request request;
133*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_request2 request2;
134*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_iso_interrupt iso_interrupt;
135*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_iso_interrupt_mc iso_interrupt_mc;
136*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_iso_resource iso_resource;
137*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_phy_packet phy_packet;
138*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_request3 request3;
139*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_response2 response2;
140*8d67ca89SAndroid Build Coastguard Worker   struct fw_cdev_event_phy_packet2 phy_packet2;
141*8d67ca89SAndroid Build Coastguard Worker };
142*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_GET_INFO _IOWR('#', 0x00, struct fw_cdev_get_info)
143*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SEND_REQUEST _IOW('#', 0x01, struct fw_cdev_send_request)
144*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_ALLOCATE _IOWR('#', 0x02, struct fw_cdev_allocate)
145*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_DEALLOCATE _IOW('#', 0x03, struct fw_cdev_deallocate)
146*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SEND_RESPONSE _IOW('#', 0x04, struct fw_cdev_send_response)
147*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_INITIATE_BUS_RESET _IOW('#', 0x05, struct fw_cdev_initiate_bus_reset)
148*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_ADD_DESCRIPTOR _IOWR('#', 0x06, struct fw_cdev_add_descriptor)
149*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_REMOVE_DESCRIPTOR _IOW('#', 0x07, struct fw_cdev_remove_descriptor)
150*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_CREATE_ISO_CONTEXT _IOWR('#', 0x08, struct fw_cdev_create_iso_context)
151*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_QUEUE_ISO _IOWR('#', 0x09, struct fw_cdev_queue_iso)
152*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_START_ISO _IOW('#', 0x0a, struct fw_cdev_start_iso)
153*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_STOP_ISO _IOW('#', 0x0b, struct fw_cdev_stop_iso)
154*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_GET_CYCLE_TIMER _IOR('#', 0x0c, struct fw_cdev_get_cycle_timer)
155*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE _IOWR('#', 0x0d, struct fw_cdev_allocate_iso_resource)
156*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE _IOW('#', 0x0e, struct fw_cdev_deallocate)
157*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE _IOW('#', 0x0f, struct fw_cdev_allocate_iso_resource)
158*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE _IOW('#', 0x10, struct fw_cdev_allocate_iso_resource)
159*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_GET_SPEED _IO('#', 0x11)
160*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SEND_BROADCAST_REQUEST _IOW('#', 0x12, struct fw_cdev_send_request)
161*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SEND_STREAM_PACKET _IOW('#', 0x13, struct fw_cdev_send_stream_packet)
162*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_GET_CYCLE_TIMER2 _IOWR('#', 0x14, struct fw_cdev_get_cycle_timer2)
163*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SEND_PHY_PACKET _IOWR('#', 0x15, struct fw_cdev_send_phy_packet)
164*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_RECEIVE_PHY_PACKETS _IOW('#', 0x16, struct fw_cdev_receive_phy_packets)
165*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_SET_ISO_CHANNELS _IOW('#', 0x17, struct fw_cdev_set_iso_channels)
166*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_IOC_FLUSH_ISO _IOW('#', 0x18, struct fw_cdev_flush_iso)
167*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_get_info {
168*8d67ca89SAndroid Build Coastguard Worker   __u32 version;
169*8d67ca89SAndroid Build Coastguard Worker   __u32 rom_length;
170*8d67ca89SAndroid Build Coastguard Worker   __u64 rom;
171*8d67ca89SAndroid Build Coastguard Worker   __u64 bus_reset;
172*8d67ca89SAndroid Build Coastguard Worker   __u64 bus_reset_closure;
173*8d67ca89SAndroid Build Coastguard Worker   __u32 card;
174*8d67ca89SAndroid Build Coastguard Worker };
175*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_send_request {
176*8d67ca89SAndroid Build Coastguard Worker   __u32 tcode;
177*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
178*8d67ca89SAndroid Build Coastguard Worker   __u64 offset;
179*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
180*8d67ca89SAndroid Build Coastguard Worker   __u64 data;
181*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
182*8d67ca89SAndroid Build Coastguard Worker };
183*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_send_response {
184*8d67ca89SAndroid Build Coastguard Worker   __u32 rcode;
185*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
186*8d67ca89SAndroid Build Coastguard Worker   __u64 data;
187*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
188*8d67ca89SAndroid Build Coastguard Worker };
189*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_allocate {
190*8d67ca89SAndroid Build Coastguard Worker   __u64 offset;
191*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
192*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
193*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
194*8d67ca89SAndroid Build Coastguard Worker   __u64 region_end;
195*8d67ca89SAndroid Build Coastguard Worker };
196*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_deallocate {
197*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
198*8d67ca89SAndroid Build Coastguard Worker };
199*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_LONG_RESET 0
200*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_SHORT_RESET 1
201*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_initiate_bus_reset {
202*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
203*8d67ca89SAndroid Build Coastguard Worker };
204*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_add_descriptor {
205*8d67ca89SAndroid Build Coastguard Worker   __u32 immediate;
206*8d67ca89SAndroid Build Coastguard Worker   __u32 key;
207*8d67ca89SAndroid Build Coastguard Worker   __u64 data;
208*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
209*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
210*8d67ca89SAndroid Build Coastguard Worker };
211*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_remove_descriptor {
212*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
213*8d67ca89SAndroid Build Coastguard Worker };
214*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_TRANSMIT 0
215*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_RECEIVE 1
216*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_RECEIVE_MULTICHANNEL 2
217*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_create_iso_context {
218*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
219*8d67ca89SAndroid Build Coastguard Worker   __u32 header_size;
220*8d67ca89SAndroid Build Coastguard Worker   __u32 channel;
221*8d67ca89SAndroid Build Coastguard Worker   __u32 speed;
222*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
223*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
224*8d67ca89SAndroid Build Coastguard Worker };
225*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_set_iso_channels {
226*8d67ca89SAndroid Build Coastguard Worker   __u64 channels;
227*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
228*8d67ca89SAndroid Build Coastguard Worker };
229*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_PAYLOAD_LENGTH(v) (v)
230*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_INTERRUPT (1 << 16)
231*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_SKIP (1 << 17)
232*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_SYNC (1 << 17)
233*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_TAG(v) ((v) << 18)
234*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_SY(v) ((v) << 20)
235*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_HEADER_LENGTH(v) ((v) << 24)
236*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_iso_packet {
237*8d67ca89SAndroid Build Coastguard Worker   __u32 control;
238*8d67ca89SAndroid Build Coastguard Worker   __u32 header[];
239*8d67ca89SAndroid Build Coastguard Worker };
240*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_queue_iso {
241*8d67ca89SAndroid Build Coastguard Worker   __u64 packets;
242*8d67ca89SAndroid Build Coastguard Worker   __u64 data;
243*8d67ca89SAndroid Build Coastguard Worker   __u32 size;
244*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
245*8d67ca89SAndroid Build Coastguard Worker };
246*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_MATCH_TAG0 1
247*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_MATCH_TAG1 2
248*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_MATCH_TAG2 4
249*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_MATCH_TAG3 8
250*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_ISO_CONTEXT_MATCH_ALL_TAGS 15
251*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_start_iso {
252*8d67ca89SAndroid Build Coastguard Worker   __s32 cycle;
253*8d67ca89SAndroid Build Coastguard Worker   __u32 sync;
254*8d67ca89SAndroid Build Coastguard Worker   __u32 tags;
255*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
256*8d67ca89SAndroid Build Coastguard Worker };
257*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_stop_iso {
258*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
259*8d67ca89SAndroid Build Coastguard Worker };
260*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_flush_iso {
261*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
262*8d67ca89SAndroid Build Coastguard Worker };
263*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_get_cycle_timer {
264*8d67ca89SAndroid Build Coastguard Worker   __u64 local_time;
265*8d67ca89SAndroid Build Coastguard Worker   __u32 cycle_timer;
266*8d67ca89SAndroid Build Coastguard Worker };
267*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_get_cycle_timer2 {
268*8d67ca89SAndroid Build Coastguard Worker   __s64 tv_sec;
269*8d67ca89SAndroid Build Coastguard Worker   __s32 tv_nsec;
270*8d67ca89SAndroid Build Coastguard Worker   __s32 clk_id;
271*8d67ca89SAndroid Build Coastguard Worker   __u32 cycle_timer;
272*8d67ca89SAndroid Build Coastguard Worker };
273*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_allocate_iso_resource {
274*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
275*8d67ca89SAndroid Build Coastguard Worker   __u64 channels;
276*8d67ca89SAndroid Build Coastguard Worker   __u32 bandwidth;
277*8d67ca89SAndroid Build Coastguard Worker   __u32 handle;
278*8d67ca89SAndroid Build Coastguard Worker };
279*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_send_stream_packet {
280*8d67ca89SAndroid Build Coastguard Worker   __u32 length;
281*8d67ca89SAndroid Build Coastguard Worker   __u32 tag;
282*8d67ca89SAndroid Build Coastguard Worker   __u32 channel;
283*8d67ca89SAndroid Build Coastguard Worker   __u32 sy;
284*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
285*8d67ca89SAndroid Build Coastguard Worker   __u64 data;
286*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
287*8d67ca89SAndroid Build Coastguard Worker   __u32 speed;
288*8d67ca89SAndroid Build Coastguard Worker };
289*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_send_phy_packet {
290*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
291*8d67ca89SAndroid Build Coastguard Worker   __u32 data[2];
292*8d67ca89SAndroid Build Coastguard Worker   __u32 generation;
293*8d67ca89SAndroid Build Coastguard Worker };
294*8d67ca89SAndroid Build Coastguard Worker struct fw_cdev_receive_phy_packets {
295*8d67ca89SAndroid Build Coastguard Worker   __u64 closure;
296*8d67ca89SAndroid Build Coastguard Worker };
297*8d67ca89SAndroid Build Coastguard Worker #define FW_CDEV_VERSION 3
298*8d67ca89SAndroid Build Coastguard Worker #endif
299