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 */ 7 #ifndef _LINUX_IF_ARCNET_H 8 #define _LINUX_IF_ARCNET_H 9 #include <linux/types.h> 10 #include <linux/if_ether.h> 11 #define ARC_P_IP 212 12 #define ARC_P_IPV6 196 13 #define ARC_P_ARP 213 14 #define ARC_P_RARP 214 15 #define ARC_P_IPX 250 16 #define ARC_P_NOVELL_EC 236 17 #define ARC_P_IP_RFC1051 240 18 #define ARC_P_ARP_RFC1051 241 19 #define ARC_P_ETHER 232 20 #define ARC_P_DATAPOINT_BOOT 0 21 #define ARC_P_DATAPOINT_MOUNT 1 22 #define ARC_P_POWERLAN_BEACON 8 23 #define ARC_P_POWERLAN_BEACON2 243 24 #define ARC_P_LANSOFT 251 25 #define ARC_P_ATALK 0xDD 26 #define ARCNET_ALEN 1 27 struct arc_rfc1201 { 28 __u8 proto; 29 __u8 split_flag; 30 __be16 sequence; 31 __u8 payload[]; 32 }; 33 #define RFC1201_HDR_SIZE 4 34 struct arc_rfc1051 { 35 __u8 proto; 36 __u8 payload[]; 37 }; 38 #define RFC1051_HDR_SIZE 1 39 struct arc_eth_encap { 40 __u8 proto; 41 struct ethhdr eth; 42 __u8 payload[]; 43 }; 44 #define ETH_ENCAP_HDR_SIZE 14 45 struct arc_cap { 46 __u8 proto; 47 __u8 cookie[sizeof(int)]; 48 union { 49 __u8 ack; 50 __u8 raw[0]; 51 } mes; 52 }; 53 struct arc_hardware { 54 __u8 source; 55 __u8 dest; 56 __u8 offset[2]; 57 }; 58 #define ARC_HDR_SIZE 4 59 struct archdr { 60 struct arc_hardware hard; 61 union { 62 struct arc_rfc1201 rfc1201; 63 struct arc_rfc1051 rfc1051; 64 struct arc_eth_encap eth_encap; 65 struct arc_cap cap; 66 __u8 raw[0]; 67 } soft; 68 }; 69 #endif 70