diff mbox

[v3,5/6] ARM: STiH407: Add nodes for RemoteProc

Message ID 1441208289-17330-6-git-send-email-lee.jones@linaro.org
State Superseded
Headers show

Commit Message

Lee Jones Sept. 2, 2015, 3:38 p.m. UTC
Signed-off-by: Ludovic Barre <ludovic.barre@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/stih407-family.dtsi | 40 +++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

Comments

Peter Griffin Sept. 3, 2015, 3:26 p.m. UTC | #1
Hi Lee,

On Wed, 02 Sep 2015, Lee Jones wrote:

> Signed-off-by: Ludovic Barre <ludovic.barre@st.com>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
>  arch/arm/boot/dts/stih407-family.dtsi | 40 +++++++++++++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/stih407-family.dtsi b/arch/arm/boot/dts/stih407-family.dtsi
> index 33daa49..1c31918 100644
> --- a/arch/arm/boot/dts/stih407-family.dtsi
> +++ b/arch/arm/boot/dts/stih407-family.dtsi
> @@ -608,5 +608,45 @@
>  			status		= "okay";
>  			tx-only;
>  		};
> +
> +		st231_gp0: st231-gp0@40000000 {
> +			compatible	= "st,st231-rproc";
> +			reg		= <0x40000000 0x01000000>;
> +			resets		= <&softreset STIH407_ST231_GP0_SOFTRESET>;
> +			reset-names	= "sw_reset";
> +			clocks		= <&clk_s_c0_flexgen CLK_ST231_GP_0>;
> +			clock-frequency	= <600000000>;
> +			st,syscfg	= <&syscfg_core 0x22c>;
> +		};
> +
> +		st231_gp1: st231-gp1@41000000 {
> +			compatible	= "st,st231-rproc";
> +			reg		= <0x41000000 0x01000000>;
> +			resets		= <&softreset STIH407_ST231_GP1_SOFTRESET>;
> +			reset-names	= "sw_reset";
> +			clocks		= <&clk_s_c0_flexgen CLK_ST231_GP_1>;
> +			clock-frequency = <600000000>;
> +			st,syscfg	= <&syscfg_core 0x220>;
> +		};
> +
> +		st231_audio: st231-audio@42000000 {
> +			compatible	= "st,st231-rproc";
> +			reg		= <0x42000000 0x01000000>;
> +			resets		= <&softreset STIH407_ST231_AUD_SOFTRESET>;
> +			reset-names	= "sw_reset";
> +			clocks		= <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
> +			clock-frequency	= <600000000>;
> +			st,syscfg	= <&syscfg_core 0x228>;
> +		};
> +
> +		st231_dmu: st231-dmu@43000000 {
> +			compatible	= "st,st231-rproc";
> +			reg		= <0x43000000 0x01000000>;
> +			resets		= <&softreset STIH407_ST231_DMU_SOFTRESET>;
> +			reset-names	= "sw_reset";
> +			clocks		= <&clk_s_c0_flexgen CLK_ST231_DMU>;

Thinking more about this more, I believe you will actually need to support enabling
and setting the frequency on a list of clocks.

The reason being that for the video ST231 for example you also need to enable
CLK_VID_DMU. This clock clocks the DeltaMU hw used by the video ST231 for
video decoding. I suspect if the video firmware is loading and working correctly
with this patchset, then it is most likely because the clock is being enabled
by the bootloader and not being disabled by CCF due to our platform booting
with clk_ignore_unused.

When yours (or Mikes) critical clock patches get merged, and we stop booting with
"clk_ignore_unused" you will find it no longer works.

I'm not aware of other hw which is used by the audio of gp ST231, but as the driver
also covers ST40 and potentially other co-processors in the future, having a list
of clocks seems nicely extendable to cover other permutations.

regards,

Peter.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/stih407-family.dtsi b/arch/arm/boot/dts/stih407-family.dtsi
index 33daa49..1c31918 100644
--- a/arch/arm/boot/dts/stih407-family.dtsi
+++ b/arch/arm/boot/dts/stih407-family.dtsi
@@ -608,5 +608,45 @@ 
 			status		= "okay";
 			tx-only;
 		};
+
+		st231_gp0: st231-gp0@40000000 {
+			compatible	= "st,st231-rproc";
+			reg		= <0x40000000 0x01000000>;
+			resets		= <&softreset STIH407_ST231_GP0_SOFTRESET>;
+			reset-names	= "sw_reset";
+			clocks		= <&clk_s_c0_flexgen CLK_ST231_GP_0>;
+			clock-frequency	= <600000000>;
+			st,syscfg	= <&syscfg_core 0x22c>;
+		};
+
+		st231_gp1: st231-gp1@41000000 {
+			compatible	= "st,st231-rproc";
+			reg		= <0x41000000 0x01000000>;
+			resets		= <&softreset STIH407_ST231_GP1_SOFTRESET>;
+			reset-names	= "sw_reset";
+			clocks		= <&clk_s_c0_flexgen CLK_ST231_GP_1>;
+			clock-frequency = <600000000>;
+			st,syscfg	= <&syscfg_core 0x220>;
+		};
+
+		st231_audio: st231-audio@42000000 {
+			compatible	= "st,st231-rproc";
+			reg		= <0x42000000 0x01000000>;
+			resets		= <&softreset STIH407_ST231_AUD_SOFTRESET>;
+			reset-names	= "sw_reset";
+			clocks		= <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
+			clock-frequency	= <600000000>;
+			st,syscfg	= <&syscfg_core 0x228>;
+		};
+
+		st231_dmu: st231-dmu@43000000 {
+			compatible	= "st,st231-rproc";
+			reg		= <0x43000000 0x01000000>;
+			resets		= <&softreset STIH407_ST231_DMU_SOFTRESET>;
+			reset-names	= "sw_reset";
+			clocks		= <&clk_s_c0_flexgen CLK_ST231_DMU>;
+			clock-frequency	= <600000000>;
+			st,syscfg	= <&syscfg_core 0x224>;
+		};
 	};
 };