Messages in this thread | | | Date | Mon, 23 May 2022 14:34:22 +0200 | Subject | Re: [PATCH 2/6] dt-bindings: rtc: stm32: add alarm A out property to select output | From | Valentin CARON <> |
| |
Hi Alexandre,
On 5/4/22 22:27, Alexandre Belloni wrote: > Hello, > > On 04/05/2022 15:06:13+0200, Valentin Caron wrote: >> STM32 RTC can pulse some SOC pins when an alarm of RTC expires. >> >> This patch adds property to activate alarm A output. The pulse can >> output on three pins RTC_OUT1, RTC_OUT2, RTC_OUT2_RMP >> (PC13, PB2, PI8 on stm32mp15) (PC13, PB2, PI1 on stm32mp13). >> >> Signed-off-by: Valentin Caron <valentin.caron@foss.st.com> >> --- >> .../devicetree/bindings/rtc/st,stm32-rtc.yaml | 19 ++++++++++++++++++- >> 1 file changed, 18 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/rtc/st,stm32-rtc.yaml b/Documentation/devicetree/bindings/rtc/st,stm32-rtc.yaml >> index 56d46ea35c5d..71e02604e8de 100644 >> --- a/Documentation/devicetree/bindings/rtc/st,stm32-rtc.yaml >> +++ b/Documentation/devicetree/bindings/rtc/st,stm32-rtc.yaml >> @@ -59,6 +59,13 @@ properties: >> Refer to <include/dt-bindings/rtc/rtc-stm32.h> for the supported values. >> Pinctrl state named "default" may be defined to reserve pin for RTC output. >> >> + st,alarm: >> + $ref: "/schemas/types.yaml#/definitions/uint32" >> + description: | >> + To select and enable RTC Alarm A output. >> + Refer to <include/dt-bindings/rtc/rtc-stm32.h> for the supported values. >> + Pinctrl state named "default" may be defined to reserve pin for RTC output. >> + >> allOf: >> - if: >> properties: >> @@ -75,6 +82,9 @@ allOf: >> st,lsco: >> maxItems: 0 >> >> + st,alarm: >> + maxItems: 0 >> + >> clock-names: false >> >> required: >> @@ -95,6 +105,9 @@ allOf: >> st,lsco: >> maxItems: 0 >> >> + st,alarm: >> + maxItems: 0 >> + >> required: >> - clock-names >> - st,syscfg >> @@ -117,6 +130,9 @@ allOf: >> st,lsco: >> maxItems: 1 >> >> + st,alarm: >> + maxItems: 1 >> + >> required: >> - clock-names >> >> @@ -153,8 +169,9 @@ examples: >> clocks = <&rcc RTCAPB>, <&rcc RTC>; >> clock-names = "pclk", "rtc_ck"; >> interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; >> + st,alarm = <RTC_OUT1>; >> st,lsco = <RTC_OUT2_RMP>; > Shouldn't that be exactly the opposite? You have two pins that can > output different functions. The property should be the pin and the value > the function. I'd go even further and I would say this is actually > pinmuxing. > You're right, if the property is the pin and the value the function, this looks like a pinctrl node. We choose to develop theses functionalities in the reverse order, to avoid the complexity of adding the pinctrl framework to our driver. Moreover, LSCO and AlarmA may haven't a peripheral client and this would probably require to also implement pinctrl hogging.
Is the implementation that we have proposed is acceptable regarding theses elements ?
Thank you, Valentin
| |