[PATCH v2 0/3] Add Qualcomm CAMNOC ICC provider

From: Atanas Filipov

Date: Wed Aug 19 2026 - 05:32:29 EST


This series adds a device tree binding and driver for the Qualcomm
Camera Network-on-Chip (CAMNOC) interconnect provider for SM8250.

CAMNOC is the internal AXI interconnect within the camera subsystem.
Multiple camera sub-devices (IFE, JPEG, BPS, IPE, etc.) share
CAM_CC_CAMNOC_AXI_CLK. Direct clk_set_rate() calls from each consumer
cause a last-writer-wins race. This series introduces a lightweight ICC
provider that aggregates bandwidth votes from all consumers and applies
a single clk_set_rate() call.

Changes since v1:
- dt-bindings: add all SM8250 CAMNOC master port IDs to qcom,camnoc.h
(IFE 0/1, IFE Lite 0-4, BPS, IPE 0/1, JPEG, JPEG DMA, CDM, FD, SBI,
ICP) with a short comment per group (Dmitry Baryshkov)
- dt-bindings: add IFE simple consumer example alongside the JPEG
OPP-based example; clarify opp-hz and opp-peak-kBps semantics in
comments; fix maintainer email; align provider node name with DTS
- driver: register all SM8250 CAMNOC master nodes

Atanas Filipov (3):
dt-bindings: interconnect: Add Qualcomm CAMNOC ICC binding
interconnect: qcom: Add CAMNOC interconnect provider driver
arm64: dts: qcom: sm8250: Add CAMNOC ICC provider node

.../bindings/interconnect/qcom,camnoc.yaml | 124 ++++++++
arch/arm64/boot/dts/qcom/sm8250.dtsi | 8 +
drivers/interconnect/qcom/Kconfig | 10 +
drivers/interconnect/qcom/Makefile | 2 +
drivers/interconnect/qcom/qcom-camnoc.c | 279 ++++++++++++++++++
.../dt-bindings/interconnect/qcom,camnoc.h | 52 ++++
6 files changed, 475 insertions(+)
create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,camnoc.yaml
create mode 100644 drivers/interconnect/qcom/qcom-camnoc.c
create mode 100644 include/dt-bindings/interconnect/qcom,camnoc.h


base-commit: 9e970952a9503d6ab471a2fea4c10b6a2785406f
--
2.34.1