Commit a3cba3f0 authored by Martin Kaiser's avatar Martin Kaiser Committed by Greg Kroah-Hartman
Browse files

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: default avatarMartin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20220806195540.777390-2-martin@kaiser.cx


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent b5b26f1d
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -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;
}

/*
+1 −1
Original line number Diff line number Diff line
@@ -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);
+1 −1
Original line number Diff line number Diff line
@@ -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);