112 lines
4.0 KiB
C
112 lines
4.0 KiB
C
/*
|
|
ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
#ifndef _MCUCONF_H_
|
|
#define _MCUCONF_H_
|
|
|
|
/*
|
|
* STM32F4xx drivers configuration.
|
|
* The following settings override the default settings present in
|
|
* the various device driver implementation headers.
|
|
* Note that the settings for each driver only have effect if the whole
|
|
* driver is enabled in halconf.h.
|
|
*
|
|
* IRQ priorities:
|
|
* 15...0 Lowest...Highest.
|
|
*
|
|
* DMA priorities:
|
|
* 0...3 Lowest...Highest.
|
|
*/
|
|
|
|
#define STM32F4xx_MCUCONF
|
|
#define STM32F405_MCUCONF
|
|
#define STM32F415_MCUCONF
|
|
#define STM32F407_MCUCONF
|
|
#define STM32F417_MCUCONF
|
|
|
|
// Allows LSE init to timeout and configure fallback RTC clock source in case
|
|
#define RUSEFI_STM32_LSE_WAIT_MAX 1000000
|
|
#define RUSEFI_STM32_LSE_WAIT_MAX_RTCSEL STM32_RTCSEL_LSI
|
|
|
|
/*
|
|
* HAL driver system settings.
|
|
*/
|
|
#define STM32_NO_INIT FALSE
|
|
#define STM32_HSI_ENABLED TRUE
|
|
#define STM32_LSI_ENABLED TRUE
|
|
/* Some boards may have no HSE */
|
|
#ifndef STM32_HSE_ENABLED
|
|
#define STM32_HSE_ENABLED TRUE
|
|
#endif
|
|
// see RUSEFI_STM32_LSE_WAIT_MAX
|
|
#define STM32_LSE_ENABLED TRUE
|
|
#define STM32_CLOCK48_REQUIRED TRUE
|
|
#define STM32_SW STM32_SW_PLL
|
|
#define STM32_PLLSRC STM32_PLLSRC_HSI
|
|
#define STM32_PLLM_VALUE 16
|
|
#define STM32_PLLN_VALUE 336
|
|
#define STM32_PLLP_VALUE 2
|
|
#define STM32_PLLQ_VALUE 7
|
|
#define STM32_HPRE STM32_HPRE_DIV1
|
|
#define STM32_PPRE1 STM32_PPRE1_DIV4
|
|
#define STM32_PPRE2 STM32_PPRE2_DIV2
|
|
// see RUSEFI_STM32_LSE_WAIT_MAX_RTCSEL
|
|
#define STM32_RTCSEL STM32_RTCSEL_LSE
|
|
#ifndef STM32_RTCPRE_VALUE
|
|
#define STM32_RTCPRE_VALUE 8
|
|
#endif
|
|
#define STM32_MCO1SEL STM32_MCO1SEL_HSI
|
|
#define STM32_MCO1PRE STM32_MCO1PRE_DIV1
|
|
#define STM32_MCO2SEL STM32_MCO2SEL_SYSCLK
|
|
#define STM32_MCO2PRE STM32_MCO2PRE_DIV5
|
|
#define STM32_I2SSRC STM32_I2SSRC_CKIN
|
|
#define STM32_PLLI2SN_VALUE 192
|
|
#define STM32_PLLI2SR_VALUE 5
|
|
#define STM32_PVD_ENABLE FALSE
|
|
#define STM32_PLS STM32_PLS_LEV0
|
|
#define STM32_BKPRAM_ENABLE TRUE
|
|
|
|
/*
|
|
* GPT driver system settings.
|
|
*/
|
|
#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
|
|
|
|
/*
|
|
* SDC driver system settings.
|
|
*/
|
|
#define STM32_SDC_SDIO_DMA_PRIORITY 3
|
|
#define STM32_SDC_SDIO_IRQ_PRIORITY 9
|
|
#define STM32_SDC_WRITE_TIMEOUT_MS 250
|
|
#define STM32_SDC_READ_TIMEOUT_MS 25
|
|
#define STM32_SDC_CLOCK_ACTIVATION_DELAY 10
|
|
#define STM32_SDC_SDIO_UNALIGNED_SUPPORT TRUE
|
|
#define STM32_SDC_SDIO_DMA_STREAM STM32_DMA_STREAM_ID(2, 3)
|
|
|
|
#include "mcuconf_common_f4_f7.h"
|
|
|
|
#endif /* _MCUCONF_H_ */
|