1 /*
2  * This header provides constants specific to AM33XX pinctrl bindings.
3  */
4 
5 #ifndef _DT_BINDINGS_PINCTRL_AM33XX_H
6 #define _DT_BINDINGS_PINCTRL_AM33XX_H
7 
8 #include <dt-bindings/pinctrl/omap.h>
9 
10 /* am33xx specific mux bit defines */
11 #undef PULL_ENA
12 #undef INPUT_EN
13 
14 #define PULL_DISABLE		(1 << 3)
15 #define INPUT_EN		(1 << 5)
16 #define SLEWCTRL_FAST		(1 << 6)
17 
18 /* update macro depending on INPUT_EN and PULL_ENA */
19 #undef PIN_OUTPUT
20 #undef PIN_OUTPUT_PULLUP
21 #undef PIN_OUTPUT_PULLDOWN
22 #undef PIN_INPUT
23 #undef PIN_INPUT_PULLUP
24 #undef PIN_INPUT_PULLDOWN
25 
26 #define PIN_OUTPUT		(PULL_DISABLE)
27 #define PIN_OUTPUT_PULLUP	(PULL_UP)
28 #define PIN_OUTPUT_PULLDOWN	0
29 #define PIN_INPUT		(INPUT_EN | PULL_DISABLE)
30 #define PIN_INPUT_PULLUP	(INPUT_EN | PULL_UP)
31 #define PIN_INPUT_PULLDOWN	(INPUT_EN)
32 
33 /* undef non-existing modes */
34 #undef PIN_OFF_NONE
35 #undef PIN_OFF_OUTPUT_HIGH
36 #undef PIN_OFF_OUTPUT_LOW
37 #undef PIN_OFF_INPUT_PULLUP
38 #undef PIN_OFF_INPUT_PULLDOWN
39 #undef PIN_OFF_WAKEUPENABLE
40 
41 #endif
42 
43