[PATCH 5/5] arm64: dts: allwinner: h616: add IOMMU node

Robin Murphy robin.murphy at arm.com
Fri May 31 01:42:36 PDT 2024


On 2024-05-31 12:38 am, Andre Przywara wrote:
> The Allwinner H616 contains a scatter-gather IOMMU connected to some
> video related devices. It's almost compatible to the one used in the H6,
> though with minor incompatibilities.
> 
> Add the DT node describing its resources, so that devices like the video
> or display engine can connect to it.

Without also describing those connections, though, having this node 
enabled in the DT means the driver will just bind, block DMA, and 
prevent those devices from working. That's probably not what you want.

Thanks,
Robin.

> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
> ---
>   arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi | 9 +++++++++
>   1 file changed, 9 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> index 9c1980e24cb21..44f04619a43ac 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
> @@ -320,6 +320,15 @@ x32clk_fanout_pin: x32clk-fanout-pin {
>   			};
>   		};
>   
> +		iommu: iommu at 30f0000 {
> +			compatible = "allwinner,sun50i-h616-iommu";
> +			reg = <0x030f0000 0x10000>;
> +			interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&ccu CLK_BUS_IOMMU>;
> +			resets = <&ccu RST_BUS_IOMMU>;
> +			#iommu-cells = <1>;
> +		};
> +
>   		gic: interrupt-controller at 3021000 {
>   			compatible = "arm,gic-400";
>   			reg = <0x03021000 0x1000>,



More information about the linux-arm-kernel mailing list