[PATCH] arm64: dts: juno: Enable some SMMUs

Jon Medhurst (Tixy) tixy at linaro.org
Thu May 18 06:13:59 PDT 2017


On Thu, 2017-05-18 at 13:23 +0100, Robin Murphy wrote:
> The IOMMU-backed DMA API support has now been in place for a while and
> proven stable, so there's no real need to keep most of Juno's SMMUs
> disabled. The USB, HDLCDs, and CoreSight ETR all just need to map RAM
> buffers for DMA - enabling their SMMUs obviates CPU bounce buffering for
> USB's streaming DMA to the upper memory bank, and lets the other two
> allocate their relatively large coherent buffers without pressuring CMA.
> 
> Some more software work is still needed for the DMA-330 and PCIe before
> those can accommodate SMMU translation correctly in all cases, so we
> leave those alone for now.
> 
> Signed-off-by: Robin Murphy <robin.murphy at arm.com>
> ---

For those that don't already know, status = "disabled" for smmu is
broken in Linux 4.12-rc1, and this fixes it...
https://lkml.org/lkml/2017/5/17/344

>  arch/arm64/boot/dts/arm/juno-base.dtsi | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/arm/juno-base.dtsi b/arch/arm64/boot/dts/arm/juno-base.dtsi
> index bfe7d683a42e..02aea43238fc 100644
> --- a/arch/arm64/boot/dts/arm/juno-base.dtsi
> +++ b/arch/arm64/boot/dts/arm/juno-base.dtsi
> @@ -53,7 +53,6 @@
>  		#global-interrupts = <1>;
>  		dma-coherent;
>  		power-domains = <&scpi_devpd 0>;
> -		status = "disabled";
>  	};
>  
>  	gic: interrupt-controller at 2c010000 {
> @@ -546,7 +545,6 @@
>  			     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
>  		#iommu-cells = <1>;
>  		#global-interrupts = <1>;
> -		status = "disabled";
>  	};
>  
>  	smmu_hdlcd0: iommu at 7fb20000 {
> @@ -556,7 +554,6 @@
>  			     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
>  		#iommu-cells = <1>;
>  		#global-interrupts = <1>;
> -		status = "disabled";
>  	};
>  
>  	smmu_usb: iommu at 7fb30000 {
> @@ -567,7 +564,6 @@
>  		#iommu-cells = <1>;
>  		#global-interrupts = <1>;
>  		dma-coherent;
> -		status = "disabled";
>  	};
>  
>  	dma at 7ff00000 {



More information about the linux-arm-kernel mailing list