Re: [PATCH v2 01/12] dt-bindings: media: qcom,venus: Add context bank subnodes to common schema
Vikash Garodia <[email protected]> Thu, 6 Aug 2026 15:22:26 +0530
| Newsgroups | org.kernel.vger.linux-media,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.stable |
|---|---|
| Message-ID | <[email protected]> |
On 8/6/2026 2:19 PM, Dmitry Baryshkov wrote: > On Fri, Jul 31, 2026 at 11:52:16PM +0530, Vikash Garodia wrote: >> The VPU issues DMA through several SMMU streams, and the hardware does >> not give every stream the same addressable range. The non-pixel stream >> is restricted to use 0-600MB of IOVA space, while the pixel stream can >> address the full range: >> +-----------------------------------------------------------+ >> | non-pixel stream addressable range (600 MB - 3.5 GB) | >> | 0x25800000 - 0xe0000000 | >> +-----------------------------------------------------------+ >> | pixel stream addressable range (0 - 3.5 GB) | >> | 0x00000000 - 0xe0000000 | >> +-----------------------------------------------------------+ >> A single "iommus" property on the video-codec node puts every stream in >> one IOMMU domain sharing one IOVA allocator, so nothing keeps a >> non-pixel buffer inside the low 600 MB. Once an allocation lands below >> that boundary the hardware faults, which shows up as unhandled SMMU page >> faults and spontaneous reboots: >> https://gitlab.freedesktop.org/drm/msm/-/work_items/100 >> >> >> + dma-ranges: true >> + >> + '#address-cells': >> + const: 2 >> + >> + '#size-cells': >> + const: 2 > > This would conflict with the 32-bit addressed Venus nodes (and it will > also break examples). So both should be just 'true' With "true", i see following comment from sashiko (when ran locally) Without a const constraint, a device tree could specify #address-cells = <1> or a non-empty dma-ranges, and it would silently pass schema validation. The DT bindings guidelines also recommend that cell-count properties have a const constraint matching the hardware. > >> >> +oneOf: >> + - required: >> + - iommus >> + - required: >> + - non-pixel >> + - pixel > > - #address-cells > - #size-cells > - dma-ranges > >> + >> additionalProperties: true >> >> -- >> 2.34.1 >> >