]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
can: xilinx_can: fix device dropping off bus on RX overrun
authorAnssi Hannula <anssi.hannula@bitwise.fi>
Tue, 7 Feb 2017 11:23:04 +0000 (13:23 +0200)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 1 Mar 2019 13:20:25 +0000 (14:20 +0100)
commita541f5a44c3c6e2ef5a0ee225baf5e9e752d99aa
treedb9158f6b0f46ef34226f3b621e086e0b732d3cf
parent95efd400d4038b7e3beda82ce3a148248da436a2
can: xilinx_can: fix device dropping off bus on RX overrun

BugLink: http://bugs.launchpad.net/bugs/1814813
commit 2574fe54515ed3487405de329e4e9f13d7098c10 upstream.

The xilinx_can driver performs a software reset when an RX overrun is
detected. This causes the device to enter Configuration mode where no
messages are received or transmitted.

The documentation does not mention any need to perform a reset on an RX
overrun, and testing by inducing an RX overflow also indicated that the
device continues to work just fine without a reset.

Remove the software reset.

Tested with the integrated CAN on Zynq-7000 SoC.

Fixes: b1201e44f50b ("can: xilinx CAN controller support")
Signed-off-by: Anssi Hannula <anssi.hannula@bitwise.fi>
Cc: <stable@vger.kernel.org>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/net/can/xilinx_can.c