staging: rtl8723bs: propagate errno handling for mgmt xmit

Convert rtw_hal_mgnt_xmit() to return errno-style values and update
the prototype in hal_intf.h.

After this change, dump_mgntframe_and_wait() still uses the return value
of rtw_hal_mgnt_xmit() to determine whether it should wait for
completion. A follow-on patch will make dump_mgntframe_and_wait()
return void since its return value is unused by all current callers.

Signed-off-by: Hungyu Lin <dennylin0707@gmail.com>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Link: https://patch.msgid.link/20260731155228.22526-3-dennylin0707@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Hungyu Lin 2026-07-31 15:52:27 +00:00 committed by Greg Kroah-Hartman
parent 049148af5d
commit 64fd99b6fe
3 changed files with 12 additions and 3 deletions

View File

@ -1990,6 +1990,10 @@ s32 dump_mgntframe_and_wait(struct adapter *padapter, struct xmit_frame *pmgntfr
pxmitbuf->sctx = &sctx;
ret = rtw_hal_mgnt_xmit(padapter, pmgntframe);
if (ret)
ret = _FAIL;
else
ret = _SUCCESS;
if (ret == _SUCCESS)
ret = rtw_sctx_wait(&sctx);

View File

@ -115,8 +115,10 @@ s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe)
/*
* [IMPORTANT] This function would be run in interrupt context.
*/
s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
int rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
{
int ret;
update_mgntframe_attrib_addr(padapter, pmgntframe);
/* pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; */
/* pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; */
@ -130,7 +132,10 @@ s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe)
pmgntframe->attrib.encrypt = _AES_;
pmgntframe->attrib.bswenc = true;
}
rtw_mgmt_xmitframe_coalesce(padapter, pmgntframe->pkt, pmgntframe);
ret = rtw_mgmt_xmitframe_coalesce(padapter, pmgntframe->pkt, pmgntframe);
if (ret)
return ret;
}
return rtl8723bs_mgnt_xmit(padapter, pmgntframe);

View File

@ -191,7 +191,7 @@ u8 rtw_hal_check_ips_status(struct adapter *padapter);
int rtw_hal_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe);
s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe);
s32 rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe);
int rtw_hal_mgnt_xmit(struct adapter *padapter, struct xmit_frame *pmgntframe);
s32 rtw_hal_init_xmit_priv(struct adapter *padapter);
void rtw_hal_free_xmit_priv(struct adapter *padapter);