xref: /openbmc/u-boot/include/dt-bindings/pinctrl/stm32-pinfunc.h (revision a674313c2cebfad8e168a2011027470a2e640983)
1*a674313cSPatrick Delaunay /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
2*a674313cSPatrick Delaunay /*
3*a674313cSPatrick Delaunay  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4*a674313cSPatrick Delaunay  * Author: Torgue Alexandre <alexandre.torgue@st.com> for STMicroelectronics.
5*a674313cSPatrick Delaunay  */
6*a674313cSPatrick Delaunay 
746b1e54bSPatrice Chotard #ifndef _DT_BINDINGS_STM32_PINFUNC_H
846b1e54bSPatrice Chotard #define _DT_BINDINGS_STM32_PINFUNC_H
946b1e54bSPatrice Chotard 
1046b1e54bSPatrice Chotard /*  define PIN modes */
1146b1e54bSPatrice Chotard #define GPIO	0x0
1246b1e54bSPatrice Chotard #define AF0	0x1
1346b1e54bSPatrice Chotard #define AF1	0x2
1446b1e54bSPatrice Chotard #define AF2	0x3
1546b1e54bSPatrice Chotard #define AF3	0x4
1646b1e54bSPatrice Chotard #define AF4	0x5
1746b1e54bSPatrice Chotard #define AF5	0x6
1846b1e54bSPatrice Chotard #define AF6	0x7
1946b1e54bSPatrice Chotard #define AF7	0x8
2046b1e54bSPatrice Chotard #define AF8	0x9
2146b1e54bSPatrice Chotard #define AF9	0xa
2246b1e54bSPatrice Chotard #define AF10	0xb
2346b1e54bSPatrice Chotard #define AF11	0xc
2446b1e54bSPatrice Chotard #define AF12	0xd
2546b1e54bSPatrice Chotard #define AF13	0xe
2646b1e54bSPatrice Chotard #define AF14	0xf
2746b1e54bSPatrice Chotard #define AF15	0x10
2846b1e54bSPatrice Chotard #define ANALOG	0x11
2946b1e54bSPatrice Chotard 
3046b1e54bSPatrice Chotard /* define Pins number*/
3146b1e54bSPatrice Chotard #define PIN_NO(port, line)	(((port) - 'A') * 0x10 + (line))
3246b1e54bSPatrice Chotard 
3346b1e54bSPatrice Chotard #define STM32_PINMUX(port, line, mode) (((PIN_NO(port, line)) << 8) | (mode))
3446b1e54bSPatrice Chotard 
3546b1e54bSPatrice Chotard #endif /* _DT_BINDINGS_STM32_PINFUNC_H */
3646b1e54bSPatrice Chotard 
37