drivers/media/cec/platform/cec-gpio

Generic GPIO bit-banged HDMI CEC adapter

A software implementation of the HDMI Consumer Electronics Control protocol that bit-bangs the CEC line over an ordinary GPIO pin, used by embedded boards and single-board computers (such as some Raspberry Pi-class designs) whose HDMI output lacks a dedicated CEC controller. It lets those devices send and receive remote-control and power commands to TVs over HDMI.

keep-annotate conf=0.78 deploy=low replacement=none subsystem=media category=media-other
78%

recommendation

Worth keeping but documenting its niche role. It is the generic fallback for embedded boards and single-board computers that wire HDMI's Consumer Electronics Control line straight to a GPIO pin rather than using a dedicated CEC controller. Upstream attention is ongoing, including a 2025 fix from Hans Verkuil, and there is no replacement driver since this is the catch-all for custom hardware; removing it would strand legitimate embedded designs.

repository signals

2 files
296 source lines
9 commits, 5y
+40 / −46 lines added / removed, 5y
4 authors, 5y
monthly commits · 2021-04-21 → 2026-04-21 · 9 total · active in 6/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: 0 commits · +0 −0 2022-06: 0 commits · +0 −0 2022-07: 0 commits · +0 −0 2022-08: 0 commits · +0 −0 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: 1 commit · +2 −3 2023-04: 0 commits · +0 −0 2023-05: 0 commits · +0 −0 2023-06: 0 commits · +0 −0 2023-07: 2 commits · +1 −9 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: 1 commit · +1 −1 2024-10: 0 commits · +0 −0 2024-11: 1 commit · +1 −1 2024-12: 1 commit · +4 −3 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: 3 commits · +31 −29 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: 0 commits · +0 −0 2026-03: 0 commits · +0 −0 2026-04: 0 commits · +0 −0

sources

  1. lore.kernel.org

    Functional maintenance continued in 2025 with a driver-specific fix: "media: cec: cec-gpio: reading hpd/5v is allowed to sleep".

  2. cateee.net

    LKDDb identifies CONFIG_CEC_GPIO as a current generic GPIO-based CEC driver, with OF compatible "cec-gpio" present across recent kernel series.

  3. raspberrypi.com

    Current Raspberry Pi hardware documentation lists Raspberry Pi 5 with both HDMI outputs and a 40-pin GPIO header, supporting continued availability of new HDMI-plus-GPIO embedded boards that could use a generic GPIO CEC implementation.

codex reasoning notes (technical)

Kernel source inspection via shell showed this is a real platform driver for the generic OF compatible "cec-gpio", i.e. a bit-banged HDMI CEC adapter over GPIO rather than a vendor-specific chipset driver. lore_file_timeline on drivers/media/cec/platform/cec-gpio/cec-gpio.c showed ongoing upstream attention through 2025, including a real functional fix (not just removal prep), and no removal/deprecation evidence appeared in the returned activity. Web search found LKDDb and Raspberry Pi documentation; from those, I infer the hardware class is still sold new in 2025 but remains niche: custom/embedded HDMI designs and SBC-style deployments rather than broad mass-market PCs. Because it is generic glue for boards lacking dedicated CEC IP, there is no single upstream replacement driver; removal would strand valid embedded use cases. Keep it, but annotate as low-volume/niche hardware.