boards: new px4_fmu-v6c board support (#19544)

This commit is contained in:
David Sidrane
2022-05-20 12:49:06 -07:00
committed by Daniel Agar
parent 8e789bcc7f
commit 21567ca187
34 changed files with 3485 additions and 1 deletions
@@ -92,7 +92,13 @@ enum Timer {
Timer13,
Timer14,
#ifdef STM32_TIM15_BASE
Timer15
Timer15,
#endif
#ifdef STM32_TIM16_BASE
Timer16,
#endif
#ifdef STM32_TIM17_BASE
Timer17
#endif
};
enum Channel {
@@ -161,6 +167,16 @@ static inline constexpr uint32_t timerBaseRegister(Timer::Timer timer)
case Timer::Timer15: return STM32_TIM15_BASE;
#endif
#ifdef STM32_TIM16_BASE
case Timer::Timer16: return STM32_TIM16_BASE;
#endif
#ifdef STM32_TIM17_BASE
case Timer::Timer17: return STM32_TIM17_BASE;
#endif
default: break;
}
@@ -86,6 +86,8 @@ static inline constexpr uint32_t getTimerUpdateDMAMap(Timer::Timer timer, const
case Timer::Timer13:
case Timer::Timer14:
case Timer::Timer15:
case Timer::Timer16:
case Timer::Timer17:
break;
}
@@ -49,6 +49,8 @@ static inline constexpr timer_io_channels_t initIOTimerGPIOInOut(Timer::TimerCha
switch (timer.timer) {
case Timer::Timer1:
case Timer::Timer2:
case Timer::Timer16:
case Timer::Timer17:
gpio_af = GPIO_AF1;
break;
@@ -274,6 +276,28 @@ static inline constexpr io_timers_t initIOTimer(Timer::Timer timer, DMA dshot_dm
ret.vectorno = STM32_IRQ_TIM15;
#ifdef CONFIG_STM32_TIM15
nuttx_config_timer_enabled = true;
#endif
break;
case Timer::Timer16:
ret.base = STM32_TIM16_BASE;
ret.clock_register = STM32_RCC_APB2ENR;
ret.clock_bit = RCC_APB2ENR_TIM16EN;
ret.clock_freq = STM32_APB2_TIM16_CLKIN;
ret.vectorno = STM32_IRQ_TIM16;
#ifdef CONFIG_STM32_TIM16
nuttx_config_timer_enabled = true;
#endif
break;
case Timer::Timer17:
ret.base = STM32_TIM17_BASE;
ret.clock_register = STM32_RCC_APB2ENR;
ret.clock_bit = RCC_APB2ENR_TIM17EN;
ret.clock_freq = STM32_APB2_TIM17_CLKIN;
ret.vectorno = STM32_IRQ_TIM17;
#ifdef CONFIG_STM32_TIM17
nuttx_config_timer_enabled = true;
#endif
break;
}