]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
e54686e4 M |
2 | /* |
3 | * This header provides constants specific to AM43XX pinctrl bindings. | |
4 | */ | |
5 | ||
6 | #ifndef _DT_BINDINGS_PINCTRL_AM43XX_H | |
7 | #define _DT_BINDINGS_PINCTRL_AM43XX_H | |
8 | ||
9 | #define MUX_MODE0 0 | |
10 | #define MUX_MODE1 1 | |
11 | #define MUX_MODE2 2 | |
12 | #define MUX_MODE3 3 | |
13 | #define MUX_MODE4 4 | |
14 | #define MUX_MODE5 5 | |
15 | #define MUX_MODE6 6 | |
16 | #define MUX_MODE7 7 | |
dfc9d3f1 | 17 | #define MUX_MODE8 8 |
92814c4a | 18 | #define MUX_MODE9 9 |
e54686e4 M |
19 | |
20 | #define PULL_DISABLE (1 << 16) | |
21 | #define PULL_UP (1 << 17) | |
22 | #define INPUT_EN (1 << 18) | |
10b21855 DG |
23 | #define SLEWCTRL_SLOW (1 << 19) |
24 | #define SLEWCTRL_FAST 0 | |
130c28da AD |
25 | #define DS0_FORCE_OFF_MODE (1 << 24) |
26 | #define DS0_INPUT (1 << 25) | |
27 | #define DS0_FORCE_OUT_HIGH (1 << 26) | |
e54686e4 | 28 | #define DS0_PULL_UP_DOWN_EN (1 << 27) |
130c28da | 29 | #define DS0_PULL_UP_SEL (1 << 28) |
b6bbf598 | 30 | #define WAKEUP_ENABLE (1 << 29) |
e54686e4 | 31 | |
130c28da AD |
32 | #define DS0_PIN_OUTPUT (DS0_FORCE_OFF_MODE) |
33 | #define DS0_PIN_OUTPUT_HIGH (DS0_FORCE_OFF_MODE | DS0_FORCE_OUT_HIGH) | |
34 | #define DS0_PIN_OUTPUT_PULLUP (DS0_FORCE_OFF_MODE | DS0_PULL_UP_DOWN_EN | DS0_PULL_UP_SEL) | |
35 | #define DS0_PIN_OUTPUT_PULLDOWN (DS0_FORCE_OFF_MODE | DS0_PULL_UP_DOWN_EN) | |
36 | #define DS0_PIN_INPUT (DS0_FORCE_OFF_MODE | DS0_INPUT) | |
37 | #define DS0_PIN_INPUT_PULLUP (DS0_FORCE_OFF_MODE | DS0_INPUT | DS0_PULL_UP_DOWN_EN | DS0_PULL_UP_SEL) | |
38 | #define DS0_PIN_INPUT_PULLDOWN (DS0_FORCE_OFF_MODE | DS0_INPUT | DS0_PULL_UP_DOWN_EN) | |
39 | ||
e54686e4 M |
40 | #define PIN_OUTPUT (PULL_DISABLE) |
41 | #define PIN_OUTPUT_PULLUP (PULL_UP) | |
42 | #define PIN_OUTPUT_PULLDOWN 0 | |
43 | #define PIN_INPUT (INPUT_EN | PULL_DISABLE) | |
44 | #define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP) | |
45 | #define PIN_INPUT_PULLDOWN (INPUT_EN) | |
46 | ||
fc63efdf JMC |
47 | /* |
48 | * Macro to allow using the absolute physical address instead of the | |
49 | * padconf registers instead of the offset from padconf base. | |
50 | */ | |
51 | #define AM4372_IOPAD(pa, val) (((pa) & 0xffff) - 0x0800) (val) | |
52 | ||
e54686e4 M |
53 | #endif |
54 |