From 3ebb412fa9a5dfcaacf46d6aee31cb1389c93956 Mon Sep 17 00:00:00 2001 From: Jorge Ramirez-Ortiz Date: Wed, 24 May 2017 15:10:43 +0200 Subject: [PATCH] pinmux: stm32f4: Add SPI1 pins on PA4, PA5, PA6 & PA7 Signed-off-by: Jorge Ramirez-Ortiz Signed-off-by: Neil Armstrong --- arch/arm/soc/st_stm32/stm32f4/soc_pinmux.c | 24 ++++++++++++++++++++++ drivers/pinmux/stm32/pinmux_stm32f4.h | 8 ++++++++ 2 files changed, 32 insertions(+) diff --git a/arch/arm/soc/st_stm32/stm32f4/soc_pinmux.c b/arch/arm/soc/st_stm32/stm32f4/soc_pinmux.c index 53c87bd2e17..b6319098779 100644 --- a/arch/arm/soc/st_stm32/stm32f4/soc_pinmux.c +++ b/arch/arm/soc/st_stm32/stm32f4/soc_pinmux.c @@ -135,6 +135,26 @@ static const stm32_pin_func_t pin_pa3_funcs[] = { PINMUX_UART(PA3, UART2, RX) }; +static const stm32_pin_func_t pin_pa4_funcs[] = { + [STM32F4_PINMUX_FUNC_PA4_SPI1_NSS - 1] = + STM32F4X_PIN_CONFIG_AF_PUSH_PULL, +}; + +static const stm32_pin_func_t pin_pa5_funcs[] = { + [STM32F4_PINMUX_FUNC_PA5_SPI1_SCK - 1] = + STM32F4X_PIN_CONFIG_AF_PUSH_PULL, +}; + +static const stm32_pin_func_t pin_pa6_funcs[] = { + [STM32F4_PINMUX_FUNC_PA6_SPI1_MISO - 1] = + STM32F4X_PIN_CONFIG_AF_PUSH_PULL, +}; + +static const stm32_pin_func_t pin_pa7_funcs[] = { + [STM32F4_PINMUX_FUNC_PA7_SPI1_MOSI - 1] = + STM32F4X_PIN_CONFIG_AF_PUSH_PULL, +}; + static const stm32_pin_func_t pin_pa8_funcs[] = { PINMUX_UART(PA8, UART7, RX) PINMUX_I2C(PA8, I2C3, SCL) @@ -389,6 +409,10 @@ static const struct stm32_pinmux_conf pins[] = { STM32_PIN_CONF(STM32_PIN_PA1, pin_pa1_funcs), STM32_PIN_CONF(STM32_PIN_PA2, pin_pa2_funcs), STM32_PIN_CONF(STM32_PIN_PA3, pin_pa3_funcs), + STM32_PIN_CONF(STM32_PIN_PA4, pin_pa4_funcs), + STM32_PIN_CONF(STM32_PIN_PA5, pin_pa5_funcs), + STM32_PIN_CONF(STM32_PIN_PA6, pin_pa6_funcs), + STM32_PIN_CONF(STM32_PIN_PA7, pin_pa7_funcs), STM32_PIN_CONF(STM32_PIN_PA8, pin_pa8_funcs), STM32_PIN_CONF(STM32_PIN_PA9, pin_pa9_funcs), STM32_PIN_CONF(STM32_PIN_PA10, pin_pa10_funcs), diff --git a/drivers/pinmux/stm32/pinmux_stm32f4.h b/drivers/pinmux/stm32/pinmux_stm32f4.h index 0e9474bfb8f..fcab1688b3c 100644 --- a/drivers/pinmux/stm32/pinmux_stm32f4.h +++ b/drivers/pinmux/stm32/pinmux_stm32f4.h @@ -21,6 +21,14 @@ #define STM32F4_PINMUX_FUNC_PA3_USART2_RX STM32_PINMUX_FUNC_ALT_7 +#define STM32F4_PINMUX_FUNC_PA4_SPI1_NSS STM32_PINMUX_FUNC_ALT_5 + +#define STM32F4_PINMUX_FUNC_PA5_SPI1_SCK STM32_PINMUX_FUNC_ALT_5 + +#define STM32F4_PINMUX_FUNC_PA6_SPI1_MISO STM32_PINMUX_FUNC_ALT_5 + +#define STM32F4_PINMUX_FUNC_PA7_SPI1_MOSI STM32_PINMUX_FUNC_ALT_5 + #define STM32F4_PINMUX_FUNC_PA8_I2C3_SCL STM32_PINMUX_FUNC_ALT_4 #define STM32F4_PINMUX_FUNC_PA8_UART7_RX STM32_PINMUX_FUNC_ALT_8