diff options
author | Martin Kaiser <martin@kaiser.cx> | 2022-08-06 22:55:28 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-08-16 16:17:57 +0300 |
commit | a3cba3f05fdb249cbe1248763ffe3e0ea69f7284 (patch) | |
tree | cb9e25736db6f5e4e4330e9551617f1303b49a63 | |
parent | b5b26f1da5d9906a876693cc7598c54937a907d5 (diff) | |
download | linux-a3cba3f05fdb249cbe1248763ffe3e0ea69f7284.tar.xz |
staging: r8188eu: Hal_MappingOutPipe should return an int
Update the Hal_MappingOutPipe function to return 0 for success or -EXNIO
if the caller requested more than the number of available endpoints.
This error code is also used by usb_find_common_endpoints if a requested
endpoint was not found.
Unlike a boolean return value, a negative error code can be returned to
external functions that call the r8188eu driver, e.g. to the caller of our
probe function.
HalUsbSetQueuePipeMapping8188EUsb passes the return value of
Hal_MappingOutPipe on to its caller. We have to change its return type
from bool to int as well.
Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150
Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20220806195540.777390-2-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/r8188eu/hal/hal_com.c | 8 | ||||
-rw-r--r-- | drivers/staging/r8188eu/hal/usb_halinit.c | 2 | ||||
-rw-r--r-- | drivers/staging/r8188eu/include/hal_com.h | 2 |
3 files changed, 5 insertions, 7 deletions
diff --git a/drivers/staging/r8188eu/hal/hal_com.c b/drivers/staging/r8188eu/hal/hal_com.c index 6a1cdc67335b..d24e0e5924eb 100644 --- a/drivers/staging/r8188eu/hal/hal_com.c +++ b/drivers/staging/r8188eu/hal/hal_com.c @@ -225,11 +225,10 @@ static void three_out_pipe(struct adapter *adapter, bool wifi_cfg) } } -bool Hal_MappingOutPipe(struct adapter *adapter, u8 numoutpipe) +int Hal_MappingOutPipe(struct adapter *adapter, u8 numoutpipe) { struct registry_priv *pregistrypriv = &adapter->registrypriv; bool wifi_cfg = pregistrypriv->wifi_spec; - bool result = true; switch (numoutpipe) { case 2: @@ -242,10 +241,9 @@ bool Hal_MappingOutPipe(struct adapter *adapter, u8 numoutpipe) one_out_pipe(adapter); break; default: - result = false; - break; + return -ENXIO; } - return result; + return 0; } /* diff --git a/drivers/staging/r8188eu/hal/usb_halinit.c b/drivers/staging/r8188eu/hal/usb_halinit.c index 8b36fb56076e..ba068e6fd9fb 100644 --- a/drivers/staging/r8188eu/hal/usb_halinit.c +++ b/drivers/staging/r8188eu/hal/usb_halinit.c @@ -35,7 +35,7 @@ static void _ConfigNormalChipOutEP_8188E(struct adapter *adapt, u8 NumOutPipe) } } -static bool HalUsbSetQueuePipeMapping8188EUsb(struct adapter *adapt, u8 NumOutPipe) +static int HalUsbSetQueuePipeMapping8188EUsb(struct adapter *adapt, u8 NumOutPipe) { _ConfigNormalChipOutEP_8188E(adapt, NumOutPipe); diff --git a/drivers/staging/r8188eu/include/hal_com.h b/drivers/staging/r8188eu/include/hal_com.h index d7e333f6ce39..3dfb61e64ee0 100644 --- a/drivers/staging/r8188eu/include/hal_com.h +++ b/drivers/staging/r8188eu/include/hal_com.h @@ -143,7 +143,7 @@ u8 MRateToHwRate(u8 rate); void HalSetBrateCfg(struct adapter *Adapter, u8 *mBratesOS, u16 *pBrateCfg); -bool Hal_MappingOutPipe(struct adapter *pAdapter, u8 NumOutPipe); +int Hal_MappingOutPipe(struct adapter *pAdapter, u8 NumOutPipe); s32 c2h_evt_read(struct adapter *adapter, u8 *buf); |