drivers/firmware/arm_scmi/transports

Arm SCMI firmware transport drivers (mailbox, SMC, OP-TEE, virtio)

Arm SCMI is the standardized protocol that operating systems on Arm SoCs use to ask secure firmware for things like clock, power, voltage, and performance management. These transports are the four pipes Linux uses to carry those messages: hardware mailboxes, ARM Secure Monitor Calls, OP-TEE secure-world calls, and a virtio channel for guests running under hypervisors like QNX or KVM.

keep conf=0.93 deploy=medium replacement=none subsystem=firmware category=firmware
93%

recommendation

It should stay in the kernel because these are the four standard ways Linux talks to Arm's System Control and Management Interface firmware on modern Arm SoCs and Arm-based virtual machines. Upstream activity through 2024 (including a refactor that turned the virtio transport into its own module) and continued use by Android, QNX hypervisors, and VirtIO 1.2 SCMI devices show the code is actively maintained and shipping in current hardware and virtualization stacks.

repository signals

6 files
2,269 source lines
18 commits, 5y
+2,488 / −78 lines added / removed, 5y
8 authors, 5y
monthly commits · 2021-04-21 → 2026-04-21 · 18 total · active in 8/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: 0 commits · +0 −0 2023-04: 0 commits · +0 −0 2023-05: 0 commits · +0 −0 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: 1 commit · +4 −4 2024-08: 7 commits · +2,426 −20 2024-09: 0 commits · +0 −0 2024-10: 4 commits · +38 −27 2024-11: 0 commits · +0 −0 2024-12: 1 commit · +3 −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: 1 commit · +1 −1 2025-08: 1 commit · +3 −0 2025-09: 1 commit · +3 −4 2025-10: 0 commits · +0 −0 2025-11: 0 commits · +0 −0 2025-12: 2 commits · +10 −22 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. docs.oasis-open.org

    VirtIO 1.2 defines an SCMI device type and queue model, showing the virtio transport is a current standardized VM use case rather than legacy-only.

  2. android.googlesource.com

    Current kernel DT binding documents mailbox, SMC, virtio, and OP-TEE SCMI compatibles, indicating these transports remain supported for contemporary Arm platforms.

  3. qnx.com

    QNX Hypervisor documentation published in 2026 documents a virtio-scmi virtual device, showing ongoing present-day deployment in virtualization stacks.

  4. lists.infradead.org

    Upstream patch series in 2024 converted SCMI virtio transport into a standalone driver/module, evidence of recent subsystem investment rather than removal.

codex reasoning notes (technical)

Real driver directory: contains four transport drivers (mailbox/smc/optee/virtio) with module driver entry points, confirmed by local shell inspection. Local git log tool showed steady upstream work from 2024-08-13 through 2026-01-07 by multiple authors, so it is active. I attempted lore-style evidence via web search on public kernel archives; searches found active transport-enablement patch threads and no removal/deprecation thread hits. URLs were obtained via web search/open for OASIS virtio, Android kernel arm,scmi.yaml, QNX virtio-scmi docs, and linux-arm-kernel archive; shell was used for local file inspection and git history.