arm64: dts: ti: k3-pinctrl: Introduce debounce select mux macros
authorNishanth Menon <nm@ti.com>
Mon, 19 Jun 2023 13:16:20 +0000 (08:16 -0500)
committerNishanth Menon <nm@ti.com>
Wed, 2 Aug 2023 04:42:44 +0000 (23:42 -0500)
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

Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com>
Link: https://lore.kernel.org/r/20230619131620.3286650-1-nm@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
arch/arm64/boot/dts/ti/k3-pinctrl.h

index c97548a..6004e09 100644 (file)
@@ -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)
 #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))