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