mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-05 09:36:39 -04:00
staging: rtl8723bs: move rtw_recv_indicatepkt to rtw_recv.c
Move the function rtw_recv_indicatepkt from os_dep/recv_linux.c to core/rtw_recv.c to reduce code in the os_dep directory. Signed-off-by: Michael Straube <straube.linux@gmail.com> Reviewed-by: Hans de Goede <hansg@kernel.org> Link: https://lore.kernel.org/r/20250822135418.118115-3-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
0149f27d1a
commit
f97151eb17
@@ -1725,6 +1725,43 @@ static void recv_indicatepkts_pkt_loss_cnt(struct debug_priv *pdbgpriv, u64 prev
|
||||
|
||||
}
|
||||
|
||||
static int rtw_recv_indicatepkt(struct adapter *padapter, union recv_frame *precv_frame)
|
||||
{
|
||||
struct recv_priv *precvpriv;
|
||||
struct __queue *pfree_recv_queue;
|
||||
struct sk_buff *skb;
|
||||
struct rx_pkt_attrib *pattrib = &precv_frame->u.hdr.attrib;
|
||||
|
||||
precvpriv = &(padapter->recvpriv);
|
||||
pfree_recv_queue = &(precvpriv->free_recv_queue);
|
||||
|
||||
skb = precv_frame->u.hdr.pkt;
|
||||
if (!skb)
|
||||
goto _recv_indicatepkt_drop;
|
||||
|
||||
skb->data = precv_frame->u.hdr.rx_data;
|
||||
|
||||
skb_set_tail_pointer(skb, precv_frame->u.hdr.len);
|
||||
|
||||
skb->len = precv_frame->u.hdr.len;
|
||||
|
||||
rtw_os_recv_indicate_pkt(padapter, skb, pattrib);
|
||||
|
||||
/* pointers to NULL before rtw_free_recvframe() */
|
||||
precv_frame->u.hdr.pkt = NULL;
|
||||
|
||||
rtw_free_recvframe(precv_frame, pfree_recv_queue);
|
||||
|
||||
return _SUCCESS;
|
||||
|
||||
_recv_indicatepkt_drop:
|
||||
|
||||
/* enqueue back to free_recv_queue */
|
||||
rtw_free_recvframe(precv_frame, pfree_recv_queue);
|
||||
|
||||
return _FAIL;
|
||||
}
|
||||
|
||||
static int recv_indicatepkts_in_order(struct adapter *padapter, struct recv_reorder_ctrl *preorder_ctrl, int bforced)
|
||||
{
|
||||
struct list_head *phead, *plist;
|
||||
|
||||
@@ -13,7 +13,6 @@ extern void _rtw_free_recv_priv(struct recv_priv *precvpriv);
|
||||
|
||||
|
||||
extern s32 rtw_recv_entry(union recv_frame *precv_frame);
|
||||
extern int rtw_recv_indicatepkt(struct adapter *adapter, union recv_frame *precv_frame);
|
||||
extern void rtw_recv_returnpacket(struct net_device *cnxt, struct sk_buff *preturnedpkt);
|
||||
|
||||
extern void rtw_handle_tkip_mic_err(struct adapter *padapter, u8 bgroup);
|
||||
|
||||
@@ -179,40 +179,3 @@ void rtw_handle_tkip_mic_err(struct adapter *padapter, u8 bgroup)
|
||||
memset(&wrqu, 0x00, sizeof(wrqu));
|
||||
wrqu.data.length = sizeof(ev);
|
||||
}
|
||||
|
||||
int rtw_recv_indicatepkt(struct adapter *padapter, union recv_frame *precv_frame)
|
||||
{
|
||||
struct recv_priv *precvpriv;
|
||||
struct __queue *pfree_recv_queue;
|
||||
struct sk_buff *skb;
|
||||
struct rx_pkt_attrib *pattrib = &precv_frame->u.hdr.attrib;
|
||||
|
||||
precvpriv = &(padapter->recvpriv);
|
||||
pfree_recv_queue = &(precvpriv->free_recv_queue);
|
||||
|
||||
skb = precv_frame->u.hdr.pkt;
|
||||
if (!skb)
|
||||
goto _recv_indicatepkt_drop;
|
||||
|
||||
skb->data = precv_frame->u.hdr.rx_data;
|
||||
|
||||
skb_set_tail_pointer(skb, precv_frame->u.hdr.len);
|
||||
|
||||
skb->len = precv_frame->u.hdr.len;
|
||||
|
||||
rtw_os_recv_indicate_pkt(padapter, skb, pattrib);
|
||||
|
||||
/* pointers to NULL before rtw_free_recvframe() */
|
||||
precv_frame->u.hdr.pkt = NULL;
|
||||
|
||||
rtw_free_recvframe(precv_frame, pfree_recv_queue);
|
||||
|
||||
return _SUCCESS;
|
||||
|
||||
_recv_indicatepkt_drop:
|
||||
|
||||
/* enqueue back to free_recv_queue */
|
||||
rtw_free_recvframe(precv_frame, pfree_recv_queue);
|
||||
|
||||
return _FAIL;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user