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 _RMNET_DATA_H_
20#define _RMNET_DATA_H_
21#define RMNET_LOCAL_LOGICAL_ENDPOINT -1
22#define RMNET_EGRESS_FORMAT__RESERVED__ (1<<0)
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24#define RMNET_EGRESS_FORMAT_MAP (1<<1)
25#define RMNET_EGRESS_FORMAT_AGGREGATION (1<<2)
26#define RMNET_EGRESS_FORMAT_MUXING (1<<3)
27#define RMNET_EGRESS_FORMAT_MAP_CKSUMV3 (1<<4)
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#define RMNET_INGRESS_FIX_ETHERNET (1<<0)
30#define RMNET_INGRESS_FORMAT_MAP (1<<1)
31#define RMNET_INGRESS_FORMAT_DEAGGREGATION (1<<2)
32#define RMNET_INGRESS_FORMAT_DEMUXING (1<<3)
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34#define RMNET_INGRESS_FORMAT_MAP_COMMANDS (1<<4)
35#define RMNET_INGRESS_FORMAT_MAP_CKSUMV3 (1<<5)
36#define RMNET_NETLINK_PROTO 31
37#define RMNET_MAX_STR_LEN 16
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39#define RMNET_NL_DATA_MAX_LEN 64
40#define RMNET_NETLINK_MSG_COMMAND 0
41#define RMNET_NETLINK_MSG_RETURNCODE 1
42#define RMNET_NETLINK_MSG_RETURNDATA 2
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44struct rmnet_nl_msg_s {
45 uint16_t reserved;
46 uint16_t message_type;
47 uint16_t reserved2:14;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 uint16_t crd:2;
50 union {
51 uint16_t arg_length;
52 uint16_t return_code;
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54 };
55 union {
56 uint8_t data[RMNET_NL_DATA_MAX_LEN];
57 struct {
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 uint8_t dev[RMNET_MAX_STR_LEN];
60 uint32_t flags;
61 uint16_t agg_size;
62 uint16_t agg_count;
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 uint8_t tail_spacing;
65 } data_format;
66 struct {
67 uint8_t dev[RMNET_MAX_STR_LEN];
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 int32_t ep_id;
70 uint8_t operating_mode;
71 uint8_t next_dev[RMNET_MAX_STR_LEN];
72 } local_ep_config;
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 struct {
75 uint32_t id;
76 uint8_t vnd_name[RMNET_MAX_STR_LEN];
77 } vnd;
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 struct {
80 uint32_t id;
81 uint32_t map_flow_id;
82 uint32_t tc_flow_id;
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 } flow_control;
85 };
86};
87enum rmnet_netlink_message_types_e {
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 RMNET_NETLINK_ASSOCIATE_NETWORK_DEVICE,
90 RMNET_NETLINK_UNASSOCIATE_NETWORK_DEVICE,
91 RMNET_NETLINK_GET_NETWORK_DEVICE_ASSOCIATED,
92 RMNET_NETLINK_SET_LINK_EGRESS_DATA_FORMAT,
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 RMNET_NETLINK_GET_LINK_EGRESS_DATA_FORMAT,
95 RMNET_NETLINK_SET_LINK_INGRESS_DATA_FORMAT,
96 RMNET_NETLINK_GET_LINK_INGRESS_DATA_FORMAT,
97 RMNET_NETLINK_SET_LOGICAL_EP_CONFIG,
98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 RMNET_NETLINK_UNSET_LOGICAL_EP_CONFIG,
100 RMNET_NETLINK_GET_LOGICAL_EP_CONFIG,
101 RMNET_NETLINK_NEW_VND,
102 RMNET_NETLINK_NEW_VND_WITH_PREFIX,
103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 RMNET_NETLINK_GET_VND_NAME,
105 RMNET_NETLINK_FREE_VND,
106 RMNET_NETLINK_ADD_VND_TC_FLOW,
107 RMNET_NETLINK_DEL_VND_TC_FLOW
108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109};
110enum rmnet_config_endpoint_modes_e {
111 RMNET_EPMODE_NONE,
112 RMNET_EPMODE_VND,
113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 RMNET_EPMODE_BRIDGE,
115 RMNET_EPMODE_LENGTH
116};
117enum rmnet_config_return_codes_e {
118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 RMNET_CONFIG_OK,
120 RMNET_CONFIG_UNKNOWN_MESSAGE,
121 RMNET_CONFIG_UNKNOWN_ERROR,
122 RMNET_CONFIG_NOMEM,
123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 RMNET_CONFIG_DEVICE_IN_USE,
125 RMNET_CONFIG_INVALID_REQUEST,
126 RMNET_CONFIG_NO_SUCH_DEVICE,
127 RMNET_CONFIG_BAD_ARGUMENTS,
128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 RMNET_CONFIG_BAD_EGRESS_DEVICE,
130 RMNET_CONFIG_TC_HANDLE_FULL
131};
132#endif
133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134
135