qcacld-3.0: Add vendor cmd to support antenna diversity

qcacld-2.0 to qcacld-3.0 propagation

Add qca_wlan_vendor_config attr to config antenna diversity.
Add vendor subcmd QCA_NL80211_VENDOR_SUBCMD_GET_CHAIN_RSSI
to get chain rssi value.

Change-Id: I75c4c8016b15772b0c52be91e446f69580475496
CRs-fixed: 1071075
Этот коммит содержится в:
lifeng
2017-05-09 19:44:16 +08:00
коммит произвёл Anjaneedevi Kapparapu
родитель a37a0bea97
Коммит d217d19d7e
9 изменённых файлов: 444 добавлений и 0 удалений

Просмотреть файл

@@ -1665,4 +1665,21 @@ QDF_STATUS sme_get_peer_info_ext(tHalHandle hal,
void sme_set_5g_band_pref(tHalHandle hal_handle,
struct sme_5g_band_pref_params *pref_params);
/**
* sme_get_chain_rssi() - Get chain rssi
* @hal: Global HAL handle
* @input: get chain rssi req params
* @callback: Callback function to be called with the result
* @context: Opaque context to be used by the caller to associate the
* request with the response
*
* This function constructs the cds message and fill in message type,
* post the same to WDA.
*
* Return: QDF_STATUS enumeration
*/
QDF_STATUS sme_get_chain_rssi(tHalHandle hal,
struct get_chain_rssi_req_params *input,
get_chain_rssi_callback callback,
void *context);
#endif /* #if !defined( __SME_API_H ) */

Просмотреть файл

@@ -160,6 +160,16 @@ typedef void (*sme_encrypt_decrypt_callback)(
void *context,
struct sir_encrypt_decrypt_rsp_params *response);
/**
* typedef get_chain_rssi_callback - get chain rssi callback
* @context: Opaque context that the client can use to associate the
* callback with the request
* @data: chain rssi result reported by firmware
*/
struct chain_rssi_result;
typedef void (*get_chain_rssi_callback)(void *context,
struct chain_rssi_result *data);
typedef struct tagSmeStruct {
eSmeState state;
qdf_mutex_t lkSmeGlobalLock;
@@ -258,6 +268,8 @@ typedef struct tagSmeStruct {
void (*chip_power_save_fail_cb)(void *,
struct chip_pwr_save_fail_detected_params *);
void (*bt_activity_info_cb)(void *context, uint32_t bt_activity);
get_chain_rssi_callback get_chain_rssi_cb;
void *get_chain_rssi_context;
} tSmeStruct, *tpSmeStruct;
#endif /* #if !defined( __SMEINTERNAL_H ) */