RTEMS | can: add support for SJA1000 CAN controller (!1183)

Pavel Pisa (@ppisa) gitlab at rtems.org
Fri Apr 3 16:27:12 UTC 2026




Pavel Pisa commented: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1183#note_147971


Thanks for the work on this project. Due to problems identified on OpenCores SJA100 it took much more effort than expected.

There is our FD frames tolerant fork of OpenCores SJA1000

https://gitlab.fel.cvut.cz/canbus/zynq/sja1000-fdtol

It does not block the bus by sending error frames when CAN FD frames are sent between other FD capable controllers.

There is a fix of [bsp: fix: shifted data bytes location in valid frame after previous error](https://gitlab.fel.cvut.cz/canbus/zynq/sja1000-fdtol/-/commit/878a9ebb481b1ecadf2de25b893147b30872b517) on our fixup branch.

Due to troubles with OpenCores implementation, we have setup old Athlon based PC with parallel PCI slots and confirmed driver and RTEMS functionality against four genuine NXP SJA1000 chips on Kvaser PCICanQ card.

The SJA1000 support can be interesting even for RTEMS port to Espressif ESP32 chips, most of them has CAN controller included which is based on OpenCores SJA1000, some of the first ones even with its specific problems. The variant on ESP32C3 and ESP32C6 should have most of problems fixed.

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1183#note_147971
You're receiving this email because of your account on gitlab.rtems.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20260403/47b1bb2e/attachment.htm>


More information about the bugs mailing list