drivers/net/can/sja1000

NXP/Philips SJA1000 stand-alone CAN controllers

A long-running family of stand-alone Controller Area Network (CAN) bus controllers originally designed by Philips and now sold by NXP, used on PCI, PC/104, and embedded carrier boards to give industrial PCs, automotive test rigs, and machine-control systems a CAN 2.0A/B interface. It is the workhorse chip behind many SocketCAN deployments and is still designed into new hardware in the 2020s.

keep conf=0.89 deploy=medium replacement=none subsystem=net category=networking-other
89%

recommendation

It should stay in the kernel because the SJA1000 remains a current, orderable part from NXP and continues to ship on widely used industrial CAN interface boards such as PEAK-System's PCAN-PCI and embeddedTS's TS-CAN1. Upstream activity is healthy, with dozens of substantive commits in recent years and patches still landing on linux-can in 2026. Newer CAN controllers like M_CAN are different silicon and would not cover the installed base.

repository signals

14 files
5,335 source lines
59 commits, 5y
+418 / −307 lines added / removed, 5y
32 authors, 5y
monthly commits · 2021-04-21 → 2026-04-21 · 59 total · active in 28/61 months
2021 2022 2023 2024 2025 2026 2021-04: 0 commits · +0 −0 2021-05: 0 commits · +0 −0 2021-06: 3 commits · +71 −48 2021-07: 0 commits · +0 −0 2021-08: 0 commits · +0 −0 2021-09: 0 commits · +0 −0 2021-10: 1 commit · +4 −5 2021-11: 1 commit · +6 −1 2021-12: 4 commits · +12 −14 2022-01: 0 commits · +0 −0 2022-02: 0 commits · +0 −0 2022-03: 1 commit · +4 −5 2022-04: 0 commits · +0 −0 2022-05: 1 commit · +0 −11 2022-06: 0 commits · +0 −0 2022-07: 7 commits · +57 −26 2022-08: 2 commits · +2 −6 2022-09: 0 commits · +0 −0 2022-10: 0 commits · +0 −0 2022-11: 2 commits · +7 −5 2022-12: 0 commits · +0 −0 2023-01: 8 commits · +115 −39 2023-02: 0 commits · +0 −0 2023-03: 0 commits · +0 −0 2023-04: 0 commits · +0 −0 2023-05: 2 commits · +4 −8 2023-06: 2 commits · +39 −7 2023-07: 4 commits · +5 −11 2023-08: 0 commits · +0 −0 2023-09: 1 commit · +1 −1 2023-10: 2 commits · +8 −2 2023-11: 0 commits · +0 −0 2023-12: 0 commits · +0 −0 2024-01: 0 commits · +0 −0 2024-02: 0 commits · +0 −0 2024-03: 0 commits · +0 −0 2024-04: 1 commit · +1 −0 2024-05: 1 commit · +1 −2 2024-06: 0 commits · +0 −0 2024-07: 0 commits · +0 −0 2024-08: 0 commits · +0 −0 2024-09: 2 commits · +3 −3 2024-10: 0 commits · +0 −0 2024-11: 1 commit · +39 −28 2024-12: 1 commit · +3 −12 2025-01: 0 commits · +0 −0 2025-02: 0 commits · +0 −0 2025-03: 0 commits · +0 −0 2025-04: 1 commit · +1 −1 2025-05: 1 commit · +1 −1 2025-06: 0 commits · +0 −0 2025-07: 2 commits · +2 −2 2025-08: 0 commits · +0 −0 2025-09: 1 commit · +7 −7 2025-10: 1 commit · +0 −1 2025-11: 1 commit · +2 −2 2025-12: 0 commits · +0 −0 2026-01: 3 commits · +13 −49 2026-02: 2 commits · +10 −10 2026-03: 0 commits · +0 −0 2026-04: 0 commits · +0 −0

sources

  1. lore.kernel.org

    Upstream work is still active in 2026; this file received a functional net-next patch changing SJA1000 error-state handling.

  2. nxp.com

    NXP still listed the SJA1000T product as Active, indicating the controller family was still an orderable/current product in 2025-2026.

  3. peak-system.com

    PEAK-System still marketed PCAN-PCI hardware using the NXP SJA1000 controller, showing ongoing real hardware deployments around this driver family.

  4. docs.embeddedts.com

    embeddedTS still documented the TS-CAN1 board and its use of the SJA1000 with Linux SocketCAN, supporting present-day embedded/industrial deployment evidence.

codex reasoning notes (technical)

Recommendation is keep: static history already shows 55 substantive commits in 5y, and lore_activity on drivers/net/can/sja1000/sja1000.c returned 2026 linux-can/netdev patches, so this is maintained rather than abandoned. Web search found NXP's official product page marking SJA1000T Active, plus current vendor pages/manuals for PEAK PCAN-PCI and embeddedTS TS-CAN1 using SJA1000, so hardware is still sold for industrial/embedded niches. No natural in-tree replacement covers the same installed hardware base; newer CAN controllers such as m_can are different silicon, not drop-in replacements. URL provenance: lore URL from mcp__lore_http__.lore_activity; vendor URLs from web.search_query results.