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