Implementation of the API function used to initialize the pools. More...
#include "rxl_hwdesc.h"#include "ke_event.h"#include "rxl_cntrl.h"#include "rxu_cntrl.h"#include "co_utils.h"#include "macif.h"#include "txl_cfm.h"#include "co_endian.h"#include "reg_mac_pl.h"#include "reg_mac_core.h"Go to the source code of this file.
Data Structures | |
| struct | rxl_hwdesc_env_tag |
| Buffer Management control structure. More... | |
Functions | |
| static void | rxl_hd_append (struct rx_dmadesc *desc) |
| Appends a descriptor to the list visible to HW Function to initialize the freed HW desc and tail it to the list of HW descriptors. | |
| static void | rxl_pd_append (struct rx_pbd *first, struct rx_pbd *last, struct rx_pbd *spare) |
| Appends a list of RX payload buffer descriptors to the list visible to HW Function to initialize the freed HW desc and tail it to the list of HW descriptors. | |
| static bool | rxl_rxcntrl_frame (struct rxdesc *rxdesc) |
| This function processes the received control frames. | |
| static struct rx_payloaddesc * | rxl_payload_transfer (struct rx_payloaddesc **curr_pd, uint16_t upload_len, uint32_t hostbuf, uint16_t *payl_offset, int dma_idx, int irq_en) |
| Upload a payload to a higher layer buffer. | |
| static void | rxl_go_to_last_rbd (struct rxdesc *rxdesc, struct rx_payloaddesc *pd, struct rx_payloaddesc *prev_pd) |
| Loop on the payload descriptors until the RX_PD_LASTBUF flag is found. | |
| void | rxl_hwdesc_init (void) |
| Initialize the pools of element Function to initialize the Rx buffer and descriptor pools. | |
| 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. | |
| void | rxl_frame_release (struct rxdesc *rxdesc) |
| This function cleans up the complete frame data structures. | |
| 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. | |
| 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. | |
Variables | |
| static struct rxdesc | rx_swdesc_tab [NX_RXDESC_CNT] |
| Array of RX SW descriptors. | |
| static struct rxl_hwdesc_env_tag | rx_hwdesc_env |
| RXL HW descriptor environment variable. | |
| struct rx_dmadesc | rx_dma_hdrdesc [NX_RXDESC_CNT] |
| Array of struct containing the RX header descriptors. | |
| struct rx_payloaddesc | rx_payload_desc [NX_RX_PAYLOAD_DESC_CNT] |
| Array of struct containing the RX buffer descriptors. | |
Implementation of the API function used to initialize the pools.
Copyright (C) RivieraWaves 2011-2019
Definition in file rxl_hwdesc.c.
1.6.1