]> git.baikalelectronics.ru Git - kernel.git/commitdiff
can: peak_usb: pcan_usb_fd_decode_status(): fix back to ERROR_ACTIVE state notification
authorStephane Grosjean <s.grosjean@peak-system.com>
Wed, 29 Sep 2021 14:21:10 +0000 (16:21 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 27 Oct 2021 07:54:26 +0000 (09:54 +0200)
commit 3d031abc7e7249573148871180c28ecedb5e27df upstream.

This corrects the lack of notification of a return to ERROR_ACTIVE
state for USB - CANFD devices from PEAK-System.

Fixes: ed9c60b42979 ("can: peak_usb: add support for PEAK new CANFD USB adapters")
Link: https://lore.kernel.org/all/20210929142111.55757-1-s.grosjean@peak-system.com
Cc: stable@vger.kernel.org
Signed-off-by: Stephane Grosjean <s.grosjean@peak-system.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/can/usb/peak_usb/pcan_usb_fd.c

index 96bbdef672bc9d5559e4959947e1b12d272455db..571d9b0bfe518459b7651797d988df89b63d2099 100644 (file)
@@ -551,11 +551,10 @@ static int pcan_usb_fd_decode_status(struct pcan_usb_fd_if *usb_if,
        } else if (sm->channel_p_w_b & PUCAN_BUS_WARNING) {
                new_state = CAN_STATE_ERROR_WARNING;
        } else {
-               /* no error bit (so, no error skb, back to active state) */
-               dev->can.state = CAN_STATE_ERROR_ACTIVE;
+               /* back to (or still in) ERROR_ACTIVE state */
+               new_state = CAN_STATE_ERROR_ACTIVE;
                pdev->bec.txerr = 0;
                pdev->bec.rxerr = 0;
-               return 0;
        }
 
        /* state hasn't changed */