if_arcnet.h revision 96c1db7b9d601c31d103389cac074a6cce0d7633
1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ***   To edit the content of this header, modify the corresponding
11 ***   source file (e.g. under external/kernel-headers/original/) then
12 ***   run bionic/libc/kernel/tools/update_all.py
13 ***
14 ***   Any manual change here will be lost the next time this script will
15 ***   be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _LINUX_IF_ARCNET_H
20#define _LINUX_IF_ARCNET_H
21#include <linux/types.h>
22#include <linux/if_ether.h>
23#define ARC_P_IP 212
24#define ARC_P_IPV6 196
25#define ARC_P_ARP 213
26#define ARC_P_RARP 214
27#define ARC_P_IPX 250
28#define ARC_P_NOVELL_EC 236
29#define ARC_P_IP_RFC1051 240
30#define ARC_P_ARP_RFC1051 241
31#define ARC_P_ETHER 232
32#define ARC_P_DATAPOINT_BOOT 0
33#define ARC_P_DATAPOINT_MOUNT 1
34#define ARC_P_POWERLAN_BEACON 8
35#define ARC_P_POWERLAN_BEACON2 243
36#define ARC_P_LANSOFT 251
37#define ARC_P_ATALK 0xDD
38#define ARCNET_ALEN 1
39struct arc_rfc1201 {
40  __u8 proto;
41  __u8 split_flag;
42  __be16 sequence;
43  __u8 payload[0];
44};
45#define RFC1201_HDR_SIZE 4
46struct arc_rfc1051 {
47  __u8 proto;
48  __u8 payload[0];
49};
50#define RFC1051_HDR_SIZE 1
51struct arc_eth_encap {
52  __u8 proto;
53  struct ethhdr eth;
54  __u8 payload[0];
55};
56#define ETH_ENCAP_HDR_SIZE 14
57struct arc_cap {
58  __u8 proto;
59  __u8 cookie[sizeof(int)];
60  union {
61    __u8 ack;
62    __u8 raw[0];
63  } mes;
64};
65struct arc_hardware {
66  __u8 source;
67  __u8 dest;
68  __u8 offset[2];
69};
70#define ARC_HDR_SIZE 4
71struct archdr {
72  struct arc_hardware hard;
73  union {
74    struct arc_rfc1201 rfc1201;
75    struct arc_rfc1051 rfc1051;
76    struct arc_eth_encap eth_encap;
77    struct arc_cap cap;
78    __u8 raw[0];
79  } soft;
80};
81#endif
82