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