# /space/home/slher/rel/Beken/v6_4_5/macsw/ip/lmac/src/mm/mm_bcn.c File Reference

MAC Beacon management module implementation. More...

`#include "mac_frame.h"`
`#include "mm.h"`
`#include "mm_timer.h"`
`#include "co_endian.h"`
`#include "sta_mgmt.h"`
`#include "vif_mgmt.h"`
`#include "phy.h"`
`#include "dbg.h"`
`#include "rd.h"`
`#include "ps.h"`
`#include "txl_cntrl.h"`
`#include "txl_frame.h"`
`#include "rxl_cntrl.h"`
`#include "hal_machw.h"`
`#include "scan.h"`
`#include "chan.h"`
`#include "mm_bcn.h"`
`#include "hal_dma.h"`
`#include "macif.h"`
`#include "tpc.h"`
`#include "reg_mac_core.h"`
`#include "reg_mac_pl.h"`
`#include "me_utils.h"`

Go to the source code of this file.

## Functions
static void | mm_tim_update_proceed (struct mm_tim_update_req const *param)
| Update TIM IE in the beacon.
static void | mm_bcn_desc_prep (struct vif_info_tag *vif, struct mm_bcn_change_req const *param)
| Update tx descriptor for the beacon.
static void | mm_bcn_csa_init (struct vif_info_tag *vif, struct mm_bcn_change_req const *param)
| Update CSA counter.
static void | mm_bcn_send_csa_counter_ind (uint8_t vif_index, uint8_t csa_count)
| Send CSA counter value to host.
static uint8_t | mm_bcn_build (struct vif_info_tag *vif)
| Update beacon field before transmission.
static void | mm_bcn_updated (void *env, int dma_queue)
| Callback associated to DMA transfer of beacon from host memory.
static void | mm_bcn_update (struct mm_bcn_change_req const *param)
| Initiates download of Beacon frame.
static void | mm_bcn_transmitted (void *env, uint32_t status)
| Callback associated to transmission of beacon.
static void | mm_bcn_init_p2p_noa (uint8_t vif_index)
| Initializes Buffer payload descriptor for NOA IE, so that it could be added in beacon if needed.
static void | mm_bcn_init_mesh_add_ies_desc (void)
| Initializes Buffer payload descriptor for MESH IE, so that it could be added in beacon if needed.
static void | mm_bcn_init_tim (struct vif_info_tag *vif)
| Initializes buffer of TIM IE that will be included in beacon (and related variables in the vif structure).
void | mm_bcn_init (void)
| Initialization of the MM BCN environment.
void | mm_bcn_init_vif (struct vif_info_tag *vif)
| Initialization of some BCN descriptors at AP VIF creation.
void | mm_bcn_change (struct mm_bcn_change_req const *param)
| Proceeds to the update of the beacon frame for the specified VIF.
void | mm_tim_update (struct mm_tim_update_req const *param)
| Proceeds to the update of the TIM IE for the specified VIF.
void | mm_bcn_transmit (void)
| Links the beacons to the BCN queue for transmission.
void | mm_bcn_update_p2p_noa (uint8_t vif_index, uint8_t operation)
| Add/Remove/Update P2P NOA IE in the beacon.
struct txl_buffer_tag * | mm_bcn_get_buffer (uint8_t vif_index)
| Returns a pointer to buffer that will contains the Beacon data sent on a given VIF.
## Variables
struct mm_bcn_env_tag | mm_bcn_env
| Global data for maintaining beacon information.

## Detailed Description

MAC Beacon management module implementation.

Copyright (C) RivieraWaves 2011-2019

Definition in file mm_bcn.c.