zephyr/dts/bindings/clock/st,stm32g0-pll-clock.yaml

67 lines
1.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Copyright (c) 2021, Linaro ltd
# SPDX-License-Identifier: Apache-2.0
description: |
PLL node binding for STM32G0 devices
It can take one of clk_hse or clk_hsi 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 I2S
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 64 MHz.
compatible: "st,stm32g0-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 for PLL input clock
Valid range: 1 - 8
mul-n:
type: int
required: true
description: |
Main PLL multiplication factor for VCO
Valid range: 8 - 86
div-p:
type: int
required: false
description: |
PLL division factor for PLL P output
Valid range: 2 - 32
div-q:
type: int
required: false
description: |
PLL division factor for PLL Q output
Valid range: 2 - 8
div-r:
type: int
required: true
description: |
PLL division factor for PLLCLK (system clock)
Valid range: 2 - 8