2023-05-12 11:04:11

by Arnaud Pouliquen

[permalink] [raw]
Subject: [PATCH v3 0/4] stm32mp15: update remoteproc to support SCMI Device tree

Update vs V2[1]:
---------------
- update yaml to remove label in examples
- fix error management for devm_reset_control_get_optional(dev, "hold_boot")
- rebased on commit ac9a78681b92 ("Linux 6.4-rc1")

[1]https://lore.kernel.org/lkml/[email protected]/T/


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 (4):
dt-bindings: remoteproc: st,stm32-rproc: Rework reset declarations
remoteproc: stm32: Allow hold boot management by the SCMI reset
controller
ARM: dts: stm32: Update reset declarations
ARM: dts: stm32: fix m4_rproc references to use SCMI

.../bindings/remoteproc/st,stm32-rproc.yaml | 44 +++++++++--
arch/arm/boot/dts/stm32mp151.dtsi | 2 +-
arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts | 6 +-
arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts | 6 +-
arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts | 6 +-
arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts | 6 +-
drivers/remoteproc/stm32_rproc.c | 76 ++++++++++++++-----
7 files changed, 111 insertions(+), 35 deletions(-)

--
2.25.1



2023-05-15 17:56:18

by Mathieu Poirier

[permalink] [raw]
Subject: Re: [PATCH v3 0/4] stm32mp15: update remoteproc to support SCMI Device tree

On Fri, May 12, 2023 at 11:39:22AM +0200, Arnaud Pouliquen wrote:
> Update vs V2[1]:
> ---------------
> - update yaml to remove label in examples
> - fix error management for devm_reset_control_get_optional(dev, "hold_boot")
> - rebased on commit ac9a78681b92 ("Linux 6.4-rc1")
>
> [1]https://lore.kernel.org/lkml/[email protected]/T/
>
>
> 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 (4):
> dt-bindings: remoteproc: st,stm32-rproc: Rework reset declarations
> remoteproc: stm32: Allow hold boot management by the SCMI reset
> controller
> ARM: dts: stm32: Update reset declarations
> ARM: dts: stm32: fix m4_rproc references to use SCMI
>
> .../bindings/remoteproc/st,stm32-rproc.yaml | 44 +++++++++--
> arch/arm/boot/dts/stm32mp151.dtsi | 2 +-
> arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts | 6 +-
> arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts | 6 +-
> arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts | 6 +-
> arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts | 6 +-
> drivers/remoteproc/stm32_rproc.c | 76 ++++++++++++++-----
> 7 files changed, 111 insertions(+), 35 deletions(-)
>

I have applied patch 1 and 2. Unless Alexandre wants to proceed differently,
patches 3 and 4 should go through his tree.

Thanks,
Mathieu

> --
> 2.25.1
>

2023-05-16 15:00:54

by Alexandre TORGUE

[permalink] [raw]
Subject: Re: [PATCH v3 0/4] stm32mp15: update remoteproc to support SCMI Device tree

Hi Mathieu

On 5/15/23 19:27, Mathieu Poirier wrote:
> On Fri, May 12, 2023 at 11:39:22AM +0200, Arnaud Pouliquen wrote:
>> Update vs V2[1]:
>> ---------------
>> - update yaml to remove label in examples
>> - fix error management for devm_reset_control_get_optional(dev, "hold_boot")
>> - rebased on commit ac9a78681b92 ("Linux 6.4-rc1")
>>
>> [1]https://lore.kernel.org/lkml/[email protected]/T/
>>
>>
>> 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 (4):
>> dt-bindings: remoteproc: st,stm32-rproc: Rework reset declarations
>> remoteproc: stm32: Allow hold boot management by the SCMI reset
>> controller
>> ARM: dts: stm32: Update reset declarations
>> ARM: dts: stm32: fix m4_rproc references to use SCMI
>>
>> .../bindings/remoteproc/st,stm32-rproc.yaml | 44 +++++++++--
>> arch/arm/boot/dts/stm32mp151.dtsi | 2 +-
>> arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts | 6 +-
>> arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts | 6 +-
>> arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts | 6 +-
>> arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts | 6 +-
>> drivers/remoteproc/stm32_rproc.c | 76 ++++++++++++++-----
>> 7 files changed, 111 insertions(+), 35 deletions(-)
>>
>
> I have applied patch 1 and 2. Unless Alexandre wants to proceed differently,
> patches 3 and 4 should go through his tree.

I will merge DT patches in STM32 tree.

cheers
Alex

>
> Thanks,
> Mathieu
>
>> --
>> 2.25.1
>>