summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/eswin/fullmac/ecrnx_tdls.h
blob: 4bec85dddea1645856762eaf3a364dc8a79b4990 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/**
 ******************************************************************************
 *
 * @file ecrnx_tdls.h
 *
 * @brief TDLS function declarations
 *
 * Copyright (C) ESWIN 2015-2020
 *
 ******************************************************************************
 */

#ifndef ECRNX_TDLS_H_
#define ECRNX_TDLS_H_

#include "ecrnx_defs.h"

struct ieee_types_header {
    u8 element_id;
    u8 len;
} __packed;

struct ieee_types_bss_co_2040 {
    struct ieee_types_header ieee_hdr;
    u8 bss_2040co;
} __packed;

struct ieee_types_extcap {
    struct ieee_types_header ieee_hdr;
    u8 ext_capab[8];
} __packed;

struct ieee_types_vht_cap {
    struct ieee_types_header ieee_hdr;
    struct ieee80211_vht_cap vhtcap;
} __packed;

struct ieee_types_vht_oper {
    struct ieee_types_header ieee_hdr;
    struct ieee80211_vht_operation vhtoper;
} __packed;

struct ieee_types_aid {
    struct ieee_types_header ieee_hdr;
    u16 aid;
} __packed;

int ecrnx_tdls_send_mgmt_packet_data(struct ecrnx_hw *ecrnx_hw, struct ecrnx_vif *ecrnx_vif,
                         const u8 *peer, u8 action_code, u8 dialog_token,
                         u16 status_code, u32 peer_capability, bool initiator,
                         const u8 *extra_ies, size_t extra_ies_len, u8 oper_class,
                         struct cfg80211_chan_def *chandef);

#endif /* ECRNX_TDLS_H_ */