1 /* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved. 2 * 3 * Redistribution and use in source and binary forms, with or without 4 * modification, are permitted provided that the following conditions are 5 * met: 6 * * Redistributions of source code must retain the above copyright 7 * notice, this list of conditions and the following disclaimer. 8 * * Redistributions in binary form must reproduce the above 9 * copyright notice, this list of conditions and the following 10 * disclaimer in the documentation and/or other materials provided 11 * with the distribution. 12 * * Neither the name of The Linux Foundation, nor the names of its 13 * contributors may be used to endorse or promote products derived 14 * from this software without specific prior written permission. 15 * 16 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 17 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 20 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 23 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 24 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 25 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 26 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * 28 */ 29 /* LOC_API TOOL VERSION: 4.48 */ 30 /* GENERATED: TUE JUN 14 2011 */ 31 /*============================================================================= 32 L O C _ A P I . X D R 33 34 GENERAL DESCRIPTION 35 This is an AUTO GENERATED file that provides an xdr compatible definition of 36 the loc_api API. 37 38 --------------------------------------------------------------------------- 39 40 41 --------------------------------------------------------------------------- 42 =============================================================================*/ 43 44 /*============================================================================= 45 46 Edit History 47 48 AUTO GENERATED 49 50 Generated by following versions of Htorpc modules: 51 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/htorpc.pl#1 52 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/Start.pm#1 53 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/Htoxdr.pm#1 54 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/XDR.pm#3 55 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/Output.pm#5 56 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/Parser.pm#1 57 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/Metacomments.pm#1 58 Id: //source/qcom/qct/core/mproc/tools/rel/2h09/htorpc/lib/Htorpc/SymbolTable.pm#1 59 60 loc_api Definition File(s): 61 Id: //source/qcom/qct/modem/api/gps/main/latest/loc_api.h#24 62 =============================================================================*/ 63 /*============================================================================= 64 $Header$ 65 =============================================================================*/ 66 67 68 69 typedef rpc_uint32 rpc_loc_api_api_versions_return_type<>; 70 71 /* 72 * Declare an rpc_uint32 type for each callback type in the API 73 */ 74 typedef rpc_uint32 rpc_loc_event_cb_f_type; 75 76 77 78 /* 79 * These are struct declarations for the function arguments 80 */ 81 82 struct rpc_loc_open_args { 83 rpc_loc_event_mask_type event_reg_mask; 84 rpc_loc_event_cb_f_type event_callback; 85 }; 86 87 struct rpc_loc_close_args { 88 rpc_loc_client_handle_type handle; 89 }; 90 91 struct rpc_loc_start_fix_args { 92 rpc_loc_client_handle_type handle; 93 }; 94 95 struct rpc_loc_stop_fix_args { 96 rpc_loc_client_handle_type handle; 97 }; 98 99 struct rpc_loc_ioctl_args { 100 rpc_loc_client_handle_type handle; 101 rpc_loc_ioctl_e_type ioctl_type; 102 rpc_loc_ioctl_data_u_type *ioctl_data; 103 }; 104 105 106 107 struct rpc_loc_api_api_version_s_args { 108 rpc_boolean len_not_null; 109 }; 110 111 /* 112 * These are struct declarations for the function results 113 */ 114 115 struct rpc_loc_api_rpc_glue_code_info_remote_rets { 116 rpc_uint32 toolvers; /* Tool version */ 117 rpc_uint32 features; /* Features turned on in the code. 118 * 0x00000001 ONCRPC Server Cleanup Support 119 */ 120 rpc_uint32 proghash; /* Unique hash value for the API XDR definition */ 121 rpc_uint32 cbproghash; /* Unique hash value for the Callbacks' XDR definition */ 122 }; 123 124 struct rpc_loc_open_rets { 125 rpc_loc_client_handle_type loc_open_result; 126 }; 127 128 struct rpc_loc_close_rets { 129 rpc_int32 loc_close_result; 130 }; 131 132 struct rpc_loc_start_fix_rets { 133 rpc_int32 loc_start_fix_result; 134 }; 135 136 struct rpc_loc_stop_fix_rets { 137 rpc_int32 loc_stop_fix_result; 138 }; 139 140 struct rpc_loc_ioctl_rets { 141 rpc_int32 loc_ioctl_result; 142 }; 143 144 struct rpc_loc_api_api_versions_rets { 145 rpc_loc_api_api_versions_return_type loc_api_api_versions_result; 146 rpc_uint32 *len; 147 }; 148 149 /* 150 * XDR definition of the LOC_API program ( vers. 0x00050006 ) 151 */ 152 153 program LOC_APIPROG { 154 version LOC_APIVERS_0001 { 155 156 void 157 rpc_loc_api_null( void ) = 0; 158 159 rpc_loc_api_rpc_glue_code_info_remote_rets 160 rpc_loc_api_rpc_glue_code_info_remote( void ) = 1; 161 162 rpc_loc_open_rets 163 rpc_loc_open( rpc_loc_open_args ) = 2; 164 165 rpc_loc_close_rets 166 rpc_loc_close( rpc_loc_close_args ) = 3; 167 168 rpc_loc_start_fix_rets 169 rpc_loc_start_fix( rpc_loc_start_fix_args ) = 4; 170 171 rpc_loc_stop_fix_rets 172 rpc_loc_stop_fix( rpc_loc_stop_fix_args ) = 5; 173 174 rpc_loc_ioctl_rets 175 rpc_loc_ioctl( rpc_loc_ioctl_args ) = 6; 176 177 rpc_loc_api_api_versions_rets 178 rpc_loc_api_api_versions( void ) = 0xFFFFFFFF; 179 180 181 182 183 } = 0x00050001; 184 185 version LOC_APIVERS_0002 { 186 187 /* Following elements added in enum rpc_loc_assist_data_request_e_type in 0x00050002 188 RPC_LOC_ASSIST_DATA_POSITION_INJECTION_REQ 189 */ 190 /* Following elements added in enum rpc_loc_ioctl_e_type in 0x00050002 191 RPC_LOC_IOCTL_GET_XTRA_T_SESSION_CONTROL 192 RPC_LOC_IOCTL_RESERVED_CMD 193 RPC_LOC_IOCTL_SET_XTRA_T_SESSION_CONTROL 194 */ 195 196 void 197 rpc_loc_api_null( void ) = 0; 198 199 } = 0x00050002; 200 201 version LOC_APIVERS_0003 { 202 203 /* Following elements added in enum rpc_loc_ioctl_e_type in 0x00050003 204 RPC_LOC_IOCTL_SET_DATA_ENABLE 205 RPC_LOC_IOCTL_SET_LBS_APN_PROFILE 206 RPC_LOC_IOCTL_GET_XTRA_APN_PROFILE 207 RPC_LOC_IOCTL_GET_LBS_APN_PROFILE 208 RPC_LOC_IOCTL_SET_XTRA_APN_PROFILE 209 */ 210 211 void 212 rpc_loc_api_null( void ) = 0; 213 214 } = 0x00050003; 215 216 version LOC_APIVERS_0004 { 217 218 /* Following elements added in enum rpc_loc_ioctl_e_type in 0x00050004 219 RPC_LOC_IOCTL_GET_SUPL_VERSION 220 RPC_LOC_IOCTL_SET_SUPL_VERSION 221 */ 222 223 void 224 rpc_loc_api_null( void ) = 0; 225 226 } = 0x00050004; 227 228 version LOC_APIVERS_0005 { 229 230 /* Following elements added in enum rpc_loc_server_addr_e_type in 0x00050005 231 RPC_LOC_SERVER_ADDR_IPV6 232 */ 233 /* Following elements added in enum rpc_loc_ioctl_e_type in 0x00050005 234 RPC_LOC_IOCTL_ERROR_ESTIMATE_CONFIG 235 */ 236 237 void 238 rpc_loc_api_null( void ) = 0; 239 240 } = 0x00050005; 241 242 243 244 version LOC_APIVERS_0006 { 245 246 /* Following elements added in enum rpc_loc_ioctl_e_type in 0x00050006 247 RPC_LOC_IOCTL_INFORM_SERVER_MULTI_OPEN_STATUS 248 */ 249 /* Following elements added in enum rpc_loc_server_request_e_type in 0x00050006 250 RPC_LOC_SERVER_REQUEST_MULTI_OPEN 251 */ 252 253 void 254 rpc_loc_api_null( void ) = 0; 255 256 } = 0x00050006; 257 258 259 } = 0x3000008C; 260 261 const LOC_APIVERS = 0x00050006; 262