334 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			334 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /****************************************************************************
 | |
|  ****************************************************************************
 | |
|  ***
 | |
|  ***   This header was automatically generated from a Linux kernel header
 | |
|  ***   of the same name, to make information necessary for userspace to
 | |
|  ***   call into the kernel available to libc.  It contains only constants,
 | |
|  ***   structures, and macros generated from the original header, and thus,
 | |
|  ***   contains no copyrightable information.
 | |
|  ***
 | |
|  ***   To edit the content of this header, modify the corresponding
 | |
|  ***   source file (e.g. under external/kernel-headers/original/) then
 | |
|  ***   run bionic/libc/kernel/tools/update_all.py
 | |
|  ***
 | |
|  ***   Any manual change here will be lost the next time this script will
 | |
|  ***   be run. You've been warned!
 | |
|  ***
 | |
|  ****************************************************************************
 | |
|  ****************************************************************************/
 | |
| #ifndef _LINUX_FIREWIRE_CDEV_H
 | |
| #define _LINUX_FIREWIRE_CDEV_H
 | |
| #include <linux/ioctl.h>
 | |
| #include <linux/types.h>
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #include <linux/firewire-constants.h>
 | |
| #define FW_CDEV_EVENT_BUS_RESET 0x00
 | |
| #define FW_CDEV_EVENT_RESPONSE 0x01
 | |
| #define FW_CDEV_EVENT_REQUEST 0x02
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_EVENT_ISO_INTERRUPT 0x03
 | |
| #define FW_CDEV_EVENT_ISO_RESOURCE_ALLOCATED 0x04
 | |
| #define FW_CDEV_EVENT_ISO_RESOURCE_DEALLOCATED 0x05
 | |
| #define FW_CDEV_EVENT_REQUEST2 0x06
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_EVENT_PHY_PACKET_SENT 0x07
 | |
| #define FW_CDEV_EVENT_PHY_PACKET_RECEIVED 0x08
 | |
| #define FW_CDEV_EVENT_ISO_INTERRUPT_MULTICHANNEL 0x09
 | |
| struct fw_cdev_event_common {
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
| };
 | |
| struct fw_cdev_event_bus_reset {
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
|  __u32 node_id;
 | |
|  __u32 local_node_id;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 bm_node_id;
 | |
|  __u32 irm_node_id;
 | |
|  __u32 root_node_id;
 | |
|  __u32 generation;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_event_response {
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 rcode;
 | |
|  __u32 length;
 | |
|  __u32 data[0];
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_event_request {
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
|  __u32 tcode;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 offset;
 | |
|  __u32 handle;
 | |
|  __u32 length;
 | |
|  __u32 data[0];
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_event_request2 {
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 tcode;
 | |
|  __u64 offset;
 | |
|  __u32 source_node_id;
 | |
|  __u32 destination_node_id;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 card;
 | |
|  __u32 generation;
 | |
|  __u32 handle;
 | |
|  __u32 length;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 data[0];
 | |
| };
 | |
| struct fw_cdev_event_iso_interrupt {
 | |
|  __u64 closure;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 type;
 | |
|  __u32 cycle;
 | |
|  __u32 header_length;
 | |
|  __u32 header[0];
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_event_iso_interrupt_mc {
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 completed;
 | |
| };
 | |
| struct fw_cdev_event_iso_resource {
 | |
|  __u64 closure;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 type;
 | |
|  __u32 handle;
 | |
|  __s32 channel;
 | |
|  __s32 bandwidth;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_event_phy_packet {
 | |
|  __u64 closure;
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 rcode;
 | |
|  __u32 length;
 | |
|  __u32 data[0];
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| union fw_cdev_event {
 | |
|  struct fw_cdev_event_common common;
 | |
|  struct fw_cdev_event_bus_reset bus_reset;
 | |
|  struct fw_cdev_event_response response;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  struct fw_cdev_event_request request;
 | |
|  struct fw_cdev_event_request2 request2;
 | |
|  struct fw_cdev_event_iso_interrupt iso_interrupt;
 | |
|  struct fw_cdev_event_iso_interrupt_mc iso_interrupt_mc;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  struct fw_cdev_event_iso_resource iso_resource;
 | |
|  struct fw_cdev_event_phy_packet phy_packet;
 | |
| };
 | |
| #define FW_CDEV_IOC_GET_INFO _IOWR('#', 0x00, struct fw_cdev_get_info)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_SEND_REQUEST _IOW('#', 0x01, struct fw_cdev_send_request)
 | |
| #define FW_CDEV_IOC_ALLOCATE _IOWR('#', 0x02, struct fw_cdev_allocate)
 | |
| #define FW_CDEV_IOC_DEALLOCATE _IOW('#', 0x03, struct fw_cdev_deallocate)
 | |
| #define FW_CDEV_IOC_SEND_RESPONSE _IOW('#', 0x04, struct fw_cdev_send_response)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_INITIATE_BUS_RESET _IOW('#', 0x05, struct fw_cdev_initiate_bus_reset)
 | |
| #define FW_CDEV_IOC_ADD_DESCRIPTOR _IOWR('#', 0x06, struct fw_cdev_add_descriptor)
 | |
| #define FW_CDEV_IOC_REMOVE_DESCRIPTOR _IOW('#', 0x07, struct fw_cdev_remove_descriptor)
 | |
| #define FW_CDEV_IOC_CREATE_ISO_CONTEXT _IOWR('#', 0x08, struct fw_cdev_create_iso_context)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_QUEUE_ISO _IOWR('#', 0x09, struct fw_cdev_queue_iso)
 | |
| #define FW_CDEV_IOC_START_ISO _IOW('#', 0x0a, struct fw_cdev_start_iso)
 | |
| #define FW_CDEV_IOC_STOP_ISO _IOW('#', 0x0b, struct fw_cdev_stop_iso)
 | |
| #define FW_CDEV_IOC_GET_CYCLE_TIMER _IOR('#', 0x0c, struct fw_cdev_get_cycle_timer)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE _IOWR('#', 0x0d, struct fw_cdev_allocate_iso_resource)
 | |
| #define FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE _IOW('#', 0x0e, struct fw_cdev_deallocate)
 | |
| #define FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE _IOW('#', 0x0f, struct fw_cdev_allocate_iso_resource)
 | |
| #define FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE _IOW('#', 0x10, struct fw_cdev_allocate_iso_resource)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_GET_SPEED _IO('#', 0x11)
 | |
| #define FW_CDEV_IOC_SEND_BROADCAST_REQUEST _IOW('#', 0x12, struct fw_cdev_send_request)
 | |
| #define FW_CDEV_IOC_SEND_STREAM_PACKET _IOW('#', 0x13, struct fw_cdev_send_stream_packet)
 | |
| #define FW_CDEV_IOC_GET_CYCLE_TIMER2 _IOWR('#', 0x14, struct fw_cdev_get_cycle_timer2)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_IOC_SEND_PHY_PACKET _IOWR('#', 0x15, struct fw_cdev_send_phy_packet)
 | |
| #define FW_CDEV_IOC_RECEIVE_PHY_PACKETS _IOW('#', 0x16, struct fw_cdev_receive_phy_packets)
 | |
| #define FW_CDEV_IOC_SET_ISO_CHANNELS _IOW('#', 0x17, struct fw_cdev_set_iso_channels)
 | |
| #define FW_CDEV_IOC_FLUSH_ISO _IOW('#', 0x18, struct fw_cdev_flush_iso)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_get_info {
 | |
|  __u32 version;
 | |
|  __u32 rom_length;
 | |
|  __u64 rom;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 bus_reset;
 | |
|  __u64 bus_reset_closure;
 | |
|  __u32 card;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_send_request {
 | |
|  __u32 tcode;
 | |
|  __u32 length;
 | |
|  __u64 offset;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 closure;
 | |
|  __u64 data;
 | |
|  __u32 generation;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_send_response {
 | |
|  __u32 rcode;
 | |
|  __u32 length;
 | |
|  __u64 data;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 handle;
 | |
| };
 | |
| struct fw_cdev_allocate {
 | |
|  __u64 offset;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 closure;
 | |
|  __u32 length;
 | |
|  __u32 handle;
 | |
|  __u64 region_end;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_deallocate {
 | |
|  __u32 handle;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_LONG_RESET 0
 | |
| #define FW_CDEV_SHORT_RESET 1
 | |
| struct fw_cdev_initiate_bus_reset {
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_add_descriptor {
 | |
|  __u32 immediate;
 | |
|  __u32 key;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 data;
 | |
|  __u32 length;
 | |
|  __u32 handle;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_remove_descriptor {
 | |
|  __u32 handle;
 | |
| };
 | |
| #define FW_CDEV_ISO_CONTEXT_TRANSMIT 0
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_ISO_CONTEXT_RECEIVE 1
 | |
| #define FW_CDEV_ISO_CONTEXT_RECEIVE_MULTICHANNEL 2
 | |
| struct fw_cdev_create_iso_context {
 | |
|  __u32 type;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 header_size;
 | |
|  __u32 channel;
 | |
|  __u32 speed;
 | |
|  __u64 closure;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 handle;
 | |
| };
 | |
| struct fw_cdev_set_iso_channels {
 | |
|  __u64 channels;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 handle;
 | |
| };
 | |
| #define FW_CDEV_ISO_PAYLOAD_LENGTH(v) (v)
 | |
| #define FW_CDEV_ISO_INTERRUPT (1 << 16)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_ISO_SKIP (1 << 17)
 | |
| #define FW_CDEV_ISO_SYNC (1 << 17)
 | |
| #define FW_CDEV_ISO_TAG(v) ((v) << 18)
 | |
| #define FW_CDEV_ISO_SY(v) ((v) << 20)
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_ISO_HEADER_LENGTH(v) ((v) << 24)
 | |
| struct fw_cdev_iso_packet {
 | |
|  __u32 control;
 | |
|  __u32 header[0];
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_queue_iso {
 | |
|  __u64 packets;
 | |
|  __u64 data;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 size;
 | |
|  __u32 handle;
 | |
| };
 | |
| #define FW_CDEV_ISO_CONTEXT_MATCH_TAG0 1
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| #define FW_CDEV_ISO_CONTEXT_MATCH_TAG1 2
 | |
| #define FW_CDEV_ISO_CONTEXT_MATCH_TAG2 4
 | |
| #define FW_CDEV_ISO_CONTEXT_MATCH_TAG3 8
 | |
| #define FW_CDEV_ISO_CONTEXT_MATCH_ALL_TAGS 15
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_start_iso {
 | |
|  __s32 cycle;
 | |
|  __u32 sync;
 | |
|  __u32 tags;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 handle;
 | |
| };
 | |
| struct fw_cdev_stop_iso {
 | |
|  __u32 handle;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| };
 | |
| struct fw_cdev_flush_iso {
 | |
|  __u32 handle;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_get_cycle_timer {
 | |
|  __u64 local_time;
 | |
|  __u32 cycle_timer;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_get_cycle_timer2 {
 | |
|  __s64 tv_sec;
 | |
|  __s32 tv_nsec;
 | |
|  __s32 clk_id;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 cycle_timer;
 | |
| };
 | |
| struct fw_cdev_allocate_iso_resource {
 | |
|  __u64 closure;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 channels;
 | |
|  __u32 bandwidth;
 | |
|  __u32 handle;
 | |
| };
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
| struct fw_cdev_send_stream_packet {
 | |
|  __u32 length;
 | |
|  __u32 tag;
 | |
|  __u32 channel;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 sy;
 | |
|  __u64 closure;
 | |
|  __u64 data;
 | |
|  __u32 generation;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 speed;
 | |
| };
 | |
| struct fw_cdev_send_phy_packet {
 | |
|  __u64 closure;
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u32 data[2];
 | |
|  __u32 generation;
 | |
| };
 | |
| struct fw_cdev_receive_phy_packets {
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | |
|  __u64 closure;
 | |
| };
 | |
| #define FW_CDEV_VERSION 3
 | |
| #endif
 | |
| /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 | 
