qcacmn: Add implementation for NDI Create/Delete

Implement NDI create and NDI delete commands.

Change-Id: Icd4c745f4d25c0f10f12271fd4fcd7720ad85860
CRs-Fixed: 2014795
This commit is contained in:
Naveen Rawat 2017-04-02 19:39:25 -07:00 • committed by Sandeep Puligilla
commit 85f642e6c6
2 changed files with 511 additions and 4 deletions

View file

@ -24,6 +24,8 @@
#define _OS_IF_NAN_H_
#include "qdf_types.h"
#include "nan_public_structs.h"
#include "nan_ucfg_api.h"
struct wlan_objmgr_psoc;
struct wlan_objmgr_vdev;
@ -117,8 +119,6 @@ enum qca_wlan_vendor_attr_ndp_sub_cmd_value {
QCA_WLAN_VENDOR_ATTR_NDP_END_IND = 11
};
#endif /* WLAN_FEATURE_NAN_CONVERGENCE */
/**
* os_if_nan_process_ndp_cmd: os_if api to handle nan request message
* @psoc: pointer to psoc object
@ -143,4 +143,102 @@ void os_if_nan_event_handler(struct wlan_objmgr_psoc *psoc,
struct wlan_objmgr_vdev *vdev,
uint32_t type, void *msg);
/**
* os_if_nan_register_hdd_callbacks: os_if api to register hdd callbacks
* @psoc: pointer to psoc object
* @cb_obj: struct pointer containing callbacks
*
* Return: status of operation
*/
int os_if_nan_register_hdd_callbacks(struct wlan_objmgr_psoc *psoc,
struct nan_callbacks *cb_obj);
/**
* os_if_nan_post_ndi_create_rsp: os_if api to pos ndi create rsp to umac nan
* component
* @psoc: pointer to psoc object
* @vdev_id: vdev id of ndi
* @success: if create was success or failure
*
* Return: None
*/
void os_if_nan_post_ndi_create_rsp(struct wlan_objmgr_psoc *psoc,
uint8_t vdev_id, bool success);
/**
* os_if_nan_post_ndi_delete_rsp: os_if api to pos ndi delete rsp to umac nan
* component
* @psoc: pointer to psoc object
* @vdev_id: vdev id of ndi
* @success: if delete was success or failure
*
* Return: None
*/
void os_if_nan_post_ndi_delete_rsp(struct wlan_objmgr_psoc *psoc,
uint8_t vdev_id, bool success);
/**
* os_if_nan_ndi_session_end: os_if api to process ndi session end
* component
* @vdev: pointer to vdev deleted
*
* Return: None
*/
void os_if_nan_ndi_session_end(struct wlan_objmgr_vdev *vdev);
/**
* os_if_nan_set_ndi_state: os_if api set NDI state
* @vdev: pointer to vdev deleted
* @state: value to set
*
* Return: status of operation
*/
static inline QDF_STATUS os_if_nan_set_ndi_state(struct wlan_objmgr_vdev *vdev,
uint32_t state)
{
return ucfg_nan_set_ndi_state(vdev, state);
}
/**
* os_if_nan_set_ndp_create_transaction_id: set ndp create transaction id
* @vdev: pointer to vdev object
* @val: value to set
*
* Return: status of operation
*/
static inline QDF_STATUS os_if_nan_set_ndp_create_transaction_id(
struct wlan_objmgr_vdev *vdev,
uint16_t val)
{
return ucfg_nan_set_ndp_create_transaction_id(vdev, val);
}
/**
* os_if_nan_set_ndp_delete_transaction_id: set ndp delete transaction id
* @vdev: pointer to vdev object
* @val: value to set
*
* Return: status of operation
*/
static inline QDF_STATUS os_if_nan_set_ndp_delete_transaction_id(
struct wlan_objmgr_vdev *vdev,
uint16_t val)
{
return ucfg_nan_set_ndp_delete_transaction_id(vdev, val);
}
#else
static inline void os_if_nan_post_ndi_create_rsp(struct wlan_objmgr_psoc *psoc,
uint8_t vdev_id, bool success)
{
}
static inline void os_if_nan_post_ndi_delete_rsp(struct wlan_objmgr_psoc *psoc,
uint8_t vdev_id, bool success)
{
}
#endif /* WLAN_FEATURE_NAN_CONVERGENCE */
#endif