linux/drivers/staging/rtl8712/rtl871x_recv.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _RTL871X_RECV_H_
#define _RTL871X_RECV_H_

#include "osdep_service.h"
#include "drv_types.h"

#define NR_RECVFRAME

#define RXFRAME_ALIGN
#define RXFRAME_ALIGN_SZ

#define MAX_SUBFRAME_COUNT

/* for Rx reordering buffer control */
struct recv_reorder_ctrl {};

struct	stainfo_rxcache	{};

#define PHY_RSSI_SLID_WIN_MAX
#define PHY_LINKQUALITY_SLID_WIN_MAX

struct smooth_rssi_data {};

struct rx_pkt_attrib {};

/*
 * accesser of recv_priv: recv_entry(dispatch / passive level);
 * recv_thread(passive) ; returnpkt(dispatch)
 * ; halt(passive) ;
 *
 * using enter_critical section to protect
 */
struct recv_priv {};

struct sta_recv_priv {};

#include "rtl8712_recv.h"

/* get a free recv_frame from pfree_recv_queue */
union recv_frame *r8712_alloc_recvframe(struct  __queue *pfree_recv_queue);
void r8712_free_recvframe(union recv_frame *precvframe,
			  struct  __queue *pfree_recv_queue);
void r8712_free_recvframe_queue(struct  __queue *pframequeue,
				 struct  __queue *pfree_recv_queue);
int r8712_wlanhdr_to_ethhdr(union recv_frame *precvframe);
int recv_func(struct _adapter *padapter, void *pcontext);

static inline u8 *get_rxmem(union recv_frame *precvframe)
{}

static inline u8 *recvframe_pull(union recv_frame *precvframe, sint sz)
{}

static inline u8 *recvframe_put(union recv_frame *precvframe, sint sz)
{}

static inline u8 *recvframe_pull_tail(union recv_frame *precvframe, sint sz)
{}

struct sta_info;

void	_r8712_init_sta_recv_priv(struct sta_recv_priv *psta_recvpriv);
sint r8712_recvframe_chkmic(struct _adapter *adapter,
			    union recv_frame *precvframe);
union recv_frame *r8712_decryptor(struct _adapter *adapter,
				  union recv_frame *precv_frame);
union recv_frame *r8712_recvframe_chk_defrag(struct _adapter *adapter,
					     union recv_frame *precv_frame);
int r8712_validate_recv_frame(struct _adapter *adapter,
			      union recv_frame *precv_frame);
union recv_frame *r8712_portctrl(struct _adapter *adapter,
				 union recv_frame *precv_frame);

#endif