f97deaa7d207718cfde6a8e6b2b30280563cd029
[openwrt/staging/thess.git] / target / linux / bcm27xx / patches-5.10 / 950-0548-r8152-enable-U1-U2-for-USB_SPEED_SUPER.patch
1 From 69b4339c0b9f3edc6a8f681f05efaaf4add1bb0e Mon Sep 17 00:00:00 2001
2 From: Hayes Wang <hayeswang@realtek.com>
3 Date: Fri, 19 Feb 2021 17:04:40 +0800
4 Subject: [PATCH] r8152: enable U1/U2 for USB_SPEED_SUPER
5
6 commit 7a0ae61acde2cebd69665837170405eced86a6c7 upstream.
7
8 U1/U2 shoued be enabled for USB 3.0 or later. The USB 2.0 doesn't
9 support it.
10
11 Signed-off-by: Hayes Wang <hayeswang@realtek.com>
12 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
13 ---
14 drivers/net/usb/r8152.c | 7 ++++---
15 1 file changed, 4 insertions(+), 3 deletions(-)
16
17 --- a/drivers/net/usb/r8152.c
18 +++ b/drivers/net/usb/r8152.c
19 @@ -3335,7 +3335,7 @@ static void rtl8153b_runtime_enable(stru
20 r8153b_ups_en(tp, false);
21 r8153_queue_wake(tp, false);
22 rtl_runtime_suspend_enable(tp, false);
23 - if (tp->udev->speed != USB_SPEED_HIGH)
24 + if (tp->udev->speed >= USB_SPEED_SUPER)
25 r8153b_u1u2en(tp, true);
26 }
27 }
28 @@ -5028,7 +5028,7 @@ static void rtl8153b_up(struct r8152 *tp
29
30 r8153_aldps_en(tp, true);
31
32 - if (tp->udev->speed != USB_SPEED_HIGH)
33 + if (tp->udev->speed >= USB_SPEED_SUPER)
34 r8153b_u1u2en(tp, true);
35 }
36
37 @@ -5550,8 +5550,9 @@ static void r8153b_init(struct r8152 *tp
38 ocp_data |= POLL_LINK_CHG;
39 ocp_write_word(tp, MCU_TYPE_PLA, PLA_EXTRA_STATUS, ocp_data);
40
41 - if (tp->udev->speed != USB_SPEED_HIGH)
42 + if (tp->udev->speed >= USB_SPEED_SUPER)
43 r8153b_u1u2en(tp, true);
44 +
45 usb_enable_lpm(tp->udev);
46
47 /* MAC clock speed down */