Re: [PATCH v3 4/4] ARM: dts: stm32: fix m4_rproc references to use SCMI

Alexandre TORGUE
2023-05-16T15:35:21Z

Hi Arnaud

On 5/12/23 11:39, Arnaud Pouliquen wrote:
> Fixes stm32mp15*-scmi DTS files introduced in [1]:
> This patch fixes the node which uses the MCU reset and adds the
> missing HOLD_BOOT which is also handled by the SCMI reset service.
>
> This change cannot be applied as a fix on commit [1], the management
> of the hold boot impacts also the stm32_rproc driver.
>
> [1] 'commit 5b7e58313a77 ("ARM: dts: stm32: Add SCMI version of STM32 boards (DK1/DK2/ED1/EV1)")'
>
> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
> ---

I just ran YAML validation on your DT patches and it fails. I added your
DT patches + dt-binding one (just for the test). I got the following issue:

/arch/arm/boot/dts/stm32mp157c-ed1-scmi.dtb: m4@10000000:
st,syscfg-holdboot: False schema does not allow [[7, 268, 1]]
From schema:
/local/home/frq08678/STLINUX/kernel/my-kernel/stm32/Documentation/devicetree/bindings/remoteproc/st,stm32-rproc.yaml

Do I miss another dt-binding update not present in this series ?

alex

> 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 ++++--
> 4 files changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts b/arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts
> index e539cc80bef8..134788e64265 100644
> --- a/arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts
> +++ b/arch/arm/boot/dts/stm32mp157a-dk1-scmi.dts
> @@ -55,8 +55,10 @@ &mdma1 {
> resets = <&scmi_reset RST_SCMI_MDMA>;
> };
>
> -&mlahb {
> - resets = <&scmi_reset RST_SCMI_MCU>;
> +&m4_rproc {
> + resets = <&scmi_reset RST_SCMI_MCU>,
> + <&scmi_reset RST_SCMI_MCU_HOLD_BOOT>;
> + reset-names = "mcu_rst", "hold_boot";
> };
>
> &rcc {
> diff --git a/arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts b/arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts
> index 97e4f94b0a24..c42e658debfb 100644
> --- a/arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts
> +++ b/arch/arm/boot/dts/stm32mp157c-dk2-scmi.dts
> @@ -61,8 +61,10 @@ &mdma1 {
> resets = <&scmi_reset RST_SCMI_MDMA>;
> };
>
> -&mlahb {
> - resets = <&scmi_reset RST_SCMI_MCU>;
> +&m4_rproc {
> + resets = <&scmi_reset RST_SCMI_MCU>,
> + <&scmi_reset RST_SCMI_MCU_HOLD_BOOT>;
> + reset-names = "mcu_rst", "hold_boot";
> };
>
> &rcc {
> diff --git a/arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts b/arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts
> index 9cf0a44d2f47..7a56ff2d4185 100644
> --- a/arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts
> +++ b/arch/arm/boot/dts/stm32mp157c-ed1-scmi.dts
> @@ -60,8 +60,10 @@ &mdma1 {
> resets = <&scmi_reset RST_SCMI_MDMA>;
> };
>
> -&mlahb {
> - resets = <&scmi_reset RST_SCMI_MCU>;
> +&m4_rproc {
> + resets = <&scmi_reset RST_SCMI_MCU>,
> + <&scmi_reset RST_SCMI_MCU_HOLD_BOOT>;
> + reset-names = "mcu_rst", "hold_boot";
> };
>
> &rcc {
> diff --git a/arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts b/arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts
> index 3b9dd6f4ccc9..119874dd91e4 100644
> --- a/arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts
> +++ b/arch/arm/boot/dts/stm32mp157c-ev1-scmi.dts
> @@ -66,8 +66,10 @@ &mdma1 {
> resets = <&scmi_reset RST_SCMI_MDMA>;
> };
>
> -&mlahb {
> - resets = <&scmi_reset RST_SCMI_MCU>;
> +&m4_rproc {
> + resets = <&scmi_reset RST_SCMI_MCU>,
> + <&scmi_reset RST_SCMI_MCU_HOLD_BOOT>;
> + reset-names = "mcu_rst", "hold_boot";
> };
>
> &rcc {