# /space/home/slher/rel/Beken/v6_4_5/macsw/ip/lmac/src/rx/rxl/rxl_hwdesc.h File Reference

File contains the declaration of pool's elements. More...

`#include "dbg_assert.h"`
`#include "compiler.h"`
`#include "co_status.h"`
`#include "hal_desc.h"`
`#include "rxl_cntrl.h"`

Go to the source code of this file.

## Data Structures
struct | rxdesc
| SW descriptor to manage the MAC SW receive operations. More...
## Defines
#define | RXL_LAST_DMA_PATTERN_LEN 4
| Length of the pattern for final DMA transfer.
#define | NX_AMSDU_DEAGG_LEN 0
| Length of de-aggregated A-MSDUs (not available).
#define | RXU_MACHDRDESC_LEN 0
| Length of MAC Header descriptor (not available).
#define | RXL_ADD_INFO_LEN (sizeof_b(struct phy_channel_info) + 4 + RXU_MACHDRDESC_LEN + NX_AMSDU_DEAGG_LEN)
| Length of the RX SW information.
#define | RXL_HEADER_INFO_LEN
| Length of the receive vectors.
#define | RXL_PAYLOAD_OFFSET (RXL_HEADER_INFO_LEN + 2)
| Offset of the payload in the RX buffer.
## Functions
__INLINE struct rx_dmadesc * | rxl_dmadesc_get (struct rxdesc *rxdesc)
| Get the DMA descriptor attached to a received MPDU.
void | rxl_hwdesc_init (void)
| Initialize the pools of element Function to initialize the Rx buffer and descriptor pools.
void | rxl_mpdu_copy (struct rx_pbd *pbd, uint16_t length, uint16_t offset, uint32_t *dst)
| Do a SW copy of a received MPDU.
void | rxl_mpdu_partial_transfer (struct rxdesc *rxdesc, uint16_t upload_len, uint32_t hostbuf, uint16_t payl_offset, cb_rx_dma_func_ptr cb, void *env)
| Do a partial upload of a MPDU to a host buffer.
void | rxl_mpdu_transfer (struct rxdesc *rxdesc)
| This function programs the DMA transfer of the received payload to the host memory.
void | rxl_mpdu_free (struct rxdesc *rxdesc)
| Free the HW descriptors attached to the SW descriptor passed as parameter.
void | rxl_frame_release (struct rxdesc *rxdesc)
| This function cleans up the complete frame data structures.
struct rxdesc * | rxl_rxdesc_get (void)
| Get the RX descriptor pointing to the first MPDU ready for processing.
void | rxl_rxdesc_ready_for_processing (struct rxdesc *rxdesc)
| Indicate that the MPDU associated to the descriptor is ready for processing.
void | rxl_mpdu_isr (void)
| Service routine for the MAC HW RX interrupt.
void | rxl_immediate_frame_get (void)
| Function used to get the immediate frame that was indicated from its dedicated interrupt.
void | rxl_current_desc_get (struct rx_hd **rhd, struct rx_pbd **rbd)
| This function returns the pointer to the first RX Header and Buffer descriptors chained to the MAC HW.
void | rxl_hwdesc_monitor (bool enable)
| This function is called when an interface is changing its type, in order to configure correctly the RX path for either monitor or active mode.

## Detailed Description

File contains the declaration of pool's elements.

Copyright (C) RivieraWaves 2011-2019

Definition in file rxl_hwdesc.h.