[PATCH 6.8 344/715] r8152: fix unknown device for choose_configuration

From: Sasha Levin
Date: Sun Mar 24 2024 - 19:51:20 EST


From: Hayes Wang <hayeswang@xxxxxxxxxxx>

[ Upstream commit 46590b545df636aea0f9f7f2100d9963c0af5824 ]

For the unknown device, rtl8152_cfgselector_choose_configuration()
should return a negative value. Then, usb_choose_configuration() would
set a configuration for CDC ECM or NCM mode. Otherwise, there is no
usb interface driver for the device.

Fixes: aa4f2b3e418e ("r8152: Choose our USB config with choose_configuration() rather than probe()")
Signed-off-by: Hayes Wang <hayeswang@xxxxxxxxxxx>
Link: https://lore.kernel.org/r/20240308075206.33553-436-nic_swsd@xxxxxxxxxxx
Signed-off-by: Jakub Kicinski <kuba@xxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/net/usb/r8152.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
index 0d0672d2a6545..51fe00c2b896e 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -10078,7 +10078,7 @@ static int rtl8152_cfgselector_choose_configuration(struct usb_device *udev)
* driver supports it.
*/
if (__rtl_get_hw_ver(udev) == RTL_VER_UNKNOWN)
- return 0;
+ return -ENODEV;

/* The vendor mode is not always config #1, so to find it out. */
c = udev->config;
--
2.43.0