[v4,0/2] stm32mp15: update remoteproc to support SCMI Device tree

Message ID 20230517074830.569398-1-arnaud.pouliquen@foss.st.com
Headers
Series stm32mp15: update remoteproc to support SCMI Device tree |

Message

Arnaud POULIQUEN May 17, 2023, 7:48 a.m. UTC
  Update vs V3[1]:
---------------
- remove from the V4 the commits already merged by Mathieu Poirier in the
  remoteproc next branch:
  - dt-bindings: remoteproc: st,stm32-rproc: Rework reset declarations
  - remoteproc: stm32: Allow hold boot management by the SCMI reset
    controller
- rename patch " ARM: dts: stm32: Update reset declarations" to 
  "ARM: dts: stm32: Update Cortex-M4 reset declarations on stm32mp15"
- Fix DTS error reported by "make dtbs_check"

[1]https://lore.kernel.org/lkml/20230512093926.661509-1-arnaud.pouliquen@foss.st.com/


Description:
-----------
This series updates the stm32_rproc driver and associated DT node to
support device tree configuration with and without SCMI server. 
The impact is mainly on the MCU hold boot management.

Three configurations have to be supported:

1) Configuration without OP-TEE SCMI (legacy): Trusted context not activated
- The MCU reset is controlled through the Linux RCC reset driver.
- The MCU HOLD BOOT is controlled through The RCC sysconf.

2) Configuration with SCMI server: Trusted context activated
- The MCU reset is controlled through the SCMI reset service.
- The MCU HOLD BOOT is no more controlled through a SMC call service but
  through the SCMI reset service.

3) Configuration with OP-TEE SMC call (deprecated): Trusted context activated
- The MCU reset is controlled through the Linux RCC reset driver.
- The MCU HOLD BOOT is controlled through The SMC call.

In consequence this series:
- adds the use of the SCMI reset service to manage the MCU hold boot,
- determines the configuration to use depending on the presence of the
  "reset-names" property
  if ( "reset-names" property contains "hold_boot")
  then use reset_control services
  else use regmap access based on "st,syscfg-holdboot" property.
- set the DT st,syscfg-tz property as deprecated


Arnaud Pouliquen (2):
  ARM: dts: stm32: Update Cortex-M4 reset declarations on stm32mp15
  ARM: dts: stm32: fix m4_rproc references to use SCMI

 arch/arm/boot/dts/stm32mp151.dtsi          | 2 +-
 arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts | 7 +++++--
 arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts | 7 +++++--
 arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts | 7 +++++--
 arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts | 7 +++++--
 5 files changed, 21 insertions(+), 9 deletions(-)
  

Comments

Alexandre TORGUE May 17, 2023, 10:15 a.m. UTC | #1
Hi Arnaud

On 5/17/23 09:48, Arnaud Pouliquen wrote:
> Update vs V3[1]:
> ---------------
> - remove from the V4 the commits already merged by Mathieu Poirier in the
>    remoteproc next branch:
>    - dt-bindings: remoteproc: st,stm32-rproc: Rework reset declarations
>    - remoteproc: stm32: Allow hold boot management by the SCMI reset
>      controller
> - rename patch " ARM: dts: stm32: Update reset declarations" to
>    "ARM: dts: stm32: Update Cortex-M4 reset declarations on stm32mp15"
> - Fix DTS error reported by "make dtbs_check"
> 
> [1]https://lore.kernel.org/lkml/20230512093926.661509-1-arnaud.pouliquen@foss.st.com/
> 
> 
> Description:
> -----------
> This series updates the stm32_rproc driver and associated DT node to
> support device tree configuration with and without SCMI server.
> The impact is mainly on the MCU hold boot management.
> 
> Three configurations have to be supported:
> 
> 1) Configuration without OP-TEE SCMI (legacy): Trusted context not activated
> - The MCU reset is controlled through the Linux RCC reset driver.
> - The MCU HOLD BOOT is controlled through The RCC sysconf.
> 
> 2) Configuration with SCMI server: Trusted context activated
> - The MCU reset is controlled through the SCMI reset service.
> - The MCU HOLD BOOT is no more controlled through a SMC call service but
>    through the SCMI reset service.
> 
> 3) Configuration with OP-TEE SMC call (deprecated): Trusted context activated
> - The MCU reset is controlled through the Linux RCC reset driver.
> - The MCU HOLD BOOT is controlled through The SMC call.
> 
> In consequence this series:
> - adds the use of the SCMI reset service to manage the MCU hold boot,
> - determines the configuration to use depending on the presence of the
>    "reset-names" property
>    if ( "reset-names" property contains "hold_boot")
>    then use reset_control services
>    else use regmap access based on "st,syscfg-holdboot" property.
> - set the DT st,syscfg-tz property as deprecated
> 
> 
> Arnaud Pouliquen (2):
>    ARM: dts: stm32: Update Cortex-M4 reset declarations on stm32mp15
>    ARM: dts: stm32: fix m4_rproc references to use SCMI
> 
>   arch/arm/boot/dts/stm32mp151.dtsi          | 2 +-
>   arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts | 7 +++++--
>   arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts | 7 +++++--
>   arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts | 7 +++++--
>   arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts | 7 +++++--
>   5 files changed, 21 insertions(+), 9 deletions(-)
> 

Series applied on stm32-next.

Regards
Alex