/space/home/slher/rel/Beken/v6_4_5/macsw/ip/umac/src/me/me_mgmtframe.c File Reference

All functions required either to build or to extract data from air frames. More...

#include "me_mgmtframe.h"
#include "mac_frame.h"
#include "mac_ie.h"
#include "mac.h"
#include "me.h"
#include "sm_task.h"
#include "ps.h"
#include "co_endian.h"
#include "co_utils.h"
#include "me_utils.h"
#include "sta_mgmt.h"

Go to the source code of this file.

Defines

#define ME_DEFAULT_LISTEN_INTERVAL   5
 Default listen interval (if no listen interval is proposed by the host).

Functions

static void me_add_baparamset_frame (uint32_t addr, struct bam_env_tag *bam_env)
 Initializes "Block Ack Parameter Set" field for a ADDBA frame.
static void me_add_ba_ssc_frame (uint32_t addr, struct bam_env_tag *bam_env)
 Initializes "Block Ack Starting Sequence Control" field for a ADDBA frame.
static void me_del_baparamset_frame (uint32_t addr, struct bam_env_tag *bam_env)
 Initializes "DELBA Parameter Set" field for a DELBA frame.
uint32_t me_add_ie_ssid (uint32_t *frame_addr, uint8_t ssid_len, uint8_t *ssid)
 Add SSID Information Element in a frame.
uint32_t me_add_ie_supp_rates (uint32_t *frame_addr, struct mac_rateset *rateset)
 Add Supported Rate Information Element in a frame.
uint32_t me_add_ie_ext_supp_rates (uint32_t *frame_addr, struct mac_rateset *rateset)
 Add Extended Supported Rate Information Element in a frame.
uint32_t me_add_ie_tim (uint32_t *frame_addr, uint8_t dtim_period)
 Add TIM (Traffic Indication Map) Information Element in a frame.
uint32_t me_add_ie_dsss_param (uint32_t *frame_addr, uint8_t chan)
 Add DS Parameter Information Element in a frame.
uint32_t me_add_ie_ht_capa (uint32_t *frame_addr)
 Add HT Capabilities Information Element in a frame.
uint32_t me_add_ie_ht_oper (uint32_t *frame_addr, struct vif_info_tag *vif)
 Add HT Operation Information Element in a frame.
uint16_t me_build_authenticate (uint32_t frame, uint16_t algo_type, uint16_t seq_nbr, uint16_t status_code, uint32_t *challenge_array_ptr)
 Build an Authentication frame at the AP and the STA.
uint16_t me_build_deauthenticate (uint32_t frame, uint16_t reason_code)
 Build a De authentication frame at the AP and the STA.
uint16_t me_build_associate_req (uint32_t frame, struct me_bss_info *bss, struct mac_addr *old_ap_addr_ptr, uint8_t vif_idx, uint32_t *ie_addr, uint16_t *ie_len, struct sm_connect_req const *con_par)
 used to build the Associated REQ frame at STA
uint16_t me_build_add_ba_req (uint32_t frame, struct bam_env_tag *bam_env)
 Builds the ADDBA REQ frame.
uint16_t me_build_add_ba_rsp (uint32_t frame, struct bam_env_tag *bam_env, uint16_t param, uint8_t dialog_token, uint16_t status_code)
 Builds the ADDBA RSP frame.
uint16_t me_build_del_ba (uint32_t frame, struct bam_env_tag *bam_env, uint16_t reason_code)
 Builds the DELBA IND frame.
void me_extract_rate_set (uint32_t buffer, uint16_t buflen, struct mac_rateset *mac_rate_set_ptr)
 This function is called to extract the rateset from a management frame.
void me_extract_power_constraint (uint32_t buffer, uint16_t buflen, struct me_bss_info *bss)
 Extract local power constraint from Power Constraint IE.
void me_extract_country_reg (uint32_t buffer, uint16_t buflen, struct me_bss_info *bss)
 Update tx_power of bss channel from Country IE.
void me_extract_mobility_domain (uint32_t buffer, uint16_t buflen, struct me_bss_info *bss)
 Extract Mobility Domain IE.
int me_extract_csa (uint32_t buffer, uint16_t buflen, uint8_t *mode, struct mac_chan_op *chan_desc)
 Extract Channel Switch Announcement (csa) information from beacon.
bool me_extract_edca_params (uint32_t buffer, uint16_t buflen, struct mac_edca_param_set *edca_param, bool *changed)
 Extract EDCA parameters (i.e.
bool me_extract_ht_capa (uint32_t buffer, uint16_t buflen, struct mac_htcapability *ht_cap)
 Extract HT capability element from Beacon or ProbeRsp.
bool me_extract_vht_capa (uint32_t buffer, uint16_t buflen, struct mac_vhtcapability *vht_cap)
 Extract VHT capability element from Beacon or ProbeRsp.

Detailed Description

All functions required either to build or to extract data from air frames.

Copyright (C) RivieraWaves 2011-2019

Definition in file me_mgmtframe.c.


Function Documentation

static void me_add_ba_ssc_frame ( uint32_t  addr,
struct bam_env_tag bam_env 
) [static]

Initializes "Block Ack Starting Sequence Control" field for a ADDBA frame.

Parameters:
[in] addr Address of Block Ack Starting Sequence Control field
[in] bam_env Pointer to the BA information

Definition at line 74 of file me_mgmtframe.c.

References co_htows(), co_write16p(), MAC_BA_BARINFO_SEQ_STARTSEQ_OFT, and bam_env_tag::ssn.

Referenced by me_build_add_ba_req().

static void me_add_baparamset_frame ( uint32_t  addr,
struct bam_env_tag bam_env 
) [static]

Initializes "Block Ack Parameter Set" field for a ADDBA frame.

Parameters:
[in] addr Address of Block Ack Parameter Set field
[in] bam_env Pointer to the BA information

Definition at line 39 of file me_mgmtframe.c.

References bam_env_tag::ba_policy, bam_env_tag::buffer_size, co_htows(), co_write16p(), MAC_BA_PARAMSET_BUFFER_OFT, MAC_BA_PARAMSET_POLICY_OFT, MAC_BA_PARAMSET_TID_OFT, and bam_env_tag::tid.

Referenced by me_build_add_ba_req().

static void me_del_baparamset_frame ( uint32_t  addr,
struct bam_env_tag bam_env 
) [static]

Initializes "DELBA Parameter Set" field for a DELBA frame.

Parameters:
[in] addr Address of DELBA Parameter Set field
[in] bam_env Pointer to the BA information

Definition at line 87 of file me_mgmtframe.c.

References BA_ORIGINATOR, BAM_DELBA_PARAM_INITIATOR_MASK, BAM_DELBA_PARAM_TID_OFFSET, co_htows(), co_write16p(), bam_env_tag::dev_type, and bam_env_tag::tid.

Referenced by me_build_del_ba().


Generated on 14 Jan 2020 for Ceva-RW WLAN FullMAC SW documentation by  doxygen 1.6.1