From 0e52f03b5bdca0f9003ec1a1360ccbfbbb846a01 Mon Sep 17 00:00:00 2001 From: jimmyjon711 Date: Wed, 18 Jun 2025 08:05:17 -0700 Subject: [PATCH] stm32: Adding more hardware pwm capable pins for STM32Hx series chips (#6965) Signed-off-by: Jim Madill --- src/stm32/hard_pwm.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/stm32/hard_pwm.c b/src/stm32/hard_pwm.c index d9be268e..6ed27a30 100644 --- a/src/stm32/hard_pwm.c +++ b/src/stm32/hard_pwm.c @@ -230,6 +230,14 @@ static const struct gpio_pwm_info pwm_regs[] = { {TIM15, GPIO('F', 12), 1, GPIO_FUNCTION(0)}, {TIM15, GPIO('F', 13), 2, GPIO_FUNCTION(0)}, #elif CONFIG_MACH_STM32H7 + {TIM1, GPIO('A', 8), 1, GPIO_FUNCTION(1)}, + {TIM1, GPIO('E', 9), 1, GPIO_FUNCTION(1)}, + {TIM1, GPIO('A', 9), 2, GPIO_FUNCTION(1)}, + {TIM1, GPIO('E', 11), 2, GPIO_FUNCTION(1)}, + {TIM1, GPIO('A', 10), 3, GPIO_FUNCTION(1)}, + {TIM1, GPIO('E', 13), 3, GPIO_FUNCTION(1)}, + {TIM1, GPIO('A', 11), 4, GPIO_FUNCTION(1)}, + {TIM1, GPIO('E', 14), 4, GPIO_FUNCTION(1)}, {TIM2, GPIO('A', 0), 1, GPIO_FUNCTION(1)}, {TIM2, GPIO('A', 5), 1, GPIO_FUNCTION(1)}, {TIM2, GPIO('A', 15), 1, GPIO_FUNCTION(1)}, @@ -237,6 +245,8 @@ static const struct gpio_pwm_info pwm_regs[] = { {TIM2, GPIO('A', 1), 2, GPIO_FUNCTION(1)}, {TIM2, GPIO('B', 10), 3, GPIO_FUNCTION(1)}, {TIM2, GPIO('A', 2), 3, GPIO_FUNCTION(1)}, + {TIM2, GPIO('A', 3), 4, GPIO_FUNCTION(1)}, + {TIM2, GPIO('B', 11), 4, GPIO_FUNCTION(1)}, {TIM3, GPIO('C', 6), 1, GPIO_FUNCTION(2)}, {TIM3, GPIO('B', 4), 1, GPIO_FUNCTION(2)}, {TIM3, GPIO('A', 6), 1, GPIO_FUNCTION(2)}, @@ -245,18 +255,27 @@ static const struct gpio_pwm_info pwm_regs[] = { {TIM3, GPIO('A', 7), 2, GPIO_FUNCTION(2)}, {TIM3, GPIO('C', 8), 3, GPIO_FUNCTION(2)}, {TIM3, GPIO('B', 0), 3, GPIO_FUNCTION(2)}, + {TIM3, GPIO('B', 1), 4, GPIO_FUNCTION(2)}, + {TIM3, GPIO('C', 9), 4, GPIO_FUNCTION(2)}, {TIM4, GPIO('D', 12), 1, GPIO_FUNCTION(2)}, {TIM4, GPIO('B', 6), 1, GPIO_FUNCTION(2)}, {TIM4, GPIO('D', 13), 2, GPIO_FUNCTION(2)}, {TIM4, GPIO('B', 7), 2, GPIO_FUNCTION(2)}, {TIM4, GPIO('D', 14), 3, GPIO_FUNCTION(2)}, {TIM4, GPIO('B', 8), 3, GPIO_FUNCTION(2)}, + {TIM4, GPIO('B', 9), 4, GPIO_FUNCTION(2)}, + {TIM4, GPIO('D', 15), 4, GPIO_FUNCTION(2)}, {TIM5, GPIO('H', 10), 1, GPIO_FUNCTION(2)}, {TIM5, GPIO('A', 0), 1, GPIO_FUNCTION(2)}, {TIM5, GPIO('H', 11), 2, GPIO_FUNCTION(2)}, {TIM5, GPIO('A', 1), 2, GPIO_FUNCTION(2)}, {TIM5, GPIO('H', 12), 3, GPIO_FUNCTION(2)}, {TIM5, GPIO('A', 2), 3, GPIO_FUNCTION(2)}, + {TIM5, GPIO('A', 3), 4, GPIO_FUNCTION(2)}, + {TIM8, GPIO('C', 6), 1, GPIO_FUNCTION(3)}, + {TIM8, GPIO('C', 7), 2, GPIO_FUNCTION(3)}, + {TIM8, GPIO('C', 8), 3, GPIO_FUNCTION(3)}, + {TIM8, GPIO('C', 9), 4, GPIO_FUNCTION(3)}, {TIM12, GPIO('H', 6), 1, GPIO_FUNCTION(2)}, {TIM12, GPIO('B', 14), 1, GPIO_FUNCTION(2)}, {TIM12, GPIO('H', 9), 2, GPIO_FUNCTION(2)}, @@ -265,8 +284,11 @@ static const struct gpio_pwm_info pwm_regs[] = { {TIM13, GPIO('A', 6), 1, GPIO_FUNCTION(9)}, {TIM14, GPIO('F', 9), 1, GPIO_FUNCTION(9)}, {TIM14, GPIO('A', 7), 1, GPIO_FUNCTION(9)}, + {TIM15, GPIO('C', 12), 1, GPIO_FUNCTION(2)}, {TIM15, GPIO('E', 5), 1, GPIO_FUNCTION(4)}, {TIM15, GPIO('A', 2), 1, GPIO_FUNCTION(4)}, + {TIM15, GPIO('A', 3), 2, GPIO_FUNCTION(4)}, + {TIM15, GPIO('E', 6), 2, GPIO_FUNCTION(4)}, {TIM16, GPIO('F', 6), 1, GPIO_FUNCTION(1)}, {TIM16, GPIO('B', 8), 1, GPIO_FUNCTION(1)}, {TIM17, GPIO('F', 7), 1, GPIO_FUNCTION(1)},