| # Copyright (c) 2024 STMicroelectronics |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| description: | |
| STM32U0 Main PLL node binding: |
| |
| Takes one of clk_hse, clk_hsi or clk_msi as input clock, with |
| an input frequency from 2.66 to 16 MHz. PLLM factor is used to set the input |
| clock in this acceptable range. |
| |
| PLL can have up to 3 output clocks and for each output clock, the |
| frequency can be computed with the following formulae: |
| |
| f(PLL_P) = f(VCO clock) / PLLP --> to ADC |
| f(PLL_Q) = f(VCO clock) / PLLQ --> to RNG |
| f(PLL_R) = f(VCO clock) / PLLR --> PLLCLK (System Clock) |
| |
| with f(VCO clock) = f(PLL clock input) × (PLLN / PLLM) |
| |
| The PLL output frequency must not exceed 122 MHz. |
| |
| compatible: "st,stm32u0-pll-clock" |
| |
| include: [clock-controller.yaml, base.yaml] |
| |
| properties: |
| "#clock-cells": |
| const: 0 |
| |
| clocks: |
| required: true |
| |
| div-m: |
| type: int |
| required: true |
| description: | |
| Division factor M of the PLL |
| input clock divider |
| Valid range: 1 - 8 |
| |
| mul-n: |
| type: int |
| required: true |
| description: | |
| PLL frequency multiplication factor N |
| Valid range: 4 - 127 |
| |
| div-p: |
| type: int |
| description: | |
| PLL VCO division factor P |
| Valid range: 2 - 32 |
| |
| div-q: |
| type: int |
| description: | |
| PLL VCO division factor Q |
| Valid range: 2 - 8 |
| |
| div-r: |
| type: int |
| required: true |
| description: | |
| PLL VCO division factor R |
| Valid range: 2 - 8 |