]> git.baikalelectronics.ru Git - kernel.git/commit
can: c_can: exit c_can_do_tx() early if no frames have been sent
authorDario Binacchi <dariobin@libero.it>
Sat, 7 Aug 2021 13:07:58 +0000 (15:07 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Thu, 19 Aug 2021 13:07:05 +0000 (15:07 +0200)
commit6cf94c83adaafb471b373c4077d36cf99fcdf618
tree5311731f7a10922d5c7793f7fb375198ae556fe1
parentda72fa931283b645ea109242f74ed3771e2892ff
can: c_can: exit c_can_do_tx() early if no frames have been sent

The c_can_poll() handles RX/TX events unconditionally. It may therefore
happen that c_can_do_tx() is called unnecessarily because the interrupt
was triggered by the reception of a frame. In these cases, we avoid to
execute unnecessary statements and exit immediately.

Link: https://lore.kernel.org/r/20210807130800.5246-3-dariobin@libero.it
Signed-off-by: Dario Binacchi <dariobin@libero.it>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/c_can/c_can_main.c