[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201130183308.GB1116146@google.com>
Date: Mon, 30 Nov 2020 10:33:08 -0800
From: William Mcvicker <willmcvicker@...gle.com>
To: Peter Chen <peter.chen@....com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"balbi@...nel.org" <balbi@...nel.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
EJ Hsu <ejh@...dia.com>, stable <stable@...r.kernel.org>
Subject: Re: [PATCH v2 1/5] USB: gadget: f_rndis: fix bitrate for SuperSpeed
and above
On Mon, Nov 30, 2020 at 06:24:40AM +0000, Peter Chen wrote:
> On 20-11-27 15:05:55, Greg Kroah-Hartman wrote:
> > From: Will McVicker <willmcvicker@...gle.com>
> >
> > Align the SuperSpeed Plus bitrate for f_rndis to match f_ncm's ncm_bitrate
> > defined by commit 1650113888fe ("usb: gadget: f_ncm: add SuperSpeed descriptors
> > for CDC NCM").
> >
> > Cc: Felipe Balbi <balbi@...nel.org>
> > Cc: EJ Hsu <ejh@...dia.com>
> > Cc: Peter Chen <peter.chen@....com>
> > Cc: stable <stable@...r.kernel.org>
> > Signed-off-by: Will McVicker <willmcvicker@...gle.com>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
> > ---
> > drivers/usb/gadget/function/f_rndis.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/usb/gadget/function/f_rndis.c b/drivers/usb/gadget/function/f_rndis.c
> > index 9534c8ab62a8..0739b05a0ef7 100644
> > --- a/drivers/usb/gadget/function/f_rndis.c
> > +++ b/drivers/usb/gadget/function/f_rndis.c
> > @@ -87,8 +87,10 @@ static inline struct f_rndis *func_to_rndis(struct usb_function *f)
> > /* peak (theoretical) bulk transfer rate in bits-per-second */
> > static unsigned int bitrate(struct usb_gadget *g)
> > {
> > + if (gadget_is_superspeed(g) && g->speed >= USB_SPEED_SUPER_PLUS)
> > + return 4250000000U;
>
> Is tested value or spec defined value?
>
> > if (gadget_is_superspeed(g) && g->speed == USB_SPEED_SUPER)
> > - return 13 * 1024 * 8 * 1000 * 8;
> > + return 3750000000U;
>
> 13 * 1024 * 8 * 1000 * 8 = 851,968,000, how 3750000000U is calculated?
>
> > else if (gadget_is_dualspeed(g) && g->speed == USB_SPEED_HIGH)
> > return 13 * 512 * 8 * 1000 * 8;
> > else
> > --
> > 2.29.2
> >
>
> --
>
> Thanks,
> Peter Chen
Hi Peter,
Thanks for the reviews! Regarding the updated transfer rates, please refer to
the f_ncm commit email thread by Lorenzo that explains the reasoning behind
these speeds:
https://patchwork.kernel.org/project/linux-usb/patch/20200818165848.4117493-1-lorenzo@google.com/
Thanks,
Will
Powered by blists - more mailing lists