From: Vikram Sharma <vikramsa@xxxxxxxxxxxxxxxx> QCS8300 is a Qualcomm SoC. This series adds bindings and devicetree and driver changes to bring up CSIPHY, TPG, CSID, VFE/RDI interfaces in QCS8300. QCS8300 provides - 2 x VFE, 3 RDI per VFE - 5 x VFE Lite, 6 RDI per VFE - 2 x CSID - 5 x CSID Lite - 3 x TPG - 3 x CSIPHY Changes compared to v1: - Changed the order for register entries in bindings - Krzysztof - Changed the naming for interrupts for consistency - Krzysztof - Combined separate series for driver and dtsi into one. - Rebased on top of latest version of sa8775p camss patches. - Link to v1: Driver: https://lore.kernel.org/all/20250214095611.2498950-1-quic_vikramsa@xxxxxxxxxxx DTSI: https://lore.kernel.org/all/20250214094747.2483058-1-quic_vikramsa@xxxxxxxxxxx Dependencies: https://lore.kernel.org/all/20250703171938.3606998-1-quic_vikramsa@xxxxxxxxxxx Driver side changes for TPG will be submitted as a separate series which will be rebased on top of these patches. TPG Patches: https://lore.kernel.org/all/20250211-sa8775p_tpg-v1-0-3f76c5f8431f@xxxxxxxxxxx/ https://lore.kernel.org/all/20250217-qcs8300_tpg-v1-1-6e0f4dd3ad1f@xxxxxxxxxxx/ Tested with following commands: - media-ctl -d /dev/media0 --reset - yavta --no-query -w '0x009f0903 0' /dev/v4l-subdev0 - media-ctl -d /dev/media0 -V '"msm_tpg0":0[fmt:SRGGB10/1920x1080 field:none]' - media-ctl -d /dev/media0 -V '"msm_csid0":0[fmt:SRGGB10/1920x1080 field:none]' - media-ctl -d /dev/media0 -V '"msm_vfe0_rdi0":0[fmt:SRGGB10/1920x1080 field:none]' - media-ctl -d /dev/media0 -l '"msm_tpg0":1->"msm_csid0":0[1]' - media-ctl -d /dev/media0 -l '"msm_csid0":1->"msm_vfe0_rdi0":0[1]' - yavta --no-query -w '0x009f0903 9' /dev/v4l-subdev0 - yavta -B capture-mplane -n 5 -f SRGGB10P -s 1920x1080 /dev/video0 --capture=7 Used following tools for the sanity check of these changes. - make CHECK_DTBS=y W=1 qcom/qcs8300-ride.dtb - make DT_CHECKER_FLAGS=-m W=1 DT_SCHEMA_FILES=media/qcom,qcs8300-camss.yaml dt_binding_check - Smatch: make CHECK="smatch --full-path" M=drivers/media/platform/qcom/camss/ - Sparse: make C=2 M=drivers/media/platform/qcom/camss/ - make -j32 - checkpatch.pl Vikram Sharma (7): media: dt-bindings: Add qcom,qcs8300-camss compatible arm64: dts: qcom: qcs8300: Add support for camss media: qcom: camss: Add qcs8300 compatible media: qcom: camss: enable csid 690 for qcs8300 media: qcom: camss: enable vfe 690 for qcs8300 media: qcom: camss: Add support for CSIPHY QCS8300 media: qcom: camss: Enumerate resources for QCS8300 .../bindings/media/qcom,qcs8300-camss.yaml | 336 +++++++++++++++ arch/arm64/boot/dts/qcom/qcs8300.dtsi | 171 ++++++++ .../platform/qcom/camss/camss-csid-gen3.c | 5 +- .../qcom/camss/camss-csiphy-3ph-1-0.c | 2 + .../platform/qcom/camss/camss-vfe-gen3.c | 4 +- drivers/media/platform/qcom/camss/camss-vfe.c | 2 + drivers/media/platform/qcom/camss/camss.c | 401 ++++++++++++++++++ drivers/media/platform/qcom/camss/camss.h | 1 + 8 files changed, 919 insertions(+), 3 deletions(-) create mode 100644 Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml -- 2.25.1