Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1607740 > unrolled thread

[PATCH] arc: vdk: Fix support of UIO

Started byAlexey Brodkin <Alexey.Brodkin@synopsys.com>
First post2017-03-23 18:40 +0100
Last post2017-03-24 21:40 +0100
Articles 3 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] arc: vdk: Fix support of UIO Alexey Brodkin <Alexey.Brodkin@synopsys.com> - 2017-03-23 18:40 +0100
    Re: [PATCH] arc: vdk: Fix support of UIO Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2017-03-23 18:40 +0100
    Re: [PATCH] arc: vdk: Fix support of UIO Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2017-03-24 21:40 +0100

#1607740 — [PATCH] arc: vdk: Fix support of UIO

FromAlexey Brodkin <Alexey.Brodkin@synopsys.com>
Date2017-03-23 18:40 +0100
Subject[PATCH] arc: vdk: Fix support of UIO
Message-ID<toeSl-5uK-9@gated-at.bofh.it>
MotherBoard section has its "ranges" set to 0xE000_0000-0xF000_0000.
But UIO node maps 4 different areas in different memory locations
and all outside MB's ranges.

That obviously breaks UIO mappings in runtime.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: Ruud Derwig <rderwig@synopsys.com>
Cc: stable@vger.kernel.org
---
 arch/arc/boot/dts/vdk_axs10x_mb.dtsi | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
index f0df59b23e21..459fc656b759 100644
--- a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
+++ b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
@@ -112,13 +112,19 @@
 			interrupts = <7>;
 			bus-width = <4>;
 		};
+	};
 
-		/* Embedded Vision subsystem UIO mappings; only relevant for EV VDK */
-		uio_ev: uio@0xD0000000 {
-			compatible = "generic-uio";
-			reg = <0xD0000000 0x2000 0xD1000000 0x2000 0x90000000 0x10000000 0xC0000000 0x10000000>;
-			reg-names = "ev_gsa", "ev_ctrl", "ev_shared_mem", "ev_code_mem";
-			interrupts = <23>;
-		};
+	/*
+	 * Embedded Vision subsystem UIO mappings; only relevant for EV VDK
+	 *
+	 * This node is intentionally put outside of MB above becase
+	 * it maps areas outside of MB's 0xEz-0xFz.
+	 */
+	uio_ev: uio@0xD0000000 {
+		compatible = "generic-uio";
+		reg = <0xD0000000 0x2000 0xD1000000 0x2000 0x90000000 0x10000000 0xC0000000 0x10000000>;
+		reg-names = "ev_gsa", "ev_ctrl", "ev_shared_mem", "ev_code_mem";
+		interrupt-parent = <&mb_intc>;
+		interrupts = <23>;
 	};
 };
-- 
2.7.4

[toc] | [next] | [standalone]


#1607742

FromVineet Gupta <Vineet.Gupta1@synopsys.com>
Date2017-03-23 18:40 +0100
Message-ID<toeSl-5uK-7@gated-at.bofh.it>
In reply to#1607740
+CC Jos !

-Vineet

On 03/23/2017 10:34 AM, Alexey Brodkin wrote:
> MotherBoard section has its "ranges" set to 0xE000_0000-0xF000_0000.
> But UIO node maps 4 different areas in different memory locations
> and all outside MB's ranges.
>
> That obviously breaks UIO mappings in runtime.
>
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Vineet Gupta <vgupta@synopsys.com>
> Cc: Ruud Derwig <rderwig@synopsys.com>
> Cc: stable@vger.kernel.org
> ---
>  arch/arc/boot/dts/vdk_axs10x_mb.dtsi | 20 +++++++++++++-------
>  1 file changed, 13 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
> index f0df59b23e21..459fc656b759 100644
> --- a/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
> +++ b/arch/arc/boot/dts/vdk_axs10x_mb.dtsi
> @@ -112,13 +112,19 @@
>  			interrupts = <7>;
>  			bus-width = <4>;
>  		};
> +	};
>  
> -		/* Embedded Vision subsystem UIO mappings; only relevant for EV VDK */
> -		uio_ev: uio@0xD0000000 {
> -			compatible = "generic-uio";
> -			reg = <0xD0000000 0x2000 0xD1000000 0x2000 0x90000000 0x10000000 0xC0000000 0x10000000>;
> -			reg-names = "ev_gsa", "ev_ctrl", "ev_shared_mem", "ev_code_mem";
> -			interrupts = <23>;
> -		};
> +	/*
> +	 * Embedded Vision subsystem UIO mappings; only relevant for EV VDK
> +	 *
> +	 * This node is intentionally put outside of MB above becase
> +	 * it maps areas outside of MB's 0xEz-0xFz.
> +	 */
> +	uio_ev: uio@0xD0000000 {
> +		compatible = "generic-uio";
> +		reg = <0xD0000000 0x2000 0xD1000000 0x2000 0x90000000 0x10000000 0xC0000000 0x10000000>;
> +		reg-names = "ev_gsa", "ev_ctrl", "ev_shared_mem", "ev_code_mem";
> +		interrupt-parent = <&mb_intc>;
> +		interrupts = <23>;
>  	};
>  };

[toc] | [prev] | [next] | [standalone]


#1608961

FromVineet Gupta <Vineet.Gupta1@synopsys.com>
Date2017-03-24 21:40 +0100
Message-ID<toEa5-6Td-15@gated-at.bofh.it>
In reply to#1607740
On 03/23/2017 10:34 AM, Alexey Brodkin wrote:
> MotherBoard section has its "ranges" set to 0xE000_0000-0xF000_0000.
> But UIO node maps 4 different areas in different memory locations
> and all outside MB's ranges.
> 
> That obviously breaks UIO mappings in runtime.
> 
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Vineet Gupta <vgupta@synopsys.com>
> Cc: Ruud Derwig <rderwig@synopsys.com>
> Cc: stable@vger.kernel.org


Added to for-curr.

Thx,
-Vineet

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web