xref: /openbmc/linux/include/dt-bindings/pinctrl/stm32-pinfunc.h (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
1953e5b50SAlexandre Torgue /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
2953e5b50SAlexandre Torgue /*
3953e5b50SAlexandre Torgue  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4953e5b50SAlexandre Torgue  * Author: Torgue Alexandre <alexandre.torgue@st.com> for STMicroelectronics.
5953e5b50SAlexandre Torgue  */
6953e5b50SAlexandre Torgue 
7162d58c2SAlexandre Torgue #ifndef _DT_BINDINGS_STM32_PINFUNC_H
8162d58c2SAlexandre Torgue #define _DT_BINDINGS_STM32_PINFUNC_H
9162d58c2SAlexandre Torgue 
10162d58c2SAlexandre Torgue /*  define PIN modes */
11162d58c2SAlexandre Torgue #define GPIO	0x0
12162d58c2SAlexandre Torgue #define AF0	0x1
13162d58c2SAlexandre Torgue #define AF1	0x2
14162d58c2SAlexandre Torgue #define AF2	0x3
15162d58c2SAlexandre Torgue #define AF3	0x4
16162d58c2SAlexandre Torgue #define AF4	0x5
17162d58c2SAlexandre Torgue #define AF5	0x6
18162d58c2SAlexandre Torgue #define AF6	0x7
19162d58c2SAlexandre Torgue #define AF7	0x8
20162d58c2SAlexandre Torgue #define AF8	0x9
21162d58c2SAlexandre Torgue #define AF9	0xa
22162d58c2SAlexandre Torgue #define AF10	0xb
23162d58c2SAlexandre Torgue #define AF11	0xc
24162d58c2SAlexandre Torgue #define AF12	0xd
25162d58c2SAlexandre Torgue #define AF13	0xe
26162d58c2SAlexandre Torgue #define AF14	0xf
27162d58c2SAlexandre Torgue #define AF15	0x10
28162d58c2SAlexandre Torgue #define ANALOG	0x11
29162d58c2SAlexandre Torgue 
30162d58c2SAlexandre Torgue /* define Pins number*/
31162d58c2SAlexandre Torgue #define PIN_NO(port, line)	(((port) - 'A') * 0x10 + (line))
32162d58c2SAlexandre Torgue 
33162d58c2SAlexandre Torgue #define STM32_PINMUX(port, line, mode) (((PIN_NO(port, line)) << 8) | (mode))
34162d58c2SAlexandre Torgue 
35966d9b92SAlexandre Torgue /*  package information */
36966d9b92SAlexandre Torgue #define STM32MP_PKG_AA	0x1
37966d9b92SAlexandre Torgue #define STM32MP_PKG_AB	0x2
38966d9b92SAlexandre Torgue #define STM32MP_PKG_AC	0x4
39966d9b92SAlexandre Torgue #define STM32MP_PKG_AD	0x8
40*a4564547SAlexandre Torgue #define STM32MP_PKG_AI	0x100
41*a4564547SAlexandre Torgue #define STM32MP_PKG_AK	0x400
42*a4564547SAlexandre Torgue #define STM32MP_PKG_AL	0x800
43966d9b92SAlexandre Torgue 
44162d58c2SAlexandre Torgue #endif /* _DT_BINDINGS_STM32_PINFUNC_H */
45162d58c2SAlexandre Torgue 
46