blob: 292c2ebf58ddbca75b8b96053188305409e5383f [file] [log] [blame]
Mugunthan V Nf77f9e72015-09-28 16:17:51 +05301/*
2 * This header provides constants specific to AM43XX pinctrl bindings.
3 */
4
5#ifndef _DT_BINDINGS_PINCTRL_AM43XX_H
6#define _DT_BINDINGS_PINCTRL_AM43XX_H
7
8#define MUX_MODE0 0
9#define MUX_MODE1 1
10#define MUX_MODE2 2
11#define MUX_MODE3 3
12#define MUX_MODE4 4
13#define MUX_MODE5 5
14#define MUX_MODE6 6
15#define MUX_MODE7 7
16#define MUX_MODE8 8
17
18#define PULL_DISABLE (1 << 16)
19#define PULL_UP (1 << 17)
20#define INPUT_EN (1 << 18)
21#define SLEWCTRL_SLOW (1 << 19)
22#define SLEWCTRL_FAST 0
23#define DS0_PULL_UP_DOWN_EN (1 << 27)
24#define WAKEUP_ENABLE (1 << 29)
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
Lokesh Vutla67fb6e02016-05-16 11:11:17 +053033/*
34 * Macro to allow using the absolute physical address instead of the
35 * padconf registers instead of the offset from padconf base.
36 */
37#define AM4372_IOPAD(pa, val) (((pa) & 0xffff) - 0x0800) (val)
38
Mugunthan V Nf77f9e72015-09-28 16:17:51 +053039#endif