can: etas_es58x: replace es58x_device::rx_max_packet_size by usb_maxpacket()
authorVincent Mailhol <mailhol.vincent@wanadoo.fr>
Sat, 11 Jun 2022 16:20:36 +0000 (01:20 +0900)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Sat, 11 Jun 2022 20:45:48 +0000 (22:45 +0200)
The field rx_max_packet_size of struct es58x_device in nothing else
than usb_endpoint_descriptor::wMaxPacketSize and can be easily
retrieved using usb_maxpacket(). Also, rx_max_packet_size being used a
single time, there is no merit to cache it locally.

Remove es58x_device::rx_max_packet_size and rely on usb_maxpacket()
instead.

Link: https://lore.kernel.org/all/20220611162037.1507-2-mailhol.vincent@wanadoo.fr
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/etas_es58x/es58x_core.c
drivers/net/can/usb/etas_es58x/es58x_core.h

index 2d73ebbf38364b7320760fdf22f2e98708a349f8..7353745f92d764567e51539faf4f0d06d8d41857 100644 (file)
@@ -1707,7 +1707,7 @@ static int es58x_alloc_rx_urbs(struct es58x_device *es58x_dev)
 {
        const struct device *dev = es58x_dev->dev;
        const struct es58x_parameters *param = es58x_dev->param;
-       size_t rx_buf_len = es58x_dev->rx_max_packet_size;
+       u16 rx_buf_len = usb_maxpacket(es58x_dev->udev, es58x_dev->rx_pipe);
        struct urb *urb;
        u8 *buf;
        int i;
@@ -1739,7 +1739,7 @@ static int es58x_alloc_rx_urbs(struct es58x_device *es58x_dev)
                dev_err(dev, "%s: Could not setup any rx URBs\n", __func__);
                return ret;
        }
-       dev_dbg(dev, "%s: Allocated %d rx URBs each of size %zu\n",
+       dev_dbg(dev, "%s: Allocated %d rx URBs each of size %u\n",
                __func__, i, rx_buf_len);
 
        return ret;
@@ -2223,7 +2223,6 @@ static struct es58x_device *es58x_init_es58x_dev(struct usb_interface *intf,
                                             ep_in->bEndpointAddress);
        es58x_dev->tx_pipe = usb_sndbulkpipe(es58x_dev->udev,
                                             ep_out->bEndpointAddress);
-       es58x_dev->rx_max_packet_size = le16_to_cpu(ep_in->wMaxPacketSize);
 
        return es58x_dev;
 }
index e5033cb5e6959f53e52c562cc5f289a59a238baa..512c5b7a1cfa44c0db4fd179f009a65ba9da7751 100644 (file)
@@ -380,7 +380,6 @@ struct es58x_operators {
  * @timestamps: a temporary buffer to store the time stamps before
  *     feeding them to es58x_can_get_echo_skb(). Can only be used
  *     in RX branches.
- * @rx_max_packet_size: Maximum length of bulk-in URB.
  * @num_can_ch: Number of CAN channel (i.e. number of elements of @netdev).
  * @opened_channel_cnt: number of channels opened. Free of race
  *     conditions because its two users (net_device_ops:ndo_open()
@@ -414,7 +413,6 @@ struct es58x_device {
 
        u64 timestamps[ES58X_ECHO_BULK_MAX];
 
-       u16 rx_max_packet_size;
        u8 num_can_ch;
        u8 opened_channel_cnt;