2023-03-08 08:43:46

by Nishanth Menon

[permalink] [raw]
Subject: [PATCH] dt-bindings: pinctrl: k3: Introduce debounce select mux macros

Introduce the debounce select mux macros to allow folks to setup
debounce configuration for pins. Each configuration selected maps
to a specific timing register as documented in appropriate Technical
Reference Manual (example:[1]).

[1] AM625x TRM (section 6.1.2.2): https://www.ti.com/lit/pdf/spruiv7
Signed-off-by: Nishanth Menon <[email protected]>
---
include/dt-bindings/pinctrl/k3.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/include/dt-bindings/pinctrl/k3.h b/include/dt-bindings/pinctrl/k3.h
index 6bb9df1a264d..469bd29651db 100644
--- a/include/dt-bindings/pinctrl/k3.h
+++ b/include/dt-bindings/pinctrl/k3.h
@@ -11,6 +11,7 @@
#define PULLUDEN_SHIFT (16)
#define PULLTYPESEL_SHIFT (17)
#define RXACTIVE_SHIFT (18)
+#define DEBOUNCE_SHIFT (11)

#define PULL_DISABLE (1 << PULLUDEN_SHIFT)
#define PULL_ENABLE (0 << PULLUDEN_SHIFT)
@@ -29,6 +30,14 @@
#define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP)
#define PIN_INPUT_PULLDOWN (INPUT_EN | PULL_DOWN)

+#define PIN_DEBOUNCE_DISABLE (0 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF1 (1 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF2 (2 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF3 (3 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF4 (4 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF5 (5 << DEBOUNCE_SHIFT)
+#define PIN_DEBOUNCE_CONF6 (6 << DEBOUNCE_SHIFT)
+
#define AM62AX_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))
#define AM62AX_MCU_IOPAD(pa, val, muxmode) (((pa) & 0x1fff)) ((val) | (muxmode))

--
2.31.1



2023-03-08 12:22:57

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: k3: Introduce debounce select mux macros

On 08/03/2023 09:43, Nishanth Menon wrote:
> Introduce the debounce select mux macros to allow folks to setup
> debounce configuration for pins. Each configuration selected maps
> to a specific timing register as documented in appropriate Technical
> Reference Manual (example:[1]).
>
> [1] AM625x TRM (section 6.1.2.2): https://www.ti.com/lit/pdf/spruiv7
> Signed-off-by: Nishanth Menon <[email protected]>
> ---
> include/dt-bindings/pinctrl/k3.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>

So these are register values? You should consider moving them out of
bindings, like we do for some other platforms.


Acked-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof


2023-03-09 14:06:35

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: k3: Introduce debounce select mux macros

On Wed, Mar 8, 2023 at 9:43 AM Nishanth Menon <[email protected]> wrote:

> Introduce the debounce select mux macros to allow folks to setup
> debounce configuration for pins. Each configuration selected maps
> to a specific timing register as documented in appropriate Technical
> Reference Manual (example:[1]).
>
> [1] AM625x TRM (section 6.1.2.2): https://www.ti.com/lit/pdf/spruiv7
> Signed-off-by: Nishanth Menon <[email protected]>

Patch applied.

Consider doing what Krzysztof recommends: move thes <dt-bindings/*.h>
down to the arch where you're using it and have them as .dtsi files instead
or something.

Yours,
Linus Walleij

2023-03-10 00:43:33

by Nishanth Menon

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: k3: Introduce debounce select mux macros

On 15:03-20230309, Linus Walleij wrote:
> On Wed, Mar 8, 2023 at 9:43 AM Nishanth Menon <[email protected]> wrote:
>
> > Introduce the debounce select mux macros to allow folks to setup
> > debounce configuration for pins. Each configuration selected maps
> > to a specific timing register as documented in appropriate Technical
> > Reference Manual (example:[1]).
> >
> > [1] AM625x TRM (section 6.1.2.2): https://www.ti.com/lit/pdf/spruiv7
> > Signed-off-by: Nishanth Menon <[email protected]>
>
> Patch applied.
>
> Consider doing what Krzysztof recommends: move thes <dt-bindings/*.h>
> down to the arch where you're using it and have them as .dtsi files instead
> or something.

Yep, that sounds like a better idea. If you are ok to drop this
patch, then lets do the cleanup first and move the pinctrl to something like
arch/arm64/boot/dts/ti/k3-pinctrl.h

--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D

2023-03-10 09:35:43

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: k3: Introduce debounce select mux macros

On Fri, Mar 10, 2023 at 1:43 AM Nishanth Menon <[email protected]> wrote:
> On 15:03-20230309, Linus Walleij wrote:
> > On Wed, Mar 8, 2023 at 9:43 AM Nishanth Menon <[email protected]> wrote:
> >
> > > Introduce the debounce select mux macros to allow folks to setup
> > > debounce configuration for pins. Each configuration selected maps
> > > to a specific timing register as documented in appropriate Technical
> > > Reference Manual (example:[1]).
> > >
> > > [1] AM625x TRM (section 6.1.2.2): https://www.ti.com/lit/pdf/spruiv7
> > > Signed-off-by: Nishanth Menon <[email protected]>
> >
> > Patch applied.
> >
> > Consider doing what Krzysztof recommends: move thes <dt-bindings/*.h>
> > down to the arch where you're using it and have them as .dtsi files instead
> > or something.
>
> Yep, that sounds like a better idea. If you are ok to drop this
> patch, then lets do the cleanup first and move the pinctrl to something like
> arch/arm64/boot/dts/ti/k3-pinctrl.h

OK let's proceed like that, I dropped it!

Yours,
Linus Walleij