162306a36Sopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
462306a36Sopenharmony_ci * Author: Torgue Alexandre <alexandre.torgue@st.com> for STMicroelectronics.
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#ifndef _DT_BINDINGS_STM32_PINFUNC_H
862306a36Sopenharmony_ci#define _DT_BINDINGS_STM32_PINFUNC_H
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci/*  define PIN modes */
1162306a36Sopenharmony_ci#define GPIO	0x0
1262306a36Sopenharmony_ci#define AF0	0x1
1362306a36Sopenharmony_ci#define AF1	0x2
1462306a36Sopenharmony_ci#define AF2	0x3
1562306a36Sopenharmony_ci#define AF3	0x4
1662306a36Sopenharmony_ci#define AF4	0x5
1762306a36Sopenharmony_ci#define AF5	0x6
1862306a36Sopenharmony_ci#define AF6	0x7
1962306a36Sopenharmony_ci#define AF7	0x8
2062306a36Sopenharmony_ci#define AF8	0x9
2162306a36Sopenharmony_ci#define AF9	0xa
2262306a36Sopenharmony_ci#define AF10	0xb
2362306a36Sopenharmony_ci#define AF11	0xc
2462306a36Sopenharmony_ci#define AF12	0xd
2562306a36Sopenharmony_ci#define AF13	0xe
2662306a36Sopenharmony_ci#define AF14	0xf
2762306a36Sopenharmony_ci#define AF15	0x10
2862306a36Sopenharmony_ci#define ANALOG	0x11
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci/* define Pins number*/
3162306a36Sopenharmony_ci#define PIN_NO(port, line)	(((port) - 'A') * 0x10 + (line))
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci#define STM32_PINMUX(port, line, mode) (((PIN_NO(port, line)) << 8) | (mode))
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci/*  package information */
3662306a36Sopenharmony_ci#define STM32MP_PKG_AA	0x1
3762306a36Sopenharmony_ci#define STM32MP_PKG_AB	0x2
3862306a36Sopenharmony_ci#define STM32MP_PKG_AC	0x4
3962306a36Sopenharmony_ci#define STM32MP_PKG_AD	0x8
4062306a36Sopenharmony_ci#define STM32MP_PKG_AI	0x100
4162306a36Sopenharmony_ci#define STM32MP_PKG_AK	0x400
4262306a36Sopenharmony_ci#define STM32MP_PKG_AL	0x800
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci#endif /* _DT_BINDINGS_STM32_PINFUNC_H */
4562306a36Sopenharmony_ci
46