Message ID | 20230307023507.13306-2-yong.wu@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Adjust the dma-ranges for MTK IOMMU | expand |
On 07/03/2023 03:34, Yong Wu wrote: > After commit f1ad5338a4d5 ("of: Fix "dma-ranges" handling for bus > controllers"), the dma-ranges of the leaf node doesn't work. Remove > it for vcodec here. > > 1) For mediatek,vcodec-decoder.yaml and mediatek,vcodec-encoder.yaml, > this property is in the leaf node, it is invalid as the above comment. > > Currently there is only mt8195 VENC node has this property in upstream. > Indeed, VENC is affected, but it is not a fatal issue. Originally it > expects its iova range locate at 4GB-8GB. However after that commit, its > expectation doesn't come true, it will fall back to 0-4GB iova and also > could work well. > > 2) For mediatek,vcodec-subdev-decoder.yaml, It already uses parent-child > node, this property works. Instead, MediaTek iommu will control the > masters' iova ranges by the master's larb/port id internally, then the > dma-ranges property is unnecessary for the master's node. > > Cc: Tiffany Lin <tiffany.lin@mediatek.com> > Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> > Cc: Yunfei Dong <yunfei.dong@mediatek.com> > Cc: Mauro Carvalho Chehab <mchehab@kernel.org> > Cc: Matthias Brugger <matthias.bgg@gmail.com> > Signed-off-by: Yong Wu <yong.wu@mediatek.com> > Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> > Acked-by: Rob Herring <robh@kernel.org> Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Regards, Hans > --- > .../devicetree/bindings/media/mediatek,vcodec-decoder.yaml | 5 ----- > .../devicetree/bindings/media/mediatek,vcodec-encoder.yaml | 5 ----- > .../bindings/media/mediatek,vcodec-subdev-decoder.yaml | 7 ------- > 3 files changed, 17 deletions(-) > > diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml > index aa55ca65d6ed..fad59b486d5d 100644 > --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml > +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml > @@ -56,11 +56,6 @@ properties: > List of the hardware port in respective IOMMU block for current Socs. > Refer to bindings/iommu/mediatek,iommu.yaml. > > - dma-ranges: > - maxItems: 1 > - description: | > - Describes the physical address space of IOMMU maps to memory. > - > mediatek,vpu: > $ref: /schemas/types.yaml#/definitions/phandle > description: > diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml > index 0f2ea8d9a10c..a2051b31fa29 100644 > --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml > +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml > @@ -49,11 +49,6 @@ properties: > List of the hardware port in respective IOMMU block for current Socs. > Refer to bindings/iommu/mediatek,iommu.yaml. > > - dma-ranges: > - maxItems: 1 > - description: | > - Describes the physical address space of IOMMU maps to memory. > - > mediatek,vpu: > $ref: /schemas/types.yaml#/definitions/phandle > description: > diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml > index c4f20acdc1f8..290594bc91cc 100644 > --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml > +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml > @@ -76,11 +76,6 @@ properties: > The node of system control processor (SCP), using > the remoteproc & rpmsg framework. > > - dma-ranges: > - maxItems: 1 > - description: | > - Describes the physical address space of IOMMU maps to memory. > - > "#address-cells": > const: 2 > > @@ -203,7 +198,6 @@ required: > - reg > - iommus > - mediatek,scp > - - dma-ranges > - ranges > > if: > @@ -236,7 +230,6 @@ examples: > compatible = "mediatek,mt8192-vcodec-dec"; > mediatek,scp = <&scp>; > iommus = <&iommu0 M4U_PORT_L4_VDEC_MC_EXT>; > - dma-ranges = <0x1 0x0 0x0 0x40000000 0x0 0xfff00000>; > #address-cells = <2>; > #size-cells = <2>; > ranges = <0 0 0 0x16000000 0 0x40000>;
diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml index aa55ca65d6ed..fad59b486d5d 100644 --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-decoder.yaml @@ -56,11 +56,6 @@ properties: List of the hardware port in respective IOMMU block for current Socs. Refer to bindings/iommu/mediatek,iommu.yaml. - dma-ranges: - maxItems: 1 - description: | - Describes the physical address space of IOMMU maps to memory. - mediatek,vpu: $ref: /schemas/types.yaml#/definitions/phandle description: diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml index 0f2ea8d9a10c..a2051b31fa29 100644 --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-encoder.yaml @@ -49,11 +49,6 @@ properties: List of the hardware port in respective IOMMU block for current Socs. Refer to bindings/iommu/mediatek,iommu.yaml. - dma-ranges: - maxItems: 1 - description: | - Describes the physical address space of IOMMU maps to memory. - mediatek,vpu: $ref: /schemas/types.yaml#/definitions/phandle description: diff --git a/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml b/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml index c4f20acdc1f8..290594bc91cc 100644 --- a/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml +++ b/Documentation/devicetree/bindings/media/mediatek,vcodec-subdev-decoder.yaml @@ -76,11 +76,6 @@ properties: The node of system control processor (SCP), using the remoteproc & rpmsg framework. - dma-ranges: - maxItems: 1 - description: | - Describes the physical address space of IOMMU maps to memory. - "#address-cells": const: 2 @@ -203,7 +198,6 @@ required: - reg - iommus - mediatek,scp - - dma-ranges - ranges if: @@ -236,7 +230,6 @@ examples: compatible = "mediatek,mt8192-vcodec-dec"; mediatek,scp = <&scp>; iommus = <&iommu0 M4U_PORT_L4_VDEC_MC_EXT>; - dma-ranges = <0x1 0x0 0x0 0x40000000 0x0 0xfff00000>; #address-cells = <2>; #size-cells = <2>; ranges = <0 0 0 0x16000000 0 0x40000>;