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 _ATMLEC_H_ 8*8d67ca89SAndroid Build Coastguard Worker #define _ATMLEC_H_ 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/atmapi.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <linux/atmioc.h> 11*8d67ca89SAndroid Build Coastguard Worker #include <linux/atm.h> 12*8d67ca89SAndroid Build Coastguard Worker #include <linux/if_ether.h> 13*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h> 14*8d67ca89SAndroid Build Coastguard Worker #define ATMLEC_CTRL _IO('a', ATMIOC_LANE) 15*8d67ca89SAndroid Build Coastguard Worker #define ATMLEC_DATA _IO('a', ATMIOC_LANE + 1) 16*8d67ca89SAndroid Build Coastguard Worker #define ATMLEC_MCAST _IO('a', ATMIOC_LANE + 2) 17*8d67ca89SAndroid Build Coastguard Worker #define MAX_LEC_ITF 48 18*8d67ca89SAndroid Build Coastguard Worker typedef enum { 19*8d67ca89SAndroid Build Coastguard Worker l_set_mac_addr, 20*8d67ca89SAndroid Build Coastguard Worker l_del_mac_addr, 21*8d67ca89SAndroid Build Coastguard Worker l_svc_setup, 22*8d67ca89SAndroid Build Coastguard Worker l_addr_delete, 23*8d67ca89SAndroid Build Coastguard Worker l_topology_change, 24*8d67ca89SAndroid Build Coastguard Worker l_flush_complete, 25*8d67ca89SAndroid Build Coastguard Worker l_arp_update, 26*8d67ca89SAndroid Build Coastguard Worker l_narp_req, 27*8d67ca89SAndroid Build Coastguard Worker l_config, 28*8d67ca89SAndroid Build Coastguard Worker l_flush_tran_id, 29*8d67ca89SAndroid Build Coastguard Worker l_set_lecid, 30*8d67ca89SAndroid Build Coastguard Worker l_arp_xmt, 31*8d67ca89SAndroid Build Coastguard Worker l_rdesc_arp_xmt, 32*8d67ca89SAndroid Build Coastguard Worker l_associate_req, 33*8d67ca89SAndroid Build Coastguard Worker l_should_bridge 34*8d67ca89SAndroid Build Coastguard Worker } atmlec_msg_type; 35*8d67ca89SAndroid Build Coastguard Worker #define ATMLEC_MSG_TYPE_MAX l_should_bridge 36*8d67ca89SAndroid Build Coastguard Worker struct atmlec_config_msg { 37*8d67ca89SAndroid Build Coastguard Worker unsigned int maximum_unknown_frame_count; 38*8d67ca89SAndroid Build Coastguard Worker unsigned int max_unknown_frame_time; 39*8d67ca89SAndroid Build Coastguard Worker unsigned short max_retry_count; 40*8d67ca89SAndroid Build Coastguard Worker unsigned int aging_time; 41*8d67ca89SAndroid Build Coastguard Worker unsigned int forward_delay_time; 42*8d67ca89SAndroid Build Coastguard Worker unsigned int arp_response_time; 43*8d67ca89SAndroid Build Coastguard Worker unsigned int flush_timeout; 44*8d67ca89SAndroid Build Coastguard Worker unsigned int path_switching_delay; 45*8d67ca89SAndroid Build Coastguard Worker unsigned int lane_version; 46*8d67ca89SAndroid Build Coastguard Worker int mtu; 47*8d67ca89SAndroid Build Coastguard Worker int is_proxy; 48*8d67ca89SAndroid Build Coastguard Worker }; 49*8d67ca89SAndroid Build Coastguard Worker struct atmlec_msg { 50*8d67ca89SAndroid Build Coastguard Worker atmlec_msg_type type; 51*8d67ca89SAndroid Build Coastguard Worker int sizeoftlvs; 52*8d67ca89SAndroid Build Coastguard Worker union { 53*8d67ca89SAndroid Build Coastguard Worker struct { 54*8d67ca89SAndroid Build Coastguard Worker unsigned char mac_addr[ETH_ALEN]; 55*8d67ca89SAndroid Build Coastguard Worker unsigned char atm_addr[ATM_ESA_LEN]; 56*8d67ca89SAndroid Build Coastguard Worker unsigned int flag; 57*8d67ca89SAndroid Build Coastguard Worker unsigned int targetless_le_arp; 58*8d67ca89SAndroid Build Coastguard Worker unsigned int no_source_le_narp; 59*8d67ca89SAndroid Build Coastguard Worker } normal; 60*8d67ca89SAndroid Build Coastguard Worker struct atmlec_config_msg config; 61*8d67ca89SAndroid Build Coastguard Worker struct { 62*8d67ca89SAndroid Build Coastguard Worker __u16 lec_id; 63*8d67ca89SAndroid Build Coastguard Worker __u32 tran_id; 64*8d67ca89SAndroid Build Coastguard Worker unsigned char mac_addr[ETH_ALEN]; 65*8d67ca89SAndroid Build Coastguard Worker unsigned char atm_addr[ATM_ESA_LEN]; 66*8d67ca89SAndroid Build Coastguard Worker } proxy; 67*8d67ca89SAndroid Build Coastguard Worker } content; 68*8d67ca89SAndroid Build Coastguard Worker } __ATM_API_ALIGN; 69*8d67ca89SAndroid Build Coastguard Worker struct atmlec_ioc { 70*8d67ca89SAndroid Build Coastguard Worker int dev_num; 71*8d67ca89SAndroid Build Coastguard Worker unsigned char atm_addr[ATM_ESA_LEN]; 72*8d67ca89SAndroid Build Coastguard Worker unsigned char receive; 73*8d67ca89SAndroid Build Coastguard Worker }; 74*8d67ca89SAndroid Build Coastguard Worker #endif 75