Linux-libre 5.7.5-gnu
[librecmc/linux-libre.git] / include / dt-bindings / pinctrl / stm32-pinfunc.h
1 /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
2 /*
3  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4  * Author: Torgue Alexandre <alexandre.torgue@st.com> for STMicroelectronics.
5  */
6
7 #ifndef _DT_BINDINGS_STM32_PINFUNC_H
8 #define _DT_BINDINGS_STM32_PINFUNC_H
9
10 /*  define PIN modes */
11 #define GPIO    0x0
12 #define AF0     0x1
13 #define AF1     0x2
14 #define AF2     0x3
15 #define AF3     0x4
16 #define AF4     0x5
17 #define AF5     0x6
18 #define AF6     0x7
19 #define AF7     0x8
20 #define AF8     0x9
21 #define AF9     0xa
22 #define AF10    0xb
23 #define AF11    0xc
24 #define AF12    0xd
25 #define AF13    0xe
26 #define AF14    0xf
27 #define AF15    0x10
28 #define ANALOG  0x11
29
30 /* define Pins number*/
31 #define PIN_NO(port, line)      (((port) - 'A') * 0x10 + (line))
32
33 #define STM32_PINMUX(port, line, mode) (((PIN_NO(port, line)) << 8) | (mode))
34
35 /*  package information */
36 #define STM32MP_PKG_AA  0x1
37 #define STM32MP_PKG_AB  0x2
38 #define STM32MP_PKG_AC  0x4
39 #define STM32MP_PKG_AD  0x8
40
41 #endif /* _DT_BINDINGS_STM32_PINFUNC_H */
42