blob: 2fbc804e1a45cea943c9241309601f941abd5d14 [file] [log] [blame]
Florian Vaussard3f2d1652013-06-03 16:12:24 +02001/*
2 * This header provides constants specific to AM33XX pinctrl bindings.
3 */
4
Florian Vaussardac25da72013-06-11 16:50:50 +02005#ifndef _DT_BINDINGS_PINCTRL_AM33XX_H
6#define _DT_BINDINGS_PINCTRL_AM33XX_H
7
Ian Campbellc5f167d2013-07-03 09:44:50 +01008#include <dt-bindings/pinctrl/omap.h>
Florian Vaussard3f2d1652013-06-03 16:12:24 +02009
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
Florian Vaussardac25da72013-06-11 16:50:50 +020041#endif
42