3436c93387
A growing number of CAN controllers do not have support for individual RX hardware filters based on the Remote Transmission Request (RTR) bit. This leads to various work-arounds on the driver level mixing hardware and software filtering. As the use of RTR frames is discouraged by CAN in Automation (CiA) - and not even supported by newer standards, e.g. CAN FD - this often leads to unnecessary overhead, added complexity, and worst-case to non-portable behavior between various CAN controller drivers. Instead, move to a simpler approach where the ability to accept/reject RTR frames is globally configured via Kconfig. By default, all incoming RTR frames are rejected at the driver level, a setting which can be supported in hardware by most in-tree CAN controllers drivers. Legacy applications or protocol implementations, where RTR reception is required, can now select CONFIG_CAN_ACCEPT_RTR to accept incoming RTR frames matching added CAN filters. These applications or protocols will need to distinguish between RTR and data frames in their respective CAN RX frame handling routines. Signed-off-by: Henrik Brix Andersen <hebad@vestas.com> |
||
---|---|---|
.. | ||
bindesc/definition | ||
canbus/isotp | ||
debug | ||
dfu | ||
dsp | ||
edac | ||
emul | ||
fs | ||
input | ||
ipc | ||
jwt | ||
llext | ||
logging | ||
mem_mgmt | ||
mgmt | ||
modbus | ||
modem | ||
openthread | ||
pm | ||
portability | ||
rtio/rtio_api | ||
sd | ||
settings | ||
shell | ||
sip_svc | ||
storage | ||
testsuite/fff_fake_contexts | ||
tracing/tracing_api | ||
usb | ||
zbus |