On Mon, 26 Oct 2026 11:51:11 +0530, Jayant Shekhar wrote:
DCP platforms place the display pipeline under firmware control, so Linux cannot discover display resources through direct register access. The DRM driver therefore needs device-tree descriptions of the Qualcomm transport wrapper, display topology, IOMMU contexts, and panel connections.
Add bindings for the Qualcomm DCP transport wrapper and VirtIO display subsystem. Document the IPCC power-notify resources, transport and framebuffer IOMMU contexts, firmware-visible IOVA range, INTF graph, and DSI panel connections. The wrapper creates a standard VirtIO-MMIO child after the IPCC power-notify sequence has completed.
Assisted-by: LLM Signed-off-by: Jayant Shekhar jayant.shekhar@oss.qualcomm.com
.../bindings/display/msm/qcom,dcp-dsi.yaml | 79 ++++++++++++ .../devicetree/bindings/display/msm/qcom,dcp.yaml | 123 +++++++++++++++++++ .../bindings/virtio/qcom,dcp-virtio.yaml | 132 +++++++++++++++++++++ 3 files changed, 334 insertions(+)
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/virtio/qcom,dcp-virtio.yaml: iommu-ranges: multiple incompatible types: uint32-array /usr/local/lib/python3.13/dist-packages/dtschema/schemas/iommu/iommu.yaml: iommu-ranges: multiple incompatible types: uint32-matrix Could not decode node virtio@9be8000 property iommu-ranges with value b'\x00\x00\x00\x00\x84\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00'
Traceback (most recent call last): File "/usr/local/bin/dt-validate", line 8, in <module> sys.exit(main()) ~~~~^^ File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb_validate.py", line 443, in main dtb_diagnostics = sg.check_dtb(filename) File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb_validate.py", line 331, in check_dtb dt = self.validator.decode_dtb(f.read(), decode_errors) File "/usr/local/lib/python3.13/dist-packages/dtschema/validator.py", line 631, in decode_dtb return [dtschema.dtb.fdt_unflatten(self, dtb)] ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 591, in fdt_unflatten dt = fdt_scan_node(validator, fdt, '/', offset) File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 320, in fdt_scan_node node = fdt_scan_node(validator, fdt, nodename, offset) File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 320, in fdt_scan_node node = fdt_scan_node(validator, fdt, nodename, offset) File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 312, in fdt_scan_node node_dict = node_props(validator, fdt, nodename, offset) File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 258, in node_props props_dict[p.name] = prop_value(validator, nodename, p) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.13/dist-packages/dtschema/dtb.py", line 185, in prop_value if len(p) / type_format[fmt].size >= min_dim: ~~~~~~~~~~~^^^^^ KeyError: 'uint32-array'
doc reference errors (make refcheckdocs):
See https://patchwork.kernel.org/project/devicetree/patch/20261026-jshekhar-dcp-...
The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch.
If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date:
pip3 install dtschema --upgrade
Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.