|
Takashi Iwai |
873d5b |
From 44e4439d8f9f8d0e9da767d1f31e7c211081feca Mon Sep 17 00:00:00 2001
|
|
Takashi Iwai |
873d5b |
From: Chunfeng Yun <chunfeng.yun@mediatek.com>
|
|
Takashi Iwai |
873d5b |
Date: Fri, 13 Aug 2021 14:30:49 +0800
|
|
Takashi Iwai |
873d5b |
Subject: [PATCH] usb: mtu3: fix the wrong HS mult value
|
|
Takashi Iwai |
873d5b |
Git-commit: 44e4439d8f9f8d0e9da767d1f31e7c211081feca
|
|
Takashi Iwai |
873d5b |
Patch-mainline: v5.15-rc1
|
|
Takashi Iwai |
873d5b |
References: git-fixes
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
usb_endpoint_maxp() returns actual max packet size, @mult will
|
|
Takashi Iwai |
873d5b |
always be zero, fix it by using usb_endpoint_maxp_mult() instead
|
|
Takashi Iwai |
873d5b |
to get mult.
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
Fixes: 4d79e042ed8b ("usb: mtu3: add support for usb3.1 IP")
|
|
Takashi Iwai |
873d5b |
Cc: stable@vger.kernel.org
|
|
Takashi Iwai |
873d5b |
Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
|
|
Takashi Iwai |
873d5b |
Link: https://lore.kernel.org/r/1628836253-7432-3-git-send-email-chunfeng.yun@mediatek.com
|
|
Takashi Iwai |
873d5b |
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
Takashi Iwai |
873d5b |
Acked-by: Takashi Iwai <tiwai@suse.de>
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
---
|
|
Takashi Iwai |
873d5b |
drivers/usb/mtu3/mtu3_gadget.c | 6 ++----
|
|
Takashi Iwai |
873d5b |
1 file changed, 2 insertions(+), 4 deletions(-)
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
diff --git a/drivers/usb/mtu3/mtu3_gadget.c b/drivers/usb/mtu3/mtu3_gadget.c
|
|
Takashi Iwai |
873d5b |
index 45e7d2e3b04b..a9a65b4bbfed 100644
|
|
Takashi Iwai |
873d5b |
--- a/drivers/usb/mtu3/mtu3_gadget.c
|
|
Takashi Iwai |
873d5b |
+++ b/drivers/usb/mtu3/mtu3_gadget.c
|
|
Takashi Iwai |
873d5b |
@@ -64,14 +64,12 @@ static int mtu3_ep_enable(struct mtu3_ep *mep)
|
|
Takashi Iwai |
873d5b |
u32 interval = 0;
|
|
Takashi Iwai |
873d5b |
u32 mult = 0;
|
|
Takashi Iwai |
873d5b |
u32 burst = 0;
|
|
Takashi Iwai |
873d5b |
- int max_packet;
|
|
Takashi Iwai |
873d5b |
int ret;
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
desc = mep->desc;
|
|
Takashi Iwai |
873d5b |
comp_desc = mep->comp_desc;
|
|
Takashi Iwai |
873d5b |
mep->type = usb_endpoint_type(desc);
|
|
Takashi Iwai |
873d5b |
- max_packet = usb_endpoint_maxp(desc);
|
|
Takashi Iwai |
873d5b |
- mep->maxp = max_packet & GENMASK(10, 0);
|
|
Takashi Iwai |
873d5b |
+ mep->maxp = usb_endpoint_maxp(desc);
|
|
Takashi Iwai |
873d5b |
|
|
Takashi Iwai |
873d5b |
switch (mtu->g.speed) {
|
|
Takashi Iwai |
873d5b |
case USB_SPEED_SUPER:
|
|
Takashi Iwai |
873d5b |
@@ -92,7 +90,7 @@ static int mtu3_ep_enable(struct mtu3_ep *mep)
|
|
Takashi Iwai |
873d5b |
usb_endpoint_xfer_int(desc)) {
|
|
Takashi Iwai |
873d5b |
interval = desc->bInterval;
|
|
Takashi Iwai |
873d5b |
interval = clamp_val(interval, 1, 16) - 1;
|
|
Takashi Iwai |
873d5b |
- mult = (max_packet & GENMASK(12, 11)) >> 11;
|
|
Takashi Iwai |
873d5b |
+ mult = usb_endpoint_maxp_mult(desc) - 1;
|
|
Takashi Iwai |
873d5b |
}
|
|
Takashi Iwai |
873d5b |
break;
|
|
Takashi Iwai |
873d5b |
default:
|
|
Takashi Iwai |
873d5b |
--
|
|
Takashi Iwai |
873d5b |
2.26.2
|
|
Takashi Iwai |
873d5b |
|