| /* |
| * Copyright (c) 2013-2016 The Linux Foundation. All rights reserved. |
| * |
| * Previously licensed under the ISC license by Qualcomm Atheros, Inc. |
| * |
| * |
| * Permission to use, copy, modify, and/or distribute this software for |
| * any purpose with or without fee is hereby granted, provided that the |
| * above copyright notice and this permission notice appear in all |
| * copies. |
| * |
| * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL |
| * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED |
| * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE |
| * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL |
| * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR |
| * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
| * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |
| * PERFORMANCE OF THIS SOFTWARE. |
| */ |
| |
| /* |
| * This file was originally distributed by Qualcomm Atheros, Inc. |
| * under proprietary terms before Copyright ownership was assigned |
| * to the Linux Foundation. |
| */ |
| |
| #if !defined( __VOS_GETBIN_H ) |
| #define __VOS_GETBIN_H |
| |
| /**========================================================================= |
| |
| \file vos_getBin.h |
| |
| \brief virtual Operating System Services (vOSS) binary APIs |
| |
| Binary retrieval definitions and APIs. |
| |
| These APIs allow components to retrieve binary contents (firmware, |
| configuration data, etc.) from a storage medium on the platform. |
| |
| ========================================================================*/ |
| |
| /* $Header$ */ |
| |
| /*-------------------------------------------------------------------------- |
| Include Files |
| ------------------------------------------------------------------------*/ |
| #include <vos_types.h> |
| #include <vos_status.h> |
| |
| /*-------------------------------------------------------------------------- |
| Preprocessor definitions and constants |
| ------------------------------------------------------------------------*/ |
| |
| /*-------------------------------------------------------------------------- |
| Type declarations |
| ------------------------------------------------------------------------*/ |
| /// Binary IDs |
| typedef enum |
| { |
| /// Binary ID for firmware |
| VOS_BINARY_ID_FIRMWARE, |
| |
| /// Binary ID for Configuration data |
| VOS_BINARY_ID_CONFIG, |
| |
| /// Binary ID for country code to regulatory domain mapping |
| VOS_BINARY_ID_COUNTRY_INFO, |
| |
| /// Binary ID for Handoff Configuration data |
| VOS_BINARY_ID_HO_CONFIG, |
| |
| /// Binary ID for Dictionary Configuration data |
| VOS_BINARY_ID_DICT_CONFIG |
| |
| } VOS_BINARY_ID; |
| |
| |
| |
| /*------------------------------------------------------------------------- |
| Function declarations and documenation |
| ------------------------------------------------------------------------*/ |
| |
| |
| /**--------------------------------------------------------------------------- |
| |
| \brief vos_get_binary_blob() - get binary data from platform |
| |
| This API allows components to get binary data from the platform independent |
| of where the data is stored on the device. |
| |
| <ul> |
| <li> Firmware |
| <li> Configuration Data |
| </ul> |
| |
| \param binaryId - identifies the binary data to return to the caller. |
| |
| \param pBuffer - a pointer to the buffer where the binary data will be |
| retrieved. Memory for this buffer is allocated by the caller |
| and free'd by the caller. vOSS will fill this buffer with |
| raw binary data and update the *pBufferSize with the exact |
| size of the data that has been retreived. |
| |
| Input value of NULL is valid and will cause the API to return |
| the size of the binary data in *pBufferSize. |
| |
| \param pBufferSize - pointer to a variable that upon input contains the |
| size of the data buffer available at pBuffer. Upon success, this |
| variable is updated with the size of the binary data that was |
| retreived and written to the buffer at pBuffer. |
| |
| Input value of 0 is valid and will cause the API to return |
| the size of the binary data in *pBufferSize. |
| |
| \return VOS_STATUS_SUCCESS - the binary data has been successfully |
| retreived and written to the buffer. |
| |
| VOS_STATUS_E_INVAL - The value specified by binaryId does not |
| refer to a valid VOS Binary ID. |
| |
| VOS_STATUS_E_FAULT - pBufferSize is not a valid pointer to a |
| variable that the API can write to. |
| |
| VOS_STATUS_E_NOMEM - the memory referred to by pBuffer and |
| *pBufferSize is not big enough to contain the binary. |
| |
| \sa |
| |
| --------------------------------------------------------------------------*/ |
| VOS_STATUS vos_get_binary_blob( VOS_BINARY_ID binaryId, |
| v_VOID_t *pBuffer, v_SIZE_t *pBufferSize ); |
| |
| /**---------------------------------------------------------------------------- |
| \brief vos_get_conparam()- function to read the insmod parameters |
| -----------------------------------------------------------------------------*/ |
| tVOS_CON_MODE vos_get_conparam( void ); |
| tVOS_CONCURRENCY_MODE vos_get_concurrency_mode( void ); |
| v_BOOL_t vos_concurrent_open_sessions_running(void); |
| v_BOOL_t vos_max_concurrent_connections_reached(void); |
| void vos_clear_concurrent_session_count(void); |
| v_BOOL_t vos_is_multiple_active_sta_sessions (void); |
| v_BOOL_t vos_is_sta_active_connection_exists (void); |
| v_BOOL_t vos_concurrent_beaconing_sessions_running(v_VOID_t); |
| v_BOOL_t vos_active_session_exists (tVOS_CON_MODE mode); |
| #endif // !defined __VOS_GETBIN_H |