[PATCH 5/5] staging: rtl8723bs: propagate errno through hal xmit path

From: Hungyu Lin

Date: Thu May 14 2026 - 02:05:37 EST


Propagate errno values from rtl8723bs_hal_xmitframe_enqueue()
through rtw_hal_xmitframe_enqueue() by returning the error code
directly.

Also update rtw_hal_xmit() to explicitly map the boolean return
value of rtl8723bs_hal_xmit() to _SUCCESS/_FAIL, clarifying
the return semantics at the HAL boundary.

Signed-off-by: Hungyu Lin <dennylin0707@xxxxxxxxx>
---
drivers/staging/rtl8723bs/hal/hal_intf.c | 7 +++++--
drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c | 2 +-
drivers/staging/rtl8723bs/include/hal_intf.h | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/rtl8723bs/hal/hal_intf.c b/drivers/staging/rtl8723bs/hal/hal_intf.c
index 03f23b75d532..77fa6e67530a 100644
--- a/drivers/staging/rtl8723bs/hal/hal_intf.c
+++ b/drivers/staging/rtl8723bs/hal/hal_intf.c
@@ -99,14 +99,17 @@ u8 rtw_hal_check_ips_status(struct adapter *padapter)
return CheckIPSStatus(padapter);
}

-s32 rtw_hal_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe)
+int rtw_hal_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe)
{
return rtl8723bs_hal_xmitframe_enqueue(padapter, pxmitframe);
}

s32 rtw_hal_xmit(struct adapter *padapter, struct xmit_frame *pxmitframe)
{
- return rtl8723bs_hal_xmit(padapter, pxmitframe);
+ if (rtl8723bs_hal_xmit(padapter, pxmitframe))
+ return _FAIL;
+
+ return _SUCCESS;
}

/*
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
index ff82b6efefc7..ea7c9f4ac0f4 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_xmit.c
@@ -519,7 +519,7 @@ s32 rtl8723bs_hal_xmitframe_enqueue(
complete(&pxmitpriv->SdioXmitStart);
}

- return err ? _FAIL : _SUCCESS;
+ return err;

}

diff --git a/drivers/staging/rtl8723bs/include/hal_intf.h b/drivers/staging/rtl8723bs/include/hal_intf.h
index 9b000681ff80..ee8ad26325b5 100644
--- a/drivers/staging/rtl8723bs/include/hal_intf.h
+++ b/drivers/staging/rtl8723bs/include/hal_intf.h
@@ -195,7 +195,7 @@ void rtw_hal_set_odm_var(struct adapter *padapter, enum hal_odm_variable eVariab

u8 rtw_hal_check_ips_status(struct adapter *padapter);

-s32 rtw_hal_xmitframe_enqueue(struct adapter *padapter, struct xmit_frame *pxmitframe);
+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);

--
2.34.1