blob: a3a3a2360c4f2ec53d53fd87e8d76409a9f50301 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
Abhishek Singh3df76612017-05-16 14:05:32 +05302 * Copyright (c) 2011-2012, 2014-2017 The Linux Foundation. All rights reserved.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
27
28/*
29 *
30 * This file lim_ibss_peer_mgmt.h contains prototypes for
31 * the utility functions LIM uses to maintain peers in IBSS.
32 * Author: Chandra Modumudi
33 * Date: 03/12/04
34 * History:-
35 * Date Modified by Modification Information
36 * --------------------------------------------------------------------
37 */
38
39#include "sir_common.h"
40#include "lim_utils.h"
41
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080042void lim_ibss_init(tpAniSirGlobal);
43void lim_ibss_delete(tpAniSirGlobal, tpPESession psessionEntry);
44tSirRetStatus lim_ibss_coalesce(tpAniSirGlobal, tpSirMacMgmtHdr,
45 tpSchBeaconStruct, uint8_t *, uint32_t, uint16_t,
46 tpPESession);
47tSirRetStatus lim_ibss_sta_add(tpAniSirGlobal, void *, tpPESession);
48tSirRetStatus lim_ibss_add_sta_rsp(tpAniSirGlobal, void *, tpPESession);
Abhishek Singh3df76612017-05-16 14:05:32 +053049
50/**
51 * lim_process_ibss_del_sta_rsp()- Handle ibss delete
52 * peer resp from firmware
53 *
54 * @mac_ptr: Pointer to Global MAC structure
55 * @lim_msg: delete sta response
56 * @pe_session: pe session
57 *
58 * Return: None
59 *
60 */
61void lim_process_ibss_del_sta_rsp(tpAniSirGlobal mac_ctx,
62 struct scheduler_msg *lim_msg,
63 tpPESession pe_session);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080064tLimIbssPeerNode *lim_ibss_peer_find(tpAniSirGlobal pMac, tSirMacAddr macAddr);
65void lim_ibss_del_bss_rsp(tpAniSirGlobal, void *, tpPESession);
66void lim_ibss_del_bss_rsp_when_coalescing(tpAniSirGlobal, void *, tpPESession);
67void lim_ibss_add_bss_rsp_when_coalescing(tpAniSirGlobal pMac, void *msg,
68 tpPESession pSessionEntry);
69void lim_ibss_decide_protection_on_delete(tpAniSirGlobal pMac, tpDphHashNode pStaDs,
70 tpUpdateBeaconParams pBeaconParams,
71 tpPESession pSessionEntry);
72void lim_ibss_heart_beat_handle(tpAniSirGlobal pMac, tpPESession psessionEntry);
73void lim_process_ibss_peer_inactivity(tpAniSirGlobal pMac, void *buf);