@ -1,5 +1,5 @@
/*
/*
ChibiOS - Copyright ( C ) 2006. .2018 Giovanni Di Sirio
ChibiOS - Copyright ( C ) 2006. .2020 Giovanni Di Sirio
Licensed under the Apache License , Version 2.0 ( the " License " ) ;
Licensed under the Apache License , Version 2.0 ( the " License " ) ;
you may not use this file except in compliance with the License .
you may not use this file except in compliance with the License .
@ -32,11 +32,15 @@
*/
*/
# define STM32F4xx_MCUCONF
# define STM32F4xx_MCUCONF
# define STM32F446_MCUCONF
/*
/*
* HAL driver system settings .
* HAL driver system settings .
*/
*/
# define STM32_NO_INIT FALSE
# define STM32_NO_INIT FALSE
# define STM32_PVD_ENABLE FALSE
# define STM32_PLS STM32_PLS_LEV0
# define STM32_BKPRAM_ENABLE FALSE
# define STM32_HSI_ENABLED FALSE
# define STM32_HSI_ENABLED FALSE
# define STM32_LSI_ENABLED TRUE
# define STM32_LSI_ENABLED TRUE
# define STM32_HSE_ENABLED TRUE
# define STM32_HSE_ENABLED TRUE
@ -70,9 +74,6 @@
# define STM32_SAI1SEL STM32_SAI2SEL_PLLR
# define STM32_SAI1SEL STM32_SAI2SEL_PLLR
# define STM32_SAI2SEL STM32_SAI2SEL_PLLR
# define STM32_SAI2SEL STM32_SAI2SEL_PLLR
# define STM32_CK48MSEL STM32_CK48MSEL_PLLALT
# define STM32_CK48MSEL STM32_CK48MSEL_PLLALT
# define STM32_PVD_ENABLE FALSE
# define STM32_PLS STM32_PLS_LEV0
# define STM32_BKPRAM_ENABLE FALSE
/*
/*
* IRQ system settings .
* IRQ system settings .
@ -92,6 +93,30 @@
# define STM32_IRQ_EXTI21_PRIORITY 15
# define STM32_IRQ_EXTI21_PRIORITY 15
# define STM32_IRQ_EXTI22_PRIORITY 15
# define STM32_IRQ_EXTI22_PRIORITY 15
# define STM32_IRQ_TIM1_BRK_TIM9_PRIORITY 7
# define STM32_IRQ_TIM1_UP_TIM10_PRIORITY 7
# define STM32_IRQ_TIM1_TRGCO_TIM11_PRIORITY 7
# define STM32_IRQ_TIM1_CC_PRIORITY 7
# define STM32_IRQ_TIM2_PRIORITY 7
# define STM32_IRQ_TIM3_PRIORITY 7
# define STM32_IRQ_TIM4_PRIORITY 7
# define STM32_IRQ_TIM5_PRIORITY 7
# define STM32_IRQ_TIM6_PRIORITY 7
# define STM32_IRQ_TIM7_PRIORITY 7
# define STM32_IRQ_TIM8_BRK_TIM12_PRIORITY 7
# define STM32_IRQ_TIM8_UP_TIM13_PRIORITY 7
# define STM32_IRQ_TIM8_TRGCO_TIM14_PRIORITY 7
# define STM32_IRQ_TIM8_CC_PRIORITY 7
# define STM32_IRQ_USART1_PRIORITY 12
# define STM32_IRQ_USART2_PRIORITY 12
# define STM32_IRQ_USART3_PRIORITY 12
# define STM32_IRQ_UART4_PRIORITY 12
# define STM32_IRQ_UART5_PRIORITY 12
# define STM32_IRQ_USART6_PRIORITY 12
# define STM32_IRQ_UART7_PRIORITY 12
# define STM32_IRQ_UART8_PRIORITY 12
/*
/*
* ADC driver system settings .
* ADC driver system settings .
*/
*/
@ -143,21 +168,11 @@
# define STM32_GPT_USE_TIM7 FALSE
# define STM32_GPT_USE_TIM7 FALSE
# define STM32_GPT_USE_TIM8 FALSE
# define STM32_GPT_USE_TIM8 FALSE
# define STM32_GPT_USE_TIM9 FALSE
# define STM32_GPT_USE_TIM9 FALSE
# define STM32_GPT_USE_TIM10 FALSE
# define STM32_GPT_USE_TIM11 FALSE
# define STM32_GPT_USE_TIM11 FALSE
# define STM32_GPT_USE_TIM12 FALSE
# define STM32_GPT_USE_TIM12 FALSE
# define STM32_GPT_USE_TIM13 FALSE
# define STM32_GPT_USE_TIM14 FALSE
# define STM32_GPT_USE_TIM14 FALSE
# define STM32_GPT_TIM1_IRQ_PRIORITY 7
# define STM32_GPT_TIM2_IRQ_PRIORITY 7
# define STM32_GPT_TIM3_IRQ_PRIORITY 7
# define STM32_GPT_TIM4_IRQ_PRIORITY 7
# define STM32_GPT_TIM5_IRQ_PRIORITY 7
# define STM32_GPT_TIM6_IRQ_PRIORITY 7
# define STM32_GPT_TIM7_IRQ_PRIORITY 7
# define STM32_GPT_TIM8_IRQ_PRIORITY 7
# define STM32_GPT_TIM9_IRQ_PRIORITY 7
# define STM32_GPT_TIM11_IRQ_PRIORITY 7
# define STM32_GPT_TIM12_IRQ_PRIORITY 7
# define STM32_GPT_TIM14_IRQ_PRIORITY 7
/*
/*
* I2C driver system settings .
* I2C driver system settings .
@ -205,13 +220,11 @@
# define STM32_ICU_USE_TIM5 FALSE
# define STM32_ICU_USE_TIM5 FALSE
# define STM32_ICU_USE_TIM8 FALSE
# define STM32_ICU_USE_TIM8 FALSE
# define STM32_ICU_USE_TIM9 FALSE
# define STM32_ICU_USE_TIM9 FALSE
# define STM32_ICU_TIM1_IRQ_PRIORITY 7
# define STM32_ICU_USE_TIM10 FALSE
# define STM32_ICU_TIM2_IRQ_PRIORITY 7
# define STM32_ICU_USE_TIM11 FALSE
# define STM32_ICU_TIM3_IRQ_PRIORITY 7
# define STM32_ICU_USE_TIM12 FALSE
# define STM32_ICU_TIM4_IRQ_PRIORITY 7
# define STM32_ICU_USE_TIM13 FALSE
# define STM32_ICU_TIM5_IRQ_PRIORITY 7
# define STM32_ICU_USE_TIM14 FALSE
# define STM32_ICU_TIM8_IRQ_PRIORITY 7
# define STM32_ICU_TIM9_IRQ_PRIORITY 7
/*
/*
* MAC driver system settings .
* MAC driver system settings .
@ -227,7 +240,6 @@
/*
/*
* PWM driver system settings .
* PWM driver system settings .
*/
*/
# define STM32_PWM_USE_ADVANCED FALSE
# define STM32_PWM_USE_TIM1 FALSE
# define STM32_PWM_USE_TIM1 FALSE
# define STM32_PWM_USE_TIM2 FALSE
# define STM32_PWM_USE_TIM2 FALSE
# define STM32_PWM_USE_TIM3 FALSE
# define STM32_PWM_USE_TIM3 FALSE
@ -235,13 +247,19 @@
# define STM32_PWM_USE_TIM5 FALSE
# define STM32_PWM_USE_TIM5 FALSE
# define STM32_PWM_USE_TIM8 FALSE
# define STM32_PWM_USE_TIM8 FALSE
# define STM32_PWM_USE_TIM9 FALSE
# define STM32_PWM_USE_TIM9 FALSE
# define STM32_PWM_TIM1_IRQ_PRIORITY 7
# define STM32_PWM_USE_TIM10 FALSE
# define STM32_PWM_TIM2_IRQ_PRIORITY 7
# define STM32_PWM_USE_TIM11 FALSE
# define STM32_PWM_TIM3_IRQ_PRIORITY 7
# define STM32_PWM_USE_TIM12 FALSE
# define STM32_PWM_TIM4_IRQ_PRIORITY 7
# define STM32_PWM_USE_TIM13 FALSE
# define STM32_PWM_TIM5_IRQ_PRIORITY 7
# define STM32_PWM_USE_TIM14 FALSE
# define STM32_PWM_TIM8_IRQ_PRIORITY 7
# define STM32_PWM_TIM9_IRQ_PRIORITY 7
/*
* RTC driver system settings .
*/
# define STM32_RTC_PRESA_VALUE 32
# define STM32_RTC_PRESS_VALUE 1024
# define STM32_RTC_CR_INIT 0
# define STM32_RTC_TAMPCR_INIT 0
/*
/*
* SDC driver system settings .
* SDC driver system settings .
@ -265,14 +283,6 @@
# define STM32_SERIAL_USE_USART6 FALSE
# define STM32_SERIAL_USE_USART6 FALSE
# define STM32_SERIAL_USE_UART7 FALSE
# define STM32_SERIAL_USE_UART7 FALSE
# define STM32_SERIAL_USE_UART8 FALSE
# define STM32_SERIAL_USE_UART8 FALSE
# define STM32_SERIAL_USART1_PRIORITY 12
# define STM32_SERIAL_USART2_PRIORITY 12
# define STM32_SERIAL_USART3_PRIORITY 12
# define STM32_SERIAL_UART4_PRIORITY 12
# define STM32_SERIAL_UART5_PRIORITY 12
# define STM32_SERIAL_USART6_PRIORITY 12
# define STM32_SERIAL_UART7_PRIORITY 12
# define STM32_SERIAL_UART8_PRIORITY 12
/*
/*
* SPI driver system settings .
* SPI driver system settings .
@ -281,6 +291,8 @@
# define STM32_SPI_USE_SPI2 FALSE
# define STM32_SPI_USE_SPI2 FALSE
# define STM32_SPI_USE_SPI3 FALSE
# define STM32_SPI_USE_SPI3 FALSE
# define STM32_SPI_USE_SPI4 FALSE
# define STM32_SPI_USE_SPI4 FALSE
# define STM32_SPI_USE_SPI5 FALSE
# define STM32_SPI_USE_SPI6 FALSE
# define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0)
# define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0)
# define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3)
# define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3)
# define STM32_SPI_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3)
# define STM32_SPI_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3)
@ -289,14 +301,22 @@
# define STM32_SPI_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7)
# define STM32_SPI_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7)
# define STM32_SPI_SPI4_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0)
# define STM32_SPI_SPI4_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0)
# define STM32_SPI_SPI4_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 1)
# define STM32_SPI_SPI4_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 1)
# define STM32_SPI_SPI5_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3)
# define STM32_SPI_SPI5_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 4)
# define STM32_SPI_SPI6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 6)
# define STM32_SPI_SPI6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 5)
# define STM32_SPI_SPI1_DMA_PRIORITY 1
# define STM32_SPI_SPI1_DMA_PRIORITY 1
# define STM32_SPI_SPI2_DMA_PRIORITY 1
# define STM32_SPI_SPI2_DMA_PRIORITY 1
# define STM32_SPI_SPI3_DMA_PRIORITY 1
# define STM32_SPI_SPI3_DMA_PRIORITY 1
# define STM32_SPI_SPI4_DMA_PRIORITY 1
# define STM32_SPI_SPI4_DMA_PRIORITY 1
# define STM32_SPI_SPI5_DMA_PRIORITY 1
# define STM32_SPI_SPI6_DMA_PRIORITY 1
# define STM32_SPI_SPI1_IRQ_PRIORITY 10
# define STM32_SPI_SPI1_IRQ_PRIORITY 10
# define STM32_SPI_SPI2_IRQ_PRIORITY 10
# define STM32_SPI_SPI2_IRQ_PRIORITY 10
# define STM32_SPI_SPI3_IRQ_PRIORITY 10
# define STM32_SPI_SPI3_IRQ_PRIORITY 10
# define STM32_SPI_SPI4_IRQ_PRIORITY 10
# define STM32_SPI_SPI4_IRQ_PRIORITY 10
# define STM32_SPI_SPI5_IRQ_PRIORITY 10
# define STM32_SPI_SPI6_IRQ_PRIORITY 10
# define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure")
# define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure")
/*
/*
@ -326,12 +346,6 @@
# define STM32_UART_UART5_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7)
# define STM32_UART_UART5_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7)
# define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2)
# define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2)
# define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7)
# define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7)
# define STM32_UART_USART1_IRQ_PRIORITY 12
# define STM32_UART_USART2_IRQ_PRIORITY 12
# define STM32_UART_USART3_IRQ_PRIORITY 12
# define STM32_UART_UART4_IRQ_PRIORITY 12
# define STM32_UART_UART5_IRQ_PRIORITY 12
# define STM32_UART_USART6_IRQ_PRIORITY 12
# define STM32_UART_USART1_DMA_PRIORITY 0
# define STM32_UART_USART1_DMA_PRIORITY 0
# define STM32_UART_USART2_DMA_PRIORITY 0
# define STM32_UART_USART2_DMA_PRIORITY 0
# define STM32_UART_USART3_DMA_PRIORITY 0
# define STM32_UART_USART3_DMA_PRIORITY 0
@ -349,9 +363,7 @@
# define STM32_USB_OTG2_IRQ_PRIORITY 14
# define STM32_USB_OTG2_IRQ_PRIORITY 14
# define STM32_USB_OTG1_RX_FIFO_SIZE 512
# define STM32_USB_OTG1_RX_FIFO_SIZE 512
# define STM32_USB_OTG2_RX_FIFO_SIZE 1024
# define STM32_USB_OTG2_RX_FIFO_SIZE 1024
# define STM32_USB_OTG_THREAD_PRIO LOWPRIO
# define STM32_USB_HOST_WAKEUP_DURATION 2
# define STM32_USB_OTG_THREAD_STACK_SIZE 128
# define STM32_USB_OTGFIFO_FILL_BASEPRI 0
/*
/*
* WDG driver system settings .
* WDG driver system settings .