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.
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
sources
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.