PLL minidrivers fixes.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@14268 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
c6ad2f65c1
commit
02d39d2a37
|
@ -168,15 +168,6 @@
|
|||
/* P output, if present. */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
#if STM32_PLL_HAS_P || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief PLL P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLPDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLL_P_CLKOUT (STM32_PLLVCO / STM32_PLLP_VALUE)
|
||||
#else
|
||||
#define STM32_PLL_P_CLKOUT (STM32_PLLVCO / STM32_PLLPDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief STM32_PLLP field.
|
||||
*/
|
||||
|
@ -202,6 +193,15 @@
|
|||
#error "invalid STM32_PLLPDIV_VALUE value specified"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief PLL P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLPDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLL_P_CLKOUT (STM32_PLLVCO / STM32_PLLP_VALUE)
|
||||
#else
|
||||
#define STM32_PLL_P_CLKOUT (STM32_PLLVCO / STM32_PLLPDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* PLL-P output frequency range check.
|
||||
*/
|
||||
|
|
|
@ -169,15 +169,6 @@
|
|||
/* P output, if present. */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
#if STM32_PLLSAI1_HAS_P || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief PLLSAI1 P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLSAI1PDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI1_P_CLKOUT (STM32_PLLSAI1VCO / STM32_PLLSAI1P_VALUE)
|
||||
#else
|
||||
#define STM32_PLLSAI1_P_CLKOUT (STM32_PLLSAI1VCO / STM32_PLLSAI1PDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief STM32_PLLSAI1P field.
|
||||
*/
|
||||
|
@ -191,6 +182,25 @@
|
|||
#error "invalid STM32_PLLSAI1P_VALUE value specified"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief STM32_PLLSAI1PDIV field.
|
||||
*/
|
||||
#if ((STM32_PLLSAI1PDIV_VALUE != 1) && (STM32_PLLSAI1PDIV_VALUE <= 31)) || \
|
||||
defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI1PDIV (STM32_PLLSAI1PDIV_VALUE << 27)
|
||||
#else
|
||||
#error "invalid STM32_PLLSAI1PDIV_VALUE value specified"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief PLLSAI1 P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLSAI1PDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI1_P_CLKOUT (STM32_PLLSAI1VCO / STM32_PLLSAI1P_VALUE)
|
||||
#else
|
||||
#define STM32_PLLSAI1_P_CLKOUT (STM32_PLLSAI1VCO / STM32_PLLSAI1PDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* PLLSAI1-P output frequency range check.
|
||||
*/
|
||||
|
@ -306,7 +316,7 @@ static inline void pllsai1_init(void) {
|
|||
STM32_PLLSAI1REN | STM32_PLLSAI1Q |
|
||||
STM32_PLLSAI1QEN | STM32_PLLSAI1P |
|
||||
STM32_PLLSAI1PEN | STM32_PLLSAI1N |
|
||||
STM32_PLLSAI1M | STM32_PLLSAI1SRC;
|
||||
STM32_PLLSAI1M;
|
||||
RCC->CR |= RCC_CR_PLLSAI1ON;
|
||||
|
||||
/* Waiting for PLL lock.*/
|
||||
|
|
|
@ -169,15 +169,6 @@
|
|||
/* P output, if present. */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
#if STM32_PLLSAI2_HAS_P || defined(__DOXYGEN__)
|
||||
/**
|
||||
* @brief PLLSAI2 P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLSAI2PDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI2_P_CLKOUT (STM32_PLLSAI2VCO / STM32_PLLSAI2P_VALUE)
|
||||
#else
|
||||
#define STM32_PLLSAI2_P_CLKOUT (STM32_PLLSAI2VCO / STM32_PLLSAI2PDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief STM32_PLLSAI2P field.
|
||||
*/
|
||||
|
@ -191,6 +182,25 @@
|
|||
#error "invalid STM32_PLLSAI2P_VALUE value specified"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief STM32_PLLSAI2PDIV field.
|
||||
*/
|
||||
#if ((STM32_PLLSAI2PDIV_VALUE != 1) && (STM32_PLLSAI2PDIV_VALUE <= 31)) || \
|
||||
defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI2PDIV (STM32_PLLSAI2PDIV_VALUE << 27)
|
||||
#else
|
||||
#error "invalid STM32_PLLSAI2PDIV_VALUE value specified"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief PLLSAI2 P output clock frequency.
|
||||
*/
|
||||
#if (STM32_PLLSAI2PDIV_VALUE == 0) || defined(__DOXYGEN__)
|
||||
#define STM32_PLLSAI2_P_CLKOUT (STM32_PLLSAI2VCO / STM32_PLLSAI2P_VALUE)
|
||||
#else
|
||||
#define STM32_PLLSAI2_P_CLKOUT (STM32_PLLSAI2VCO / STM32_PLLSAI2PDIV_VALUE)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* PLLSAI2-P output frequency range check.
|
||||
*/
|
||||
|
@ -306,7 +316,7 @@ static inline void pllsai2_init(void) {
|
|||
STM32_PLLSAI2REN | STM32_PLLSAI2Q |
|
||||
STM32_PLLSAI2QEN | STM32_PLLSAI2P |
|
||||
STM32_PLLSAI2PEN | STM32_PLLSAI2N |
|
||||
STM32_PLLSAI2M | STM32_PLLSAI2SRC;
|
||||
STM32_PLLSAI2M;
|
||||
RCC->CR |= RCC_CR_PLLSAI2ON;
|
||||
|
||||
/* Waiting for PLL lock.*/
|
||||
|
|
Loading…
Reference in New Issue