/space/home/slher/rel/Beken/v6_4_5/macsw/ip/lmac/src/tx/txl/txl_frame.h File Reference

Management of internal frame generation. More...

#include "co_int.h"
#include "co_list.h"
#include "tx_swdesc.h"
#include "txl_buffer.h"
#include "p2p.h"
#include "mesh.h"

Go to the source code of this file.

Data Structures

struct  txl_frame_cfm_tag
 TX frame confirmation descriptor. More...
struct  txl_frame_desc_tag
 TX frame descriptor. More...
struct  txl_frame_env_tag
 Environment variables of the TX frame block. More...

Typedefs

typedef void(* cfm_func_ptr )(void *, uint32_t)
 Pointer to confirmation function.

Enumerations

enum  {
  TX_DEFAULT_24G, TX_DEFAULT_5G, TX_DEFAULT_NDPA_BRP, TX_DEFAULT_NDP,
  TX_CUSTOM
}
 

Type of transmission parameters.

More...
enum  { TX_INT, TX_EXT }
 

Type of frame descriptor.

More...

Functions

void txl_frame_init (bool reset)
 Initializes the TX frame module environment.
void txl_frame_init_desc (struct txl_frame_desc_tag *frame, struct txl_buffer_tag *buffer, struct tx_hw_desc *hwdesc, struct txl_buffer_control *bufctrl)
 Basic initializations of an external TX frame descriptor (e.g such as a beacon descriptor when autonomous beacon transmission is used).
struct txl_frame_desc_tagtxl_frame_get (int type, int len)
 Get and initialize a TX frame descriptor.
void txl_frame_prepare (struct txl_frame_desc_tag *frame, int type, int len)
 Prepare TX frame descriptor prior to transmission.
bool txl_frame_push (struct txl_frame_desc_tag *desc, uint8_t ac)
 Push a TX frame descriptor.
void txl_frame_cfm (struct txdesc *txdesc)
 Push a TX descriptor in the TX frame confirmation queue This function is called under interrupt by the TX control module once the frame has been transmitted.
void txl_frame_release (struct txdesc *txdesc, bool postponed)
 Release a descriptor allocated for a packet that has not been sent.
void txl_frame_evt (int dummy)
 Background event handler of the Tx frame module.
uint8_t txl_frame_send_null_frame (uint8_t sta_idx, cfm_func_ptr cfm, void *env)
 Builds a NULL frame with RA address pointing to the STA passed as parameter.
uint8_t txl_frame_send_qosnull_frame (uint8_t sta_idx, uint16_t qos, cfm_func_ptr cfm, void *env)
 Builds a QoS NULL frame with RA address pointing to the STA passed as parameter.
uint8_t txl_frame_send_tdls_channel_switch_req_frame (struct tdls_chan_switch_req const *param, cfm_func_ptr cfm)
 Builds a TDLS Channel Switch Request frame.
uint8_t txl_frame_send_tdls_channel_switch_rsp_frame (struct vif_info_tag *vif, uint16_t status, cfm_func_ptr cfm)
 Builds a TDLS Channel Switch Response frame.
uint8_t txl_frame_send_tdls_peer_traffic_ind_frame (struct tdls_peer_traffic_ind_req const *param, cfm_func_ptr cfm)
 Builds a TDLS Peer Traffic Indication frame.

Variables

struct txl_frame_env_tag txl_frame_env
 TX frame environment variables.
uint32_t txl_frame_pool [NX_TXFRAME_CNT][(sizeof(struct txl_buffer_tag)+NX_TXFRAME_LEN)/4]
 TX frame buffer pool.
uint32_t txl_tim_ie_pool [NX_VIRT_DEV_MAX][CO_ALIGN4_HI(MAC_TIM_BMP_OFT+1)/4]
 Pool of TIM IE buffers.
uint32_t txl_tim_bitmap_pool [NX_VIRT_DEV_MAX][CO_ALIGN4_HI(MAC_TIM_SIZE)/4]
 Pool of TIM virtual bitmap.
struct tx_pbd txl_tim_desc [NX_VIRT_DEV_MAX][2]
 Pool of TIM descriptors.
uint32_t txl_bcn_pool [NX_VIRT_DEV_MAX][(sizeof(struct txl_buffer_tag)+NX_BCNFRAME_LEN)/4]
 Beacon buffer pool.
struct tx_hw_desc txl_bcn_hwdesc_pool [NX_VIRT_DEV_MAX]
 TX beacon header descriptor pool.
struct tx_pbd txl_bcn_end_desc [NX_VIRT_DEV_MAX]
 TX payload buffer descriptor for the post-TIM part of the beacon.
struct txl_buffer_control txl_bcn_buf_ctrl [NX_VIRT_DEV_MAX]
 TX buffer control structures for the beacon buffers.
struct tx_pbd txl_p2p_noa_desc [NX_VIRT_DEV_MAX]
 Pool of P2P NOA payload descriptors.
uint16_t txl_p2p_noa_ie_pool [NX_VIRT_DEV_MAX][P2P_NOA_IE_BUFFER_LEN]
 Pool of P2P NOA Attributes.
struct tx_pbd txl_mesh_add_ies_desc [RW_MESH_VIF_NB]
 Payload Descriptor for additional IEs of Mesh Beacon.
struct mesh_add_ies_tag txl_mesh_add_ies [RW_MESH_VIF_NB]
 Buffer containing the additional IEs of Mesh Beacon.
struct tx_hw_desc txl_frame_hwdesc_pool [NX_TXFRAME_CNT]
 TX frame header descriptor pool.
struct txl_buffer_control txl_buffer_control_24G
 Default policy table for 2.4GHz band.
struct txl_buffer_control txl_buffer_control_5G
 Default policy table for 5GHz band.
struct txl_buffer_control txl_buffer_control_ndpa_brp
 Default policy table for transmission of NDPA and BRP frames sent during Beamforming Sounding procedure.
struct txl_buffer_control txl_buffer_control_ndp
 Default policy table for NDP frame sent during Beamforming Sounding procedure.
struct txl_buffer_control txl_frame_buf_ctrl [NX_TXFRAME_CNT]
 TX buffer control structures for the internal frames.

Detailed Description

Management of internal frame generation.

Copyright (C) RivieraWaves 2011-2019

Definition in file txl_frame.h.


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