[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANEJEGu6q+JNbeX9=h1NQHYQCm4xevua=84oVnKgR8jmUMQnTQ@mail.gmail.com>
Date: Fri, 19 Feb 2021 07:43:28 +0000
From: Grant Grundler <grundler@...omium.org>
To: Oliver Neukum <oneukum@...e.com>
Cc: netdev <netdev@...r.kernel.org>,
Grant Grundler <grundler@...omium.org>,
Andrew Lunn <andrew@...n.ch>,
Hayes Wang <hayeswang@...ltek.com>,
Jakub Kicinski <kuba@...nel.org>,
Roland Dreier <roland@...nel.org>, davem@...emloft.org,
nic_swsd <nic_swsd@...ltek.com>
Subject: Re: [PATCHv3 3/3] CDC-NCM: record speed in status method
Oliver,
Can you include a 4th patch in the series to bring cdc_ether driver in
line with the cdc_ncm behavior?
I apologize for not including the patch inline - but it's late and I
don't want to fight with gmail at this point. Patch is attached. Not
tested.
cheers,
grant
On Thu, Feb 18, 2021 at 10:21 AM Oliver Neukum <oneukum@...e.com> wrote:
>
> The driver has a status method for receiving speed updates.
> The framework, however, had support functions only for devices
> that reported their speed upon an explicit query over a MDIO
> interface.
> CDC_NCM however gets direct notifications from the device.
> As new support functions have become available, we shall now
> record such notifications and tell the usbnet framework
> to make direct use of them without going through the PHY layer.
>
> v2: rebased on upstream
> v3: changed variable names
>
> Signed-off-by: Oliver Neukum <oneukum@...e.com>
> Tested-by: Roland Dreier <roland@...nel.org>
> ---
> drivers/net/usb/cdc_ncm.c | 23 +----------------------
> 1 file changed, 1 insertion(+), 22 deletions(-)
>
> diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
> index 0d26cbeb6e04..74c1a86b1a71 100644
> --- a/drivers/net/usb/cdc_ncm.c
> +++ b/drivers/net/usb/cdc_ncm.c
> @@ -1829,30 +1829,9 @@ cdc_ncm_speed_change(struct usbnet *dev,
> uint32_t rx_speed = le32_to_cpu(data->DLBitRRate);
> uint32_t tx_speed = le32_to_cpu(data->ULBitRate);
>
> - /* if the speed hasn't changed, don't report it.
> - * RTL8156 shipped before 2021 sends notification about every 32ms.
> - */
> - if (dev->rx_speed == rx_speed && dev->tx_speed == tx_speed)
> - return;
> -
> + /* RTL8156 shipped before 2021 sends notification about every 32ms. */
> dev->rx_speed = rx_speed;
> dev->tx_speed = tx_speed;
> -
> - /*
> - * Currently the USB-NET API does not support reporting the actual
> - * device speed. Do print it instead.
> - */
> - if ((tx_speed > 1000000) && (rx_speed > 1000000)) {
> - netif_info(dev, link, dev->net,
> - "%u mbit/s downlink %u mbit/s uplink\n",
> - (unsigned int)(rx_speed / 1000000U),
> - (unsigned int)(tx_speed / 1000000U));
> - } else {
> - netif_info(dev, link, dev->net,
> - "%u kbit/s downlink %u kbit/s uplink\n",
> - (unsigned int)(rx_speed / 1000U),
> - (unsigned int)(tx_speed / 1000U));
> - }
> }
>
> static void cdc_ncm_status(struct usbnet *dev, struct urb *urb)
> --
> 2.26.2
>
View attachment "0001-net-cdc_ether-record-speed-in-status-method.patch" of type "text/x-patch" (3555 bytes)
Powered by blists - more mailing lists