drivers/misc/altera-stapl

Altera Jam STAPL FPGA programming engine

An in-kernel interpreter for Altera's Jam STAPL bytecode format, used to load firmware into Altera (now Intel) FPGAs and CPLDs over JTAG. Its main real-world consumer is NetUP's PCIe DVB/CI broadcast-headend cards driven by the cx23885 media driver, which use it to program the on-board FPGA at startup.

keep-annotate conf=0.76 last_sold=2025 deploy=low replacement=none subsystem=misc category=firmware
76%

recommendation

Worth keeping but documenting its niche, because the code is small, low-churn, and still selected by the supported cx23885 media driver for NetUP DVB/CI cards that are still sold in 2025. There is no in-tree replacement, and Altera/Intel FPGA programming itself remains a live workflow, so removal would break a small but real user base. A short note clarifying that it exists primarily to serve NetUP-style broadcast hardware would help future maintainers understand why it stays.

repository signals

8 files
3,804 source lines
7 commits, 5y
+39 / −60 lines added / removed, 5y
6 authors, 5y
monthly commits · 2021-04-21 → 2026-04-21 · 7 total · active in 5/61 months
2021 2022 2023 2024 2025 2026 2021-04: 0 commits · +0 −0 2021-05: 0 commits · +0 −0 2021-06: 0 commits · +0 −0 2021-07: 0 commits · +0 −0 2021-08: 0 commits · +0 −0 2021-09: 0 commits · +0 −0 2021-10: 0 commits · +0 −0 2021-11: 0 commits · +0 −0 2021-12: 0 commits · +0 −0 2022-01: 0 commits · +0 −0 2022-02: 0 commits · +0 −0 2022-03: 0 commits · +0 −0 2022-04: 0 commits · +0 −0 2022-05: 1 commit · +16 −40 2022-06: 0 commits · +0 −0 2022-07: 0 commits · +0 −0 2022-08: 1 commit · +4 −4 2022-09: 0 commits · +0 −0 2022-10: 0 commits · +0 −0 2022-11: 0 commits · +0 −0 2022-12: 0 commits · +0 −0 2023-01: 0 commits · +0 −0 2023-02: 0 commits · +0 −0 2023-03: 0 commits · +0 −0 2023-04: 0 commits · +0 −0 2023-05: 1 commit · +7 −2 2023-06: 0 commits · +0 −0 2023-07: 0 commits · +0 −0 2023-08: 0 commits · +0 −0 2023-09: 0 commits · +0 −0 2023-10: 0 commits · +0 −0 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: 0 commits · +0 −0 2024-05: 0 commits · +0 −0 2024-06: 0 commits · +0 −0 2024-07: 0 commits · +0 −0 2024-08: 0 commits · +0 −0 2024-09: 0 commits · +0 −0 2024-10: 1 commit · +1 −1 2024-11: 0 commits · +0 −0 2024-12: 0 commits · +0 −0 2025-01: 0 commits · +0 −0 2025-02: 0 commits · +0 −0 2025-03: 0 commits · +0 −0 2025-04: 0 commits · +0 −0 2025-05: 0 commits · +0 −0 2025-06: 0 commits · +0 −0 2025-07: 0 commits · +0 −0 2025-08: 0 commits · +0 −0 2025-09: 0 commits · +0 −0 2025-10: 0 commits · +0 −0 2025-11: 0 commits · +0 −0 2025-12: 0 commits · +0 −0 2026-01: 0 commits · +0 −0 2026-02: 3 commits · +11 −13 2026-03: 0 commits · +0 −0 2026-04: 0 commits · +0 −0

sources

  1. git.kernel.org

    The directory is a real kernel module: CONFIG_ALTERA_STAPL is a tristate 'Altera FPGA firmware download module' under drivers/misc/altera-stapl.

  2. git.kernel.org

    The cx23885 media driver selects ALTERA_STAPL, showing this code is still wired into supported NetUP-style PCIe DVB/CI hardware support rather than being an unused standalone tool.

  3. git.kernel.org

    Upstream history is sparse and mostly minor/treewide fixes in recent years, with no obvious sustained development burst or visible removal campaign from the path history.

  4. cateee.net

    LKDDb shows CONFIG_ALTERA_STAPL has remained present across many kernel series through current HEAD-era builds, indicating it is still shipped upstream.

  5. netup.tv

    NetUP still markets a new PCIe DVB/CI card with open-source Linux drivers and FPGA firmware, consistent with this driver's surviving deployment niche in broadcast/headend equipment.

  6. intel.com

    Current 2025 Intel FPGA documentation still describes download-cable based FPGA programming as a live workflow, so the broader Altera/Intel FPGA programming use case is not obsolete.

  7. intel.com

    Intel's current Download Cable II guide shows modern FPGA programming is done with vendor USB download cables, implying no natural in-kernel replacement driver for this niche helper module.

codex reasoning notes (technical)

Local shell inspection (`rg`, `sed`) showed this is an exported helper module for Jam/STAPL FPGA programming, not a non-driver helper library, and local git log showed only sparse recent touches. I could not use lore MCP here and `lei` was unavailable; for upstream-history grounding I therefore used local kernel git history plus canonical kernel.org path/log URLs. Web search produced the LKDDb entry and current Intel/NetUP pages. Overall: niche but still connected to live cx23885/NetUP support, no clear replacement driver, low deployment and low churn justify keep-annotate rather than deprecate/remove.