diff mbox series

Revert "arm64: dts: juno: add dma-ranges property"

Message ID 20191128154242.1035-1-sudeep.holla@arm.com
State Accepted
Commit 54fb3fe0f211d4729a2551cf9497bd612189af9d
Headers show
Series Revert "arm64: dts: juno: add dma-ranges property" | expand

Commit Message

Sudeep Holla Nov. 28, 2019, 3:42 p.m. UTC
This reverts commit 193d00a2b35ee3353813b4006a18131122087205.

Commit 951d48855d86 ("of: Make of_dma_get_range() work on bus nodes")
reworked the logic such that of_dma_get_range() works correctly
starting from a bus node containing "dma-ranges".

Since on Juno we don't have a SoC level bus node and "dma-ranges" is
present only in the root node, we get the following error:

OF: translation of DMA address(0) to CPU address failed node(/sram@2e000000)
OF: translation of DMA address(0) to CPU address failed node(/uart@7ff80000)
...
OF: translation of DMA address(0) to CPU address failed node(/mhu@2b1f0000)
OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)
OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)
OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

So let's fix it by dropping the "dma-ranges" property for now. We can
add it later with a proper SoC bus node and moving all the devices that
belong there along with the "dma-ranges" if required.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Liviu Dudau <liviu.dudau@arm.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>

---
 arch/arm64/boot/dts/arm/juno-base.dtsi | 1 -
 1 file changed, 1 deletion(-)

-- 
2.17.1

Comments

Robin Murphy Nov. 28, 2019, 3:58 p.m. UTC | #1
On 28/11/2019 3:42 pm, Sudeep Holla wrote:
> This reverts commit 193d00a2b35ee3353813b4006a18131122087205.

> 

> Commit 951d48855d86 ("of: Make of_dma_get_range() work on bus nodes")

> reworked the logic such that of_dma_get_range() works correctly

> starting from a bus node containing "dma-ranges".

> 

> Since on Juno we don't have a SoC level bus node and "dma-ranges" is

> present only in the root node, we get the following error:

> 

> OF: translation of DMA address(0) to CPU address failed node(/sram@2e000000)

> OF: translation of DMA address(0) to CPU address failed node(/uart@7ff80000)

> ...

> OF: translation of DMA address(0) to CPU address failed node(/mhu@2b1f0000)

> OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> 

> So let's fix it by dropping the "dma-ranges" property for now. We can

> add it later with a proper SoC bus node and moving all the devices that

> belong there along with the "dma-ranges" if required.


Acked-by: Robin Murphy <robin.murphy@arm.com>


As mentioned before, this is fine since it doesn't represent any kind of 
device-visible restriction; it was only there for completeness, and 
we've since given in to the assumption that missing "dma-ranges" implies 
a 1:1 mapping anyway.

Thanks,
Robin.

> Cc: Rob Herring <robh+dt@kernel.org>

> Cc: Liviu Dudau <liviu.dudau@arm.com>

> Cc: Robin Murphy <robin.murphy@arm.com>

> Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>

> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>

> ---

>   arch/arm64/boot/dts/arm/juno-base.dtsi | 1 -

>   1 file changed, 1 deletion(-)

> 

> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi

> index 9e3e8ce6adfe..1f3c80aafbd7 100644

> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi

> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi

> @@ -6,7 +6,6 @@

>   	/*

>   	 *  Devices shared by all Juno boards

>   	 */

> -	dma-ranges = <0 0 0 0 0x100 0>;

>   

>   	memtimer: timer@2a810000 {

>   		compatible = "arm,armv7-timer-mem";

>
Sudeep Holla Nov. 28, 2019, 4:40 p.m. UTC | #2
On Thu, Nov 28, 2019 at 03:58:28PM +0000, Robin Murphy wrote:
> On 28/11/2019 3:42 pm, Sudeep Holla wrote:

> > This reverts commit 193d00a2b35ee3353813b4006a18131122087205.

> >

> > Commit 951d48855d86 ("of: Make of_dma_get_range() work on bus nodes")

> > reworked the logic such that of_dma_get_range() works correctly

> > starting from a bus node containing "dma-ranges".

> >

> > Since on Juno we don't have a SoC level bus node and "dma-ranges" is

> > present only in the root node, we get the following error:

> >

> > OF: translation of DMA address(0) to CPU address failed node(/sram@2e000000)

> > OF: translation of DMA address(0) to CPU address failed node(/uart@7ff80000)

> > ...

> > OF: translation of DMA address(0) to CPU address failed node(/mhu@2b1f0000)

> > OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> > OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> > OF: translation of DMA address(0) to CPU address failed node(/iommu@2b600000)

> >

> > So let's fix it by dropping the "dma-ranges" property for now. We can

> > add it later with a proper SoC bus node and moving all the devices that

> > belong there along with the "dma-ranges" if required.

>

> Acked-by: Robin Murphy <robin.murphy@arm.com>

>


Thanks.

> As mentioned before, this is fine since it doesn't represent any kind of

> device-visible restriction; it was only there for completeness, and we've

> since given in to the assumption that missing "dma-ranges" implies a 1:1

> mapping anyway.

>


Agreed.

--
Regards,
Sudeep
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
index 9e3e8ce6adfe..1f3c80aafbd7 100644
--- a/arch/arm64/boot/dts/arm/juno-base.dtsi
+++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
@@ -6,7 +6,6 @@ 
 	/*
 	 *  Devices shared by all Juno boards
 	 */
-	dma-ranges = <0 0 0 0 0x100 0>;
 
 	memtimer: timer@2a810000 {
 		compatible = "arm,armv7-timer-mem";