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