1 /* SPDX-License-Identifier: GPL-2.0 */
3 * This header provides constants specific to AM33XX pinctrl bindings.
6 #ifndef _DT_BINDINGS_PINCTRL_AM33XX_H
7 #define _DT_BINDINGS_PINCTRL_AM33XX_H
9 #include <dt-bindings/pinctrl/omap.h>
11 /* am33xx specific mux bit defines */
15 #define PULL_DISABLE (1 << 3)
16 #define INPUT_EN (1 << 5)
17 #define SLEWCTRL_SLOW (1 << 6)
18 #define SLEWCTRL_FAST 0
20 /* update macro depending on INPUT_EN and PULL_ENA */
22 #undef PIN_OUTPUT_PULLUP
23 #undef PIN_OUTPUT_PULLDOWN
25 #undef PIN_INPUT_PULLUP
26 #undef PIN_INPUT_PULLDOWN
28 #define PIN_OUTPUT (PULL_DISABLE)
29 #define PIN_OUTPUT_PULLUP (PULL_UP)
30 #define PIN_OUTPUT_PULLDOWN 0
31 #define PIN_INPUT (INPUT_EN | PULL_DISABLE)
32 #define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP)
33 #define PIN_INPUT_PULLDOWN (INPUT_EN)
35 /* undef non-existing modes */
37 #undef PIN_OFF_OUTPUT_HIGH
38 #undef PIN_OFF_OUTPUT_LOW
39 #undef PIN_OFF_INPUT_PULLUP
40 #undef PIN_OFF_INPUT_PULLDOWN
41 #undef PIN_OFF_WAKEUPENABLE