/*
 * Copyright (c) 2016 Open-RnD Sp. z o.o.
 * Copyright (c) 2016 BayLibre, SAS
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#ifndef _STM32L4X_PINMUX_H_
#define _STM32L4X_PINMUX_H_

/**
 * @file Header for STM32L4X pin multiplexing helper
 */

/* Port A */
#define STM32L4X_PINMUX_FUNC_PA0_PWM2_CH1   STM32_PINMUX_ALT_FUNC_1 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA2_USART2_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA3_USART2_RX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PA4_SPI1_NSS   STM32_PINMUX_ALT_FUNC_5 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA5_SPI1_SCK   STM32_PINMUX_ALT_FUNC_5 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA6_SPI1_MISO  STM32_PINMUX_ALT_FUNC_5 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA7_SPI1_MOSI  STM32_PINMUX_ALT_FUNC_5 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA9_USART1_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA10_USART1_RX STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PA15_PWM2_CH1  STM32_PINMUX_ALT_FUNC_1 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PA15_USART2_RX STM32_PINMUX_ALT_FUNC_3 | STM32_PUPDR_NO_PULL

/* Port B */
#define STM32L4X_PINMUX_FUNC_PB3_SPI1_SCK   STM32_PINMUX_ALT_FUNC_5 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB3_SPI3_SCK   STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB4_SPI3_MISO  STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB5_SPI3_MOSI  STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB6_I2C1_SCL   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB6_USART1_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB7_I2C1_SDA   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB7_USART1_RX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PB8_I2C1_SCL   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB9_I2C1_SDA   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB10_I2C2_SCL  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB10_USART3_TX STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PB11_I2C2_SDA  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB11_USART3_RX STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PB13_I2C2_SCL  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PB14_I2C2_SDA  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP

/* Port C */
#define STM32L4X_PINMUX_FUNC_PC0_I2C3_SCL   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PC1_I2C3_SDA   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PC4_USART3_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PC5_USART3_RX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PC10_SPI3_SCK  STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PC10_USART3_TX STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PC11_SPI3_MISO STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PC11_USART3_RX STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PC12_SPI3_MOSI STM32_PINMUX_ALT_FUNC_6 | STM32_PUSHPULL_NOPULL

/* Port D */
#define STM32L4X_PINMUX_FUNC_PD5_USART2_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PD6_USART2_RX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PD8_USART3_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PD9_USART3_RX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL

/* Port F */
#define STM32L4X_PINMUX_FUNC_PF1_I2C3_SCL   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PF0_I2C3_SDA   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP

/* Port G */
#define STM32L4X_PINMUX_FUNC_PG7_I2C3_SCL   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PG8_I2C3_SDA   STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PG9_USART1_TX  STM32_PINMUX_ALT_FUNC_7 | STM32_PUSHPULL_NOPULL
#define STM32L4X_PINMUX_FUNC_PG10_USART1_RX STM32_PINMUX_ALT_FUNC_7 | STM32_PUPDR_NO_PULL
#define STM32L4X_PINMUX_FUNC_PG14_I2C1_SCL  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP
#define STM32L4X_PINMUX_FUNC_PG13_I2C1_SDA  STM32_PINMUX_ALT_FUNC_4 | STM32_OPENDRAIN_PULLUP

#endif /* _STM32L4X_PINMUX_H_ */
