blob: 8e115db21d0c51e5683e0e881f1efaa4a817d743 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
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_ATMBR2684_H
20#define _LINUX_ATMBR2684_H
21#include <linux/types.h>
22#include <linux/atm.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070023#include <linux/if.h>
24#define BR2684_MEDIA_ETHERNET (0)
25#define BR2684_MEDIA_802_4 (1)
26#define BR2684_MEDIA_TR (2)
Ben Cheng655a7c02013-10-16 16:09:24 -070027#define BR2684_MEDIA_FDDI (3)
28#define BR2684_MEDIA_802_6 (4)
Tao Baod7db5942015-01-28 10:07:51 -080029#define BR2684_FLAG_ROUTED (1 << 16)
Ben Cheng655a7c02013-10-16 16:09:24 -070030#define BR2684_FCSIN_NO (0)
Ben Cheng655a7c02013-10-16 16:09:24 -070031#define BR2684_FCSIN_IGNORE (1)
32#define BR2684_FCSIN_VERIFY (2)
33#define BR2684_FCSOUT_NO (0)
34#define BR2684_FCSOUT_SENDZERO (1)
Ben Cheng655a7c02013-10-16 16:09:24 -070035#define BR2684_FCSOUT_GENERATE (2)
36#define BR2684_ENCAPS_VC (0)
37#define BR2684_ENCAPS_LLC (1)
38#define BR2684_ENCAPS_AUTODETECT (2)
Ben Cheng655a7c02013-10-16 16:09:24 -070039#define BR2684_PAYLOAD_ROUTED (0)
40#define BR2684_PAYLOAD_BRIDGED (1)
41struct atm_newif_br2684 {
Tao Baod7db5942015-01-28 10:07:51 -080042 atm_backend_t backend_num;
Tao Baod7db5942015-01-28 10:07:51 -080043 int media;
44 char ifname[IFNAMSIZ];
45 int mtu;
Ben Cheng655a7c02013-10-16 16:09:24 -070046};
Ben Cheng655a7c02013-10-16 16:09:24 -070047#define BR2684_FIND_BYNOTHING (0)
48#define BR2684_FIND_BYNUM (1)
49#define BR2684_FIND_BYIFNAME (2)
50struct br2684_if_spec {
Tao Baod7db5942015-01-28 10:07:51 -080051 int method;
52 union {
53 char ifname[IFNAMSIZ];
54 int devnum;
Tao Baod7db5942015-01-28 10:07:51 -080055 } spec;
Ben Cheng655a7c02013-10-16 16:09:24 -070056};
57struct atm_backend_br2684 {
Tao Baod7db5942015-01-28 10:07:51 -080058 atm_backend_t backend_num;
Tao Baod7db5942015-01-28 10:07:51 -080059 struct br2684_if_spec ifspec;
60 int fcs_in;
61 int fcs_out;
62 int fcs_auto;
Tao Baod7db5942015-01-28 10:07:51 -080063 int encaps;
64 int has_vpiid;
65 __u8 vpn_id[7];
66 int send_padding;
Tao Baod7db5942015-01-28 10:07:51 -080067 int min_size;
Ben Cheng655a7c02013-10-16 16:09:24 -070068};
69struct br2684_filter {
Tao Baod7db5942015-01-28 10:07:51 -080070 __be32 prefix;
Tao Baod7db5942015-01-28 10:07:51 -080071 __be32 netmask;
Ben Cheng655a7c02013-10-16 16:09:24 -070072};
73struct br2684_filter_set {
Tao Baod7db5942015-01-28 10:07:51 -080074 struct br2684_if_spec ifspec;
Tao Baod7db5942015-01-28 10:07:51 -080075 struct br2684_filter filter;
Ben Cheng655a7c02013-10-16 16:09:24 -070076};
77enum br2684_payload {
Tao Baod7db5942015-01-28 10:07:51 -080078 p_routed = BR2684_PAYLOAD_ROUTED,
Tao Baod7db5942015-01-28 10:07:51 -080079 p_bridged = BR2684_PAYLOAD_BRIDGED,
Ben Cheng655a7c02013-10-16 16:09:24 -070080};
Tao Baod7db5942015-01-28 10:07:51 -080081#define BR2684_SETFILT _IOW('a', ATMIOC_BACKEND + 0, struct br2684_filter_set)
Ben Cheng655a7c02013-10-16 16:09:24 -070082#endif