diff mbox series

[3/3] ARM: dts: stm32: update stm32mp151 for remote proc synchronisation support

Message ID 20200827072101.26588-4-arnaud.pouliquen@st.com
State New
Headers show
Series [1/3] dt-bindings: arm: stm32: Add compatible for syscon tamp node | expand

Commit Message

Arnaud POULIQUEN Aug. 27, 2020, 7:21 a.m. UTC
Two backup registers are used to store the Cortex-M4 state and the resource
table address.
Declare the tamp node and add associated properties in m4_rproc node
to allow Linux to attach to a firmware loaded by the first boot stages.

Associated driver implementation is available in commit 9276536f455b3
("remoteproc: stm32: Parse syscon that will manage M4 synchronisation").

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
---
 arch/arm/boot/dts/stm32mp151.dtsi | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Ahmad Fatoum Sept. 24, 2020, 5:45 a.m. UTC | #1
Hello Arnaud,

On 8/27/20 9:21 AM, Arnaud Pouliquen wrote:
> Two backup registers are used to store the Cortex-M4 state and the resource

> table address.

> Declare the tamp node and add associated properties in m4_rproc node

> to allow Linux to attach to a firmware loaded by the first boot stages.

> 

> Associated driver implementation is available in commit 9276536f455b3

> ("remoteproc: stm32: Parse syscon that will manage M4 synchronisation").

> 

> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>

> ---

>  arch/arm/boot/dts/stm32mp151.dtsi | 7 +++++++

>  1 file changed, 7 insertions(+)

> 

> diff --git a/arch/arm/boot/dts/stm32mp151.dtsi b/arch/arm/boot/dts/stm32mp151.dtsi

> index bfe29023fbd5..842ecffae73a 100644

> --- a/arch/arm/boot/dts/stm32mp151.dtsi

> +++ b/arch/arm/boot/dts/stm32mp151.dtsi

> @@ -1541,6 +1541,11 @@

>  			status = "disabled";

>  		};

>  

> +		tamp: tamp@5c00a000 {

> +			compatible = "st,stm32-tamp", "syscon";

> +			reg = <0x5c00a000 0x400>;

> +		};

> +


Just saw this now. I have a pending patch adding this node as well:
https://lore.kernel.org/patchwork/patch/1306971/

For my use case, I need a "simple-mfd" compatible to allow child
nodes to be probed.

Could you CC me when you send out your v2, so I can rebase?
(Or if you don't mind, just add the "simple-mfd" into the compatible
list yourself :-)

Cheers
Ahmad

>  		/*

>  		 * Break node order to solve dependency probe issue between

>  		 * pinctrl and exti.

> @@ -1717,6 +1722,8 @@

>  			st,syscfg-holdboot = <&rcc 0x10C 0x1>;

>  			st,syscfg-tz = <&rcc 0x000 0x1>;

>  			st,syscfg-pdds = <&pwr_mcu 0x0 0x1>;

> +			st,syscfg-rsc-tbl = <&tamp 0x144 0xFFFFFFFF>;

> +			st,syscfg-m4-state = <&tamp 0x148 0xFFFFFFFF>;

>  			status = "disabled";

>  		};

>  	};

> 


-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
Arnaud POULIQUEN Sept. 24, 2020, 8:02 a.m. UTC | #2
Hi Ahmad,

On 9/24/20 7:45 AM, Ahmad Fatoum wrote:
> Hello Arnaud,

> 

> On 8/27/20 9:21 AM, Arnaud Pouliquen wrote:

>> Two backup registers are used to store the Cortex-M4 state and the resource

>> table address.

>> Declare the tamp node and add associated properties in m4_rproc node

>> to allow Linux to attach to a firmware loaded by the first boot stages.

>>

>> Associated driver implementation is available in commit 9276536f455b3

>> ("remoteproc: stm32: Parse syscon that will manage M4 synchronisation").

>>

>> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>

>> ---

>>  arch/arm/boot/dts/stm32mp151.dtsi | 7 +++++++

>>  1 file changed, 7 insertions(+)

>>

>> diff --git a/arch/arm/boot/dts/stm32mp151.dtsi b/arch/arm/boot/dts/stm32mp151.dtsi

>> index bfe29023fbd5..842ecffae73a 100644

>> --- a/arch/arm/boot/dts/stm32mp151.dtsi

>> +++ b/arch/arm/boot/dts/stm32mp151.dtsi

>> @@ -1541,6 +1541,11 @@

>>  			status = "disabled";

>>  		};

>>  

>> +		tamp: tamp@5c00a000 {

>> +			compatible = "st,stm32-tamp", "syscon";

>> +			reg = <0x5c00a000 0x400>;

>> +		};

>> +

> 

> Just saw this now. I have a pending patch adding this node as well:

> https://lore.kernel.org/patchwork/patch/1306971/

> 

> For my use case, I need a "simple-mfd" compatible to allow child

> nodes to be probed.

> 

> Could you CC me when you send out your v2, so I can rebase?

> (Or if you don't mind, just add the "simple-mfd" into the compatible

> list yourself :-)


I prefer that you propose the "simple-mfd" compatibility. I do not master the
consequence of adding it...
I will add you in cc of my v2 , but as your patch could trig some discussions
I would suggest to send in advance a patchset including this patch and your patch
on top of, just add a reference to this series in the cover letter and explain
potential impact (or non impact) on the legacy.

Regards,
Arnaud
 
> 

> Cheers

> Ahmad

> 

>>  		/*

>>  		 * Break node order to solve dependency probe issue between

>>  		 * pinctrl and exti.

>> @@ -1717,6 +1722,8 @@

>>  			st,syscfg-holdboot = <&rcc 0x10C 0x1>;

>>  			st,syscfg-tz = <&rcc 0x000 0x1>;

>>  			st,syscfg-pdds = <&pwr_mcu 0x0 0x1>;

>> +			st,syscfg-rsc-tbl = <&tamp 0x144 0xFFFFFFFF>;

>> +			st,syscfg-m4-state = <&tamp 0x148 0xFFFFFFFF>;

>>  			status = "disabled";

>>  		};

>>  	};

>>

>
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/stm32mp151.dtsi b/arch/arm/boot/dts/stm32mp151.dtsi
index bfe29023fbd5..842ecffae73a 100644
--- a/arch/arm/boot/dts/stm32mp151.dtsi
+++ b/arch/arm/boot/dts/stm32mp151.dtsi
@@ -1541,6 +1541,11 @@ 
 			status = "disabled";
 		};
 
+		tamp: tamp@5c00a000 {
+			compatible = "st,stm32-tamp", "syscon";
+			reg = <0x5c00a000 0x400>;
+		};
+
 		/*
 		 * Break node order to solve dependency probe issue between
 		 * pinctrl and exti.
@@ -1717,6 +1722,8 @@ 
 			st,syscfg-holdboot = <&rcc 0x10C 0x1>;
 			st,syscfg-tz = <&rcc 0x000 0x1>;
 			st,syscfg-pdds = <&pwr_mcu 0x0 0x1>;
+			st,syscfg-rsc-tbl = <&tamp 0x144 0xFFFFFFFF>;
+			st,syscfg-m4-state = <&tamp 0x148 0xFFFFFFFF>;
 			status = "disabled";
 		};
 	};