From: Marc Kleine-Budde Date: Mon, 1 May 2023 16:14:41 +0000 (+0200) Subject: can: at91_can: at91_poll_err(): fold in at91_poll_err_frame() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=864c6f07d3c4a4ed40fca932d9aec17607c6cc96;p=linux.git can: at91_can: at91_poll_err(): fold in at91_poll_err_frame() This is a preparation patch for the cleanup of at91_poll_err(). Fold at91_poll_err_frame() into at91_poll_err() so that it can be easier modified. Link: https://lore.kernel.org/all/20231005-at91_can-rx_offload-v2-17-9987d53600e0@pengutronix.de Signed-off-by: Marc Kleine-Budde --- diff --git a/drivers/net/can/at91_can.c b/drivers/net/can/at91_can.c index 94e9740c80de2..2071011ee8127 100644 --- a/drivers/net/can/at91_can.c +++ b/drivers/net/can/at91_can.c @@ -751,10 +751,18 @@ static int at91_poll_rx(struct net_device *dev, int quota) return received; } -static void at91_poll_err_frame(struct net_device *dev, - struct can_frame *cf, u32 reg_sr) +static int at91_poll_err(struct net_device *dev, int quota, u32 reg_sr) { struct at91_priv *priv = netdev_priv(dev); + struct sk_buff *skb; + struct can_frame *cf; + + if (quota == 0) + return 0; + + skb = alloc_can_err_skb(dev, &cf); + if (unlikely(!skb)) + return 0; /* CRC error */ if (reg_sr & AT91_IRQ_CERR) { @@ -797,21 +805,6 @@ static void at91_poll_err_frame(struct net_device *dev, cf->can_id |= CAN_ERR_PROT | CAN_ERR_BUSERROR; cf->data[2] |= CAN_ERR_PROT_BIT; } -} - -static int at91_poll_err(struct net_device *dev, int quota, u32 reg_sr) -{ - struct sk_buff *skb; - struct can_frame *cf; - - if (quota == 0) - return 0; - - skb = alloc_can_err_skb(dev, &cf); - if (unlikely(!skb)) - return 0; - - at91_poll_err_frame(dev, cf, reg_sr); netif_receive_skb(skb);