blob: e2f1f1b44d68024829d4f75f0d3c6144b27b2e9d [file] [log] [blame]
Yann Gautier66386952018-07-05 16:49:51 +02001/* 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#endif /* _DT_BINDINGS_STM32_PINFUNC_H */