forked from Minki/linux
83702f6927
The Janz VMOD-ICAN3 firmware does not support any sort of TX-done notification or interrupt. The driver previously used the hardware loopback to attempt to work around this deficiency, but this caused all sockets to receive all messages, even if CAN_RAW_RECV_OWN_MSGS is off. Using the new function ican3_cmp_echo_skb(), we can drop the loopback messages and return the original skbs. This fixes the issues with CAN_RAW_RECV_OWN_MSGS. A private skb queue is used to store the echo skbs. This avoids the need for any index management. Due to a lack of TX-error interrupts, bus errors are permanently enabled, and are used as a TX-error notification. This is used to drop an echo skb when transmission fails. Bus error packets are not generated if the user has not enabled bus error reporting. Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> |
||
---|---|---|
.. | ||
c_can | ||
cc770 | ||
mscan | ||
sja1000 | ||
softing | ||
usb | ||
at91_can.c | ||
bfin_can.c | ||
dev.c | ||
flexcan.c | ||
janz-ican3.c | ||
Kconfig | ||
Makefile | ||
mcp251x.c | ||
pch_can.c | ||
slcan.c | ||
ti_hecc.c | ||
vcan.c |