[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_Jsq+NLhw4mfNd7=4ADz63G15WATPpGbz3HxxV1QJqPVQwjw@mail.gmail.com>
Date: Tue, 25 Feb 2020 12:55:08 -0600
From: Rob Herring <robh+dt@...nel.org>
To: Jordan Crouse <jcrouse@...eaurora.org>
Cc: linux-arm-msm <linux-arm-msm@...r.kernel.org>,
Sharat Masetty <smasetty@...eaurora.org>,
John Stultz <john.stultz@...aro.org>,
Sean Paul <sean@...rly.run>, devicetree@...r.kernel.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
dri-devel <dri-devel@...ts.freedesktop.org>,
Rob Clark <robdclark@...il.com>,
David Airlie <airlied@...ux.ie>,
Mark Rutland <mark.rutland@....com>,
freedreno <freedreno@...ts.freedesktop.org>,
Daniel Vetter <daniel@...ll.ch>
Subject: Re: [PATCH v2 2/4] dt-bindings: display: msm: Add required dma-range property
On Thu, Feb 20, 2020 at 12:27 PM Jordan Crouse <jcrouse@...eaurora.org> wrote:
>
> The GMU node now requires a specific dma-range property so that the driver
s/dma-range/dma-ranges/ here and the subject.
> can use the DMA API to do the few memory allocations required by the GMU.
> This sets the IOMMU iova allocator to match the 'uncached' part of the
> GMU virtual address space.
Sounds like a bunch of kernel things and this is a binding.
>
> v2: Fix the dma-ranges tag. The third pair should be the size.
>
> Signed-off-by: Jordan Crouse <jcrouse@...eaurora.org>
> ---
>
> Documentation/devicetree/bindings/display/msm/gmu.yaml | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/display/msm/gmu.yaml b/Documentation/devicetree/bindings/display/msm/gmu.yaml
> index 776ff92..d11a073 100644
> --- a/Documentation/devicetree/bindings/display/msm/gmu.yaml
> +++ b/Documentation/devicetree/bindings/display/msm/gmu.yaml
> @@ -83,6 +83,13 @@ properties:
> Phandle to the OPP table for the available GMU frequencies. Refer to
> ../../opp/opp.txt for more information.
>
> + dma-ranges:
dma-ranges is a bus property and doesn't go in device nodes (that
don't implement a bus like PCI host for example). This would not have
even worked a few kernel versions back because the kernel would only
start looking for dma-ranges in a parent node.
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description:
> + Describe the dma-address range for the device. This should always
> + describe the range between 0x60000000 and 0x80000000 which represents
If this is always the region, then why does it need to be in DT? Just
set your dma_mask which drivers should be doing if they want anything
other than (2^32 - 1). dma-ranges sets the bus_dma_mask.
> + the uncached region of the GMU address space.
> +
> required:
> - compatible
> - reg
> @@ -95,6 +102,7 @@ required:
> - power-domain-names
> - iommus
> - operating-points-v2
> + - dma-ranges
>
> examples:
> - |
> @@ -127,4 +135,6 @@ examples:
>
> iommus = <&adreno_smmu 5>;
> operating-points-v2 = <&gmu_opp_table>;
> +
> + dma-ranges = <0 0x60000000 0 0x60000000 0 0x20000000>;
> };
> --
> 2.7.4
>
Powered by blists - more mailing lists