blob: 188ce17178697346e263e483f38ac18af70ab0e9 [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
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 */
Ben Cheng655a7c02013-10-16 16:09:24 -07007#ifndef _LINUX_IF_ARCNET_H
8#define _LINUX_IF_ARCNET_H
9#include <linux/types.h>
10#include <linux/if_ether.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070011#define ARC_P_IP 212
12#define ARC_P_IPV6 196
13#define ARC_P_ARP 213
14#define ARC_P_RARP 214
Ben Cheng655a7c02013-10-16 16:09:24 -070015#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
Ben Cheng655a7c02013-10-16 16:09:24 -070019#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
Ben Cheng655a7c02013-10-16 16:09:24 -070023#define ARC_P_POWERLAN_BEACON2 243
24#define ARC_P_LANSOFT 251
25#define ARC_P_ATALK 0xDD
26#define ARCNET_ALEN 1
Ben Cheng655a7c02013-10-16 16:09:24 -070027struct arc_rfc1201 {
Tao Baod7db5942015-01-28 10:07:51 -080028 __u8 proto;
29 __u8 split_flag;
30 __be16 sequence;
Christopher Ferris7447a1c2022-10-04 18:24:44 -070031 __u8 payload[];
Ben Cheng655a7c02013-10-16 16:09:24 -070032};
33#define RFC1201_HDR_SIZE 4
34struct arc_rfc1051 {
Tao Baod7db5942015-01-28 10:07:51 -080035 __u8 proto;
Christopher Ferris7447a1c2022-10-04 18:24:44 -070036 __u8 payload[];
Ben Cheng655a7c02013-10-16 16:09:24 -070037};
38#define RFC1051_HDR_SIZE 1
Ben Cheng655a7c02013-10-16 16:09:24 -070039struct arc_eth_encap {
Tao Baod7db5942015-01-28 10:07:51 -080040 __u8 proto;
41 struct ethhdr eth;
Christopher Ferris7447a1c2022-10-04 18:24:44 -070042 __u8 payload[];
Ben Cheng655a7c02013-10-16 16:09:24 -070043};
44#define ETH_ENCAP_HDR_SIZE 14
45struct arc_cap {
Tao Baod7db5942015-01-28 10:07:51 -080046 __u8 proto;
Tao Baod7db5942015-01-28 10:07:51 -080047 __u8 cookie[sizeof(int)];
48 union {
49 __u8 ack;
50 __u8 raw[0];
Tao Baod7db5942015-01-28 10:07:51 -080051 } mes;
Ben Cheng655a7c02013-10-16 16:09:24 -070052};
53struct arc_hardware {
Christopher Ferris05d08e92016-02-04 13:16:38 -080054 __u8 source;
Christopher Ferris05d08e92016-02-04 13:16:38 -080055 __u8 dest;
56 __u8 offset[2];
Ben Cheng655a7c02013-10-16 16:09:24 -070057};
58#define ARC_HDR_SIZE 4
Ben Cheng655a7c02013-10-16 16:09:24 -070059struct archdr {
Tao Baod7db5942015-01-28 10:07:51 -080060 struct arc_hardware hard;
Tao Baod7db5942015-01-28 10:07:51 -080061 union {
62 struct arc_rfc1201 rfc1201;
63 struct arc_rfc1051 rfc1051;
64 struct arc_eth_encap eth_encap;
Tao Baod7db5942015-01-28 10:07:51 -080065 struct arc_cap cap;
66 __u8 raw[0];
67 } soft;
Ben Cheng655a7c02013-10-16 16:09:24 -070068};
Ben Cheng655a7c02013-10-16 16:09:24 -070069#endif