| 
| #define  | STM32_SRC_PLL1_P   0x001 | 
|   | 
| #define  | STM32_SRC_PLL1_Q   0x002 | 
|   | 
| #define  | STM32_SRC_PLL1_R   0x003 | 
|   | 
| #define  | STM32_SRC_PLL2_P   0x004 | 
|   | 
| #define  | STM32_SRC_PLL2_Q   0x005 | 
|   | 
| #define  | STM32_SRC_PLL2_R   0x006 | 
|   | 
| #define  | STM32_SRC_PLL3_P   0x007 | 
|   | 
| #define  | STM32_SRC_PLL3_Q   0x008 | 
|   | 
| #define  | STM32_SRC_PLL3_R   0x009 | 
|   | 
| #define  | STM32_SRC_HSE   0x00A | 
|   | 
| #define  | STM32_SRC_LSE   0x00B | 
|   | 
| #define  | STM32_SRC_LSI   0x00C | 
|   | 
| #define  | STM32_SRC_HSI48   0x00D | 
|   | 
| #define  | STM32_SRC_HSI_KER   0x00E /* HSI + HSIKERON */ | 
|   | 
| #define  | STM32_SRC_CSI_KER   0x00F /* CSI + CSIKERON */ | 
|   | 
| #define  | STM32_SRC_SYSCLK   0x010 | 
|   | 
| #define  | STM32_SRC_CKPER   0x013 | 
|   | 
| #define  | STM32_CLOCK_BUS_AHB3   0x0D4 | 
|   | 
| #define  | STM32_CLOCK_BUS_AHB1   0x0D8 | 
|   | 
| #define  | STM32_CLOCK_BUS_AHB2   0x0DC | 
|   | 
| #define  | STM32_CLOCK_BUS_AHB4   0x0E0 | 
|   | 
| #define  | STM32_CLOCK_BUS_APB3   0x0E4 | 
|   | 
| #define  | STM32_CLOCK_BUS_APB1   0x0E8 | 
|   | 
| #define  | STM32_CLOCK_BUS_APB1_2   0x0EC | 
|   | 
| #define  | STM32_CLOCK_BUS_APB2   0x0F0 | 
|   | 
| #define  | STM32_CLOCK_BUS_APB4   0x0F4 | 
|   | 
| #define  | STM32_SRC_PCLK1   STM32_CLOCK_BUS_APB1 | 
|   | 
| #define  | STM32_SRC_PCLK2   STM32_CLOCK_BUS_APB2 | 
|   | 
| #define  | STM32_SRC_HCLK3   STM32_CLOCK_BUS_AHB3 | 
|   | 
| #define  | STM32_SRC_PCLK3   STM32_CLOCK_BUS_APB3 | 
|   | 
| #define  | STM32_SRC_PCLK4   STM32_CLOCK_BUS_APB4 | 
|   | 
| #define  | STM32_PERIPH_BUS_MIN   STM32_CLOCK_BUS_AHB3 | 
|   | 
| #define  | STM32_PERIPH_BUS_MAX   STM32_CLOCK_BUS_APB4 | 
|   | 
| #define  | STM32_CLOCK_REG_MASK   0xFFU | 
|   | 
| #define  | STM32_CLOCK_REG_SHIFT   0U | 
|   | 
| #define  | STM32_CLOCK_SHIFT_MASK   0x1FU | 
|   | 
| #define  | STM32_CLOCK_SHIFT_SHIFT   8U | 
|   | 
| #define  | STM32_CLOCK_MASK_MASK   0x7U | 
|   | 
| #define  | STM32_CLOCK_MASK_SHIFT   13U | 
|   | 
| #define  | STM32_CLOCK_VAL_MASK   0x7U | 
|   | 
| #define  | STM32_CLOCK_VAL_SHIFT   16U | 
|   | 
| #define  | STM32_CLOCK(val,  mask,  shift,  reg) | 
|   | STM32H7 clock configuration bit field.  More...
  | 
|   | 
| #define  | D1CCIPR_REG   0x4C | 
|   | RCC_DxCCIP register offset (RM0399.pdf)  More...
  | 
|   | 
| #define  | D2CCIP1R_REG   0x50 | 
|   | 
| #define  | D2CCIP2R_REG   0x54 | 
|   | 
| #define  | D3CCIPR_REG   0x58 | 
|   | 
| #define  | BDCR_REG   0x70 | 
|   | RCC_BDCR register offset.  More...
  | 
|   | 
| #define  | FMC_SEL(val)   STM32_CLOCK(val, 3, 0, D1CCIPR_REG) | 
|   | Device domain clocks selection helpers (RM0399.pdf)  More...
  | 
|   | 
| #define  | QSPI_SEL(val)   STM32_CLOCK(val, 3, 4, D1CCIPR_REG) | 
|   | 
| #define  | DSI_SEL(val)   STM32_CLOCK(val, 1, 8, D1CCIPR_REG) | 
|   | 
| #define  | SDMMC_SEL(val)   STM32_CLOCK(val, 1, 16, D1CCIPR_REG) | 
|   | 
| #define  | CKPER_SEL(val)   STM32_CLOCK(val, 3, 28, D1CCIPR_REG) | 
|   | 
| #define  | OSPI_SEL(val)   STM32_CLOCK(val, 3, 4, D1CCIPR_REG) | 
|   | 
| #define  | SAI1_SEL(val)   STM32_CLOCK(val, 7, 0, D2CCIP1R_REG) | 
|   | 
| #define  | SAI23_SEL(val)   STM32_CLOCK(val, 7, 6, D2CCIP1R_REG) | 
|   | 
| #define  | SPI123_SEL(val)   STM32_CLOCK(val, 7, 12, D2CCIP1R_REG) | 
|   | 
| #define  | SPI45_SEL(val)   STM32_CLOCK(val, 7, 16, D2CCIP1R_REG) | 
|   | 
| #define  | SPDIF_SEL(val)   STM32_CLOCK(val, 3, 20, D2CCIP1R_REG) | 
|   | 
| #define  | DFSDM1_SEL(val)   STM32_CLOCK(val, 1, 24, D2CCIP1R_REG) | 
|   | 
| #define  | FDCAN_SEL(val)   STM32_CLOCK(val, 3, 28, D2CCIP1R_REG) | 
|   | 
| #define  | SWP_SEL(val)   STM32_CLOCK(val, 1, 31, D2CCIP1R_REG) | 
|   | 
| #define  | USART2345678_SEL(val)   STM32_CLOCK(val, 7, 0, D2CCIP2R_REG) | 
|   | 
| #define  | USART16_SEL(val)   STM32_CLOCK(val, 7, 3, D2CCIP2R_REG) | 
|   | 
| #define  | RNG_SEL(val)   STM32_CLOCK(val, 3, 8, D2CCIP2R_REG) | 
|   | 
| #define  | I2C123_SEL(val)   STM32_CLOCK(val, 3, 12, D2CCIP2R_REG) | 
|   | 
| #define  | USB_SEL(val)   STM32_CLOCK(val, 3, 20, D2CCIP2R_REG) | 
|   | 
| #define  | CEC_SEL(val)   STM32_CLOCK(val, 3, 22, D2CCIP2R_REG) | 
|   | 
| #define  | LPTIM1_SEL(val)   STM32_CLOCK(val, 7, 28, D2CCIP2R_REG) | 
|   | 
| #define  | LPUART1_SEL(val)   STM32_CLOCK(val, 7, 0, D3CCIPR_REG) | 
|   | 
| #define  | I2C4_SEL(val)   STM32_CLOCK(val, 3, 8, D3CCIPR_REG) | 
|   | 
| #define  | LPTIM2_SEL(val)   STM32_CLOCK(val, 7, 10, D3CCIPR_REG) | 
|   | 
| #define  | LPTIM345_SEL(val)   STM32_CLOCK(val, 7, 13, D3CCIPR_REG) | 
|   | 
| #define  | ADC_SEL(val)   STM32_CLOCK(val, 3, 16, D3CCIPR_REG) | 
|   | 
| #define  | SAI4A_SEL(val)   STM32_CLOCK(val, 7, 21, D3CCIPR_REG) | 
|   | 
| #define  | SAI4B_SEL(val)   STM32_CLOCK(val, 7, 24, D3CCIPR_REG) | 
|   | 
| #define  | SPI6_SEL(val)   STM32_CLOCK(val, 7, 28, D3CCIPR_REG) | 
|   | 
| #define  | RTC_SEL(val)   STM32_CLOCK(val, 3, 8, BDCR_REG) | 
|   | 
| #define  | NO_SEL   0xFF | 
|   |