nuttx/drivers/can
Karel Kočí aa3cf8cb3a nuttx/can: report error and not EOF at the empty FIFO
The empty FIFO can happen only in two cases. Either there is some
inconsistency that made rx_sem ready but buffer is empty (that might
happen if multiple reads are blocked in parallel, or just due to the bug
in the logic), or if close is used. Until now the 0 would be returned
and thus EOF. The error is not EOF and actually it is still possible to
read afterwards. Thus we for sure should not signal EOF for the first
cause. The second cause for close matches the behavior that is expressed
even on glibc for some file descriptors (the waiting read will commonly
get error EINVAL there). We can't decide on the real cause of this
situation and thus we always report EIO error and thus generic
input/output error.

Signed-off-by: Karel Kočí <kkoci@elektroline.cz>
2025-11-05 20:45:05 +08:00
..
can.c nuttx/can: report error and not EOF at the empty FIFO 2025-11-05 20:45:05 +08:00
can_common.c drivers/can: move CAN utils to CAN common files 2025-05-14 10:30:25 -03:00
can_sender.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
CMakeLists.txt drivers/can: move CAN utils to CAN common files 2025-05-14 10:30:25 -03:00
ctucanfd.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
ctucanfd_pci.c drivers/can/ctucanfd_pci.c: refactor to use netdev_uperhalf 2025-10-01 11:36:26 +08:00
Kconfig drivers/can/kvaser_pci.c: configure number of passes in interrupt handler 2025-08-22 15:34:38 +08:00
kvaser_pci.c drivers/can/kvaser_pci.c: refactor to use netdev_upperhalf 2025-10-08 12:00:06 +02:00
Make.defs drivers/can: move CAN utils to CAN common files 2025-05-14 10:30:25 -03:00
mcp2515.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
mcp2515.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
sja1000.c can/sja100: leave critical section properly 2024-11-15 18:24:51 +08:00
sja1000.h drivers/can: add Kvaser PCI card driver (qemu only) 2024-12-13 11:19:22 +08:00