Home | History | Annotate | Download | only in linux
      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_IPA_FD_IOCTL_H
     20 #define _RMNET_IPA_FD_IOCTL_H
     21 #include <linux/ioctl.h>
     22 #include <linux/ipa_qmi_service_v01.h>
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #include <linux/msm_ipa.h>
     25 #define WAN_IOC_MAGIC 0x69
     26 #define WAN_IOCTL_ADD_FLT_RULE 0
     27 #define WAN_IOCTL_ADD_FLT_INDEX 1
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define WAN_IOCTL_VOTE_FOR_BW_MBPS 2
     30 #define WAN_IOCTL_POLL_TETHERING_STATS 3
     31 #define WAN_IOCTL_SET_DATA_QUOTA 4
     32 #define WAN_IOCTL_SET_TETHER_CLIENT_PIPE 5
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define WAN_IOCTL_QUERY_TETHER_STATS 6
     35 #define WAN_IOCTL_RESET_TETHER_STATS 7
     36 #define WAN_IOCTL_QUERY_DL_FILTER_STATS 8
     37 #define WAN_IOCTL_ADD_FLT_RULE_EX 9
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define WAN_IOCTL_QUERY_TETHER_STATS_ALL 10
     40 #ifndef IFNAMSIZ
     41 #define IFNAMSIZ 16
     42 #endif
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 struct wan_ioctl_poll_tethering_stats {
     45   uint64_t polling_interval_secs;
     46   uint8_t reset_stats;
     47 };
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 struct wan_ioctl_set_data_quota {
     50   char interface_name[IFNAMSIZ];
     51   uint64_t quota_mbytes;
     52   uint8_t set_quota;
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 };
     55 struct wan_ioctl_set_tether_client_pipe {
     56   enum ipacm_client_enum ipa_client;
     57   uint8_t reset_client;
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59   uint32_t ul_src_pipe_len;
     60   uint32_t ul_src_pipe_list[QMI_IPA_MAX_PIPES_V01];
     61   uint32_t dl_dst_pipe_len;
     62   uint32_t dl_dst_pipe_list[QMI_IPA_MAX_PIPES_V01];
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 };
     65 struct wan_ioctl_query_tether_stats {
     66   char upstreamIface[IFNAMSIZ];
     67   char tetherIface[IFNAMSIZ];
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69   enum ipacm_client_enum ipa_client;
     70   uint64_t ipv4_tx_packets;
     71   uint64_t ipv4_tx_bytes;
     72   uint64_t ipv4_rx_packets;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74   uint64_t ipv4_rx_bytes;
     75   uint64_t ipv6_tx_packets;
     76   uint64_t ipv6_tx_bytes;
     77   uint64_t ipv6_rx_packets;
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79   uint64_t ipv6_rx_bytes;
     80 };
     81 struct wan_ioctl_query_tether_stats_all {
     82   char upstreamIface[IFNAMSIZ];
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84   enum ipacm_client_enum ipa_client;
     85   uint8_t reset_stats;
     86   uint64_t tx_bytes;
     87   uint64_t rx_bytes;
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89 };
     90 struct wan_ioctl_reset_tether_stats {
     91   char upstreamIface[IFNAMSIZ];
     92   uint8_t reset_stats;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 };
     95 struct wan_ioctl_query_dl_filter_stats {
     96   uint8_t reset_stats;
     97   struct ipa_get_data_stats_resp_msg_v01 stats_resp;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99   uint32_t index;
    100 };
    101 #define WAN_IOC_ADD_FLT_RULE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_RULE, struct ipa_install_fltr_rule_req_msg_v01 *)
    102 #define WAN_IOC_ADD_FLT_RULE_INDEX _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_INDEX, struct ipa_fltr_installed_notif_req_msg_v01 *)
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 #define WAN_IOC_VOTE_FOR_BW_MBPS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_VOTE_FOR_BW_MBPS, uint32_t *)
    105 #define WAN_IOC_POLL_TETHERING_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_POLL_TETHERING_STATS, struct wan_ioctl_poll_tethering_stats *)
    106 #define WAN_IOC_SET_DATA_QUOTA _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SET_DATA_QUOTA, struct wan_ioctl_set_data_quota *)
    107 #define WAN_IOC_SET_TETHER_CLIENT_PIPE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SET_TETHER_CLIENT_PIPE, struct wan_ioctl_set_tether_client_pipe *)
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 #define WAN_IOC_QUERY_TETHER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_TETHER_STATS, struct wan_ioctl_query_tether_stats *)
    110 #define WAN_IOC_RESET_TETHER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_RESET_TETHER_STATS, struct wan_ioctl_reset_tether_stats *)
    111 #define WAN_IOC_QUERY_DL_FILTER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_DL_FILTER_STATS, struct wan_ioctl_query_dl_filter_stats *)
    112 #define WAN_IOC_ADD_FLT_RULE_EX _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_RULE_EX, struct ipa_install_fltr_rule_req_ex_msg_v01 *)
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 #define WAN_IOC_QUERY_TETHER_STATS_ALL _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_TETHER_STATS_ALL, struct wan_ioctl_query_tether_stats_all *)
    115 #endif
    116 
    117