2023-11-01 15:53:47

by Ben Wolsieffer

[permalink] [raw]
Subject: [PATCH] ARM: dts: stm32: add STM32F746 syscfg clock

The syscfg syscon was missing its clock, therefore any attempt to
read/write it after clk_disable_unused() silently failed. This was
preventing external pin interrupts from working if they were initialized
after this point.

Signed-off-by: Ben Wolsieffer <[email protected]>
---
arch/arm/boot/dts/st/stm32f746.dtsi | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/st/stm32f746.dtsi b/arch/arm/boot/dts/st/stm32f746.dtsi
index 4942753d011e..cce6ab0e4617 100644
--- a/arch/arm/boot/dts/st/stm32f746.dtsi
+++ b/arch/arm/boot/dts/st/stm32f746.dtsi
@@ -501,6 +501,7 @@ sdio1: mmc@40012c00 {
syscfg: syscon@40013800 {
compatible = "st,stm32-syscfg", "syscon";
reg = <0x40013800 0x400>;
+ clocks = <&rcc 0 STM32F7_APB2_CLOCK(SYSCFG)>;
};

exti: interrupt-controller@40013c00 {
--
2.42.0


2023-11-21 13:29:27

by Alexandre TORGUE

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: stm32: add STM32F746 syscfg clock

Hi Ben

On 11/1/23 16:51, Ben Wolsieffer wrote:
> The syscfg syscon was missing its clock, therefore any attempt to
> read/write it after clk_disable_unused() silently failed. This was
> preventing external pin interrupts from working if they were initialized
> after this point.
>
> Signed-off-by: Ben Wolsieffer <[email protected]>
> ---
> arch/arm/boot/dts/st/stm32f746.dtsi | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/boot/dts/st/stm32f746.dtsi b/arch/arm/boot/dts/st/stm32f746.dtsi
> index 4942753d011e..cce6ab0e4617 100644
> --- a/arch/arm/boot/dts/st/stm32f746.dtsi
> +++ b/arch/arm/boot/dts/st/stm32f746.dtsi
> @@ -501,6 +501,7 @@ sdio1: mmc@40012c00 {
> syscfg: syscon@40013800 {
> compatible = "st,stm32-syscfg", "syscon";
> reg = <0x40013800 0x400>;
> + clocks = <&rcc 0 STM32F7_APB2_CLOCK(SYSCFG)>;
> };
>
> exti: interrupt-controller@40013c00 {

2023-11-21 13:31:51

by Alexandre TORGUE

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: stm32: add STM32F746 syscfg clock

Hi Ben

On 11/1/23 16:51, Ben Wolsieffer wrote:
> The syscfg syscon was missing its clock, therefore any attempt to
> read/write it after clk_disable_unused() silently failed. This was
> preventing external pin interrupts from working if they were initialized
> after this point.
>
> Signed-off-by: Ben Wolsieffer <[email protected]>
> ---
> arch/arm/boot/dts/st/stm32f746.dtsi | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/boot/dts/st/stm32f746.dtsi b/arch/arm/boot/dts/st/stm32f746.dtsi
> index 4942753d011e..cce6ab0e4617 100644
> --- a/arch/arm/boot/dts/st/stm32f746.dtsi
> +++ b/arch/arm/boot/dts/st/stm32f746.dtsi
> @@ -501,6 +501,7 @@ sdio1: mmc@40012c00 {
> syscfg: syscon@40013800 {
> compatible = "st,stm32-syscfg", "syscon";
> reg = <0x40013800 0x400>;
> + clocks = <&rcc 0 STM32F7_APB2_CLOCK(SYSCFG)>;
> };
>
> exti: interrupt-controller@40013c00 {

Applied on stm32-next.

Thanks
Alex