From: Marek Szyprowski Date: Wed, 21 Jan 2015 07:57:44 +0000 (+0100) Subject: ARM: dts: exynos542x: move mfc device into own bus with limited dma-range X-Git-Tag: accepted/tizen/common/20161219.151653~508 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=93868d699e4111f6b960122430435c819147a218;p=platform%2Fkernel%2Flinux-exynos.git ARM: dts: exynos542x: move mfc device into own bus with limited dma-range MFC block does not support setting address base to 0, what is the default value when using generic iommu based dma-mapping. This patch adds additional virtual bus (with dma ranges limited to 0x10000000..0x20000000) only for MFC device, so it gets proper dma mapping configuration. This is a workaround until proper configuration of default dma window gets implemented. Signed-off-by: Marek Szyprowski --- diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 8c84bed..3c82e57 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -172,15 +172,23 @@ clock-names = "pll_ref", "pll_in", "sclk_audio", "sclk_pcm_in"; }; - mfc: codec@11000000 { - compatible = "samsung,mfc-v7"; - reg = <0x11000000 0x10000>; - interrupts = <0 96 0>; - clocks = <&clock CLK_MFC>; - clock-names = "mfc"; - power-domains = <&mfc_pd>; - iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>; - iommu-names = "left", "right"; + mfc-bus { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges; + dma-ranges = <0x10000000 0x0 0x10000000>; + + mfc: codec@11000000 { + compatible = "samsung,mfc-v7"; + reg = <0x11000000 0x10000>; + interrupts = <0 96 0>; + clocks = <&clock CLK_MFC>; + clock-names = "mfc"; + power-domains = <&mfc_pd>; + iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>; + iommu-names = "left", "right"; + }; }; mmc_0: mmc@12200000 {